Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

create a proper setup.py and support system-wide installation #39

Open
blshkv opened this issue Dec 28, 2019 · 7 comments
Open

create a proper setup.py and support system-wide installation #39

blshkv opened this issue Dec 28, 2019 · 7 comments
Labels
help wanted Extra attention is needed

Comments

@blshkv
Copy link

blshkv commented Dec 28, 2019

pentoo/pentoo-overlay#596

I'm not sure if I need to explain.

It should be possible to install the tool using the standard command:
python setup.py install
or
python setup.py install --user

Once started, it should create a local folder for each user and do post-configuration (certs, database) in a local folder, something like ~./empire/*

This is important for distro packaging (I'm pentoo developer). It simplifies maintenance process, which includes installation, supports multi-python env (python2, 3.5-3.8) etc.

@blshkv
Copy link
Author

blshkv commented Dec 28, 2019

@Cx01N Cx01N added the help wanted Extra attention is needed label Dec 28, 2019
@blshkv
Copy link
Author

blshkv commented Jan 1, 2020

https://www.kali.org/news/kali-default-non-root-user/ this news came up just in time. Hopefully, you can put more effort now

@Cx01N
Copy link

Cx01N commented Jan 1, 2020

@blshkv We have been working to update the install file and a few other bug fixes. But this is definitely on our list to accomplish soon. Thank you.

@vinnybod
Copy link

@blshkv I am new to the Python ecosystem, so forgive my ignorance, but I am trying to figure out how this would work for an application like Empire which requires quite a few things installed outside of Python to work properly such as Powershell. Do you have any examples of application with a similar problem?

@blshkv
Copy link
Author

blshkv commented Mar 23, 2020

setup.py is used to install python packages only (including python bindings). Non-python packages should be installed separately (using "pkg-manager install powershell"), you can provide a shell script for users' convenience, but that's hard and useless usually as you would have to detect user's OS and call a specific package manager for each distro. The goal should be to create a distro package, so end-user would simply run "pkg-manager install empire".
Also see andresriancho/w3af#17500

@mpgn
Copy link

mpgn commented Nov 20, 2021

@blshkv this project is using poetry, no need for a setup.py file ;)

https://github.com/BC-SECURITY/Empire/blob/master/pyproject.toml

@blshkv
Copy link
Author

blshkv commented Nov 22, 2021

Thanks, I noticed. However, it does not install anything. I'm not an expert here, but it may be that the [tool.poetry.scripts] and include= sections are missing. Here is a similar working pyproject if you want to compare:
https://github.com/byt3bl33d3r/DeathStar/blob/master/pyproject.toml

EDIT: also, a system-wide installation (the tool is installed via package manager and run as a regular user) is still not supported

blshkv pushed a commit to pentoo/pentoo-overlay that referenced this issue Nov 22, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

4 participants