Results 11 to 12 of 12
Hi, Sorry for specifying DLLs in place of .so (Lately, I have been working in windows and linux simultaneously ) Anyways, in the comment above ( by atescomp):- "However, your ...
Enjoy an ad free experience by logging in. Not a member yet? Register.
- 09-12-2012 #11
- Join Date
- Sep 2012
Sorry for specifying DLLs in place of .so (Lately, I have been working in windows and linux simultaneously )
Anyways, in the comment above ( by atescomp):-
"However, your package installation can direct the user to provide input during the install process. This is usually a pre-install script of some kind that gets the input and uses it during the installation. The script "can" display a popup GUI to get the input. You will need to create that input dialog. It can also be further directed with a post-install script as well for clean up."
I tried doing this using bash script - dialog feature
Also, with perl script - using perl/Tk
But in both the cases there is a dependency that the user should have either dialog or Tk installed on their systems. And this is not acceptable.
So is there any other way of doing the same using the script concept?
Also, please note below requirement points:-
1. The user already has wireshark installed on his/her system.
2. The installer should start the installation of my application (say xyz) on double click. - I am aware this can be achieved through .deb/.rpm
3. The installer should ask for the directory where the wireshark is installed.( say ~/.wireshark) - This interaction with the user should be in GUI form.
4. Installer should get the directory and go to "plugins/1.8.0" folder within wireshark dir( say ~/.wireshark/plugins/1.8.0 )
5. Place the xyz.so file in 1.8.0 folder.
Last edited by priyankaB; 09-12-2012 at 12:42 PM. Reason: minor changes
- 09-15-2012 #12
- Join Date
- Jan 2009
Wireshark in generally installed as the root user so that all users have access to the program. Rarely, it is installed as a normal user in their $HOME directory ("$HOME/bin" maybe?). During an install, the user usually uses a root privilege (such as "sudo" or an archive installer may ask for it) to do installs, so your method of asking for the plugin directory may not be the best way to do the install.
You should be able to use a published Wireshark plugin directory. The Wireshark documentation describes the plugin directories to be "/usr/share/wireshark/plugins", "/usr/local/share/wireshark/plugins", and "$HOME/.wireshark/plugins" (see http: www linuxforums.org/forum/debian-linux/191732-installer-options-linux-applications-urgent-2.html). The directory "~/.wireshark" you specified is, of course, the current user's wireshark properties directory, "$HOME/.wireshark".
It is a fairly easy matter to determine whether the root user or local user is doing the install with a "whoami" command. Then, you can direct the install to the proper directory without user intervention: if root, then "/usr/share/wireshark/plugins" or "/usr/local/share/wireshark/plugins" directory, if other user, then "$HOME/.wireshark/plugins". If there are no plugins, the ".../plugins" directory won't exist yet and you'll need to create it. You can test for directory existence, so you should only test for the parent "../wireshark" or "$HOME/.wireshark" directories. If the user hasn't run wireshark yet, there will be no "$HOME/.wireshark" directory so you will need to create it if installing there. In fact, you can test to see if Wireshark is installed by checking for the other two directories anyway.
Ha, no GUI required.
Maybe you could warn the user when they are installing as a normal user instead of root, so that they have a chance to stop the install and try again as root giving all users the plugin. I've seen this enough times to consider it a standard practice. This would require some kind of dialog. FYI, "dialog" is so ubiquitous for Linux installs that it's most likely already installed on the system. If not, on a failed execution of the dialog command (i.e., it doesn't exist), you will get a 127 return value and you can fall back to another method like the "read" command (echo "Yes or No?"; read Y; echo $Y).
I hope that simplifies your install problem.