savio-code / fern-wifi-cracker

Automatically exported from code.google.com/p/fern-wifi-cracker
1.15k stars 349 forks source link

create setup.py and support system wide installation #152

Open blshkv opened 3 years ago

blshkv commented 3 years ago

This is a common problem that many tools which we want to distribute do not support system wide installation. Some of these tools provide their own "install.sh" or "setup.sh" with a distro specific commands (sudo apt-install) to install dependencies instead of a proper setup.py. With a proper setup.py script, an end user can install it using the following single command: python3 setup.py install --user. It also a distro friendly and makes life for maintainers easier.

The end result, a FHS compliant directory structure should be created. In case if software produce any output, a local user directory should be used, such as ~.//

There are some custom cases (installing non-python packages, data files etc) which have been resolved in other packages. Bellow, are reference points on such bug reports with solutions (patches)

https://github.com/pentoo/pentoo-overlay/issues/596

bash$ fern-wifi-cracker 
Traceback (most recent call last):
  File "/usr/share/fern-wifi-cracker/execute.py", line 101, in <module>
    initialize()
  File "/usr/share/fern-wifi-cracker/execute.py", line 52, in initialize
    create_directory()
  File "/usr/share/fern-wifi-cracker/execute.py", line 88, in create_directory
    os.mkdir('fern-settings')                               # Create permanent settings directory
PermissionError: [Errno 13] Permission denied: 'fern-settings'