Updated and coverted
Updated and coverted my fork from evilsocket/pwnagotchi master branch to aluminum-ice/pwnagotchi master branch removed hannadiamond repository changed pwnagotchi community plugin repository to my pwnagotchi community plugin repository removed mastodon plugin removed screenrc configuration cloned pwnagotchi community plugin repository only once removed configure pwnagotchi for the custom plugin directory from builder/pwnagotchi.yml reconfigured auto-update to point to the scifijunkie repo edited main.custom_plugins to point to /usr/local/share/pwnagotchi/custom-plugins in pwnagotchi/defaults.toml removed mastodon configuration from defaults.toml removed ntfy configuration from defaults.toml removed handshakes-m.py from default plugin removed mastodon.py from default plugin removed ntfy.py from default plugin addressed [ERROR] [update] 'tag_name' addressed rate limit exceeded addressed TypeError: Descriptors cannot not be created directly. Reran pip-compile
This commit is contained in:
82
setup.py
82
setup.py
@@ -1,29 +1,31 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
from setuptools import setup, find_packages
|
||||
from distutils.util import strtobool
|
||||
import os
|
||||
from setuptools.command.install import install
|
||||
import glob
|
||||
import shutil
|
||||
import logging
|
||||
import os
|
||||
import re
|
||||
import shutil
|
||||
import warnings
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
def install_file(source_filename, dest_filename):
|
||||
# do not overwrite network configuration if it exists already
|
||||
# https://github.com/evilsocket/pwnagotchi/issues/483
|
||||
if dest_filename.startswith('/etc/network/interfaces.d/') and os.path.exists(dest_filename):
|
||||
print("%s exists, skipping ..." % dest_filename)
|
||||
log.info(f"{dest_filename} exists, skipping ...")
|
||||
return
|
||||
|
||||
print("installing %s to %s ..." % (source_filename, dest_filename))
|
||||
try:
|
||||
dest_folder = os.path.dirname(dest_filename)
|
||||
if not os.path.isdir(dest_folder):
|
||||
os.makedirs(dest_folder)
|
||||
log.info(f"installing {source_filename} to {dest_filename} ...")
|
||||
dest_folder = os.path.dirname(dest_filename)
|
||||
if not os.path.isdir(dest_folder):
|
||||
os.makedirs(dest_folder)
|
||||
|
||||
shutil.copyfile(source_filename, dest_filename)
|
||||
except Exception as e:
|
||||
print("error installing %s: %s" % (source_filename, e))
|
||||
shutil.copyfile(source_filename, dest_filename)
|
||||
if dest_filename.startswith("/usr/bin/"):
|
||||
os.chmod(dest_filename, 0o755)
|
||||
|
||||
|
||||
def install_system_files():
|
||||
@@ -35,31 +37,54 @@ def install_system_files():
|
||||
dest_filename = source_filename.replace(data_path, '')
|
||||
install_file(source_filename, dest_filename)
|
||||
|
||||
|
||||
def restart_services():
|
||||
# reload systemd units
|
||||
os.system("systemctl daemon-reload")
|
||||
|
||||
|
||||
def installer():
|
||||
install_system_files()
|
||||
# for people updating https://github.com/evilsocket/pwnagotchi/pull/551/files
|
||||
os.system("systemctl enable fstrim.timer")
|
||||
|
||||
def version(version_file):
|
||||
with open(version_file, 'rt') as vf:
|
||||
version_file_content = vf.read()
|
||||
|
||||
version_match = re.search(r"__version__\s*=\s*[\"\']([^\"\']+)", version_file_content)
|
||||
if version_match:
|
||||
return version_match.groups()[0]
|
||||
class CustomInstall(install):
|
||||
def run(self):
|
||||
super().run()
|
||||
if os.geteuid() != 0:
|
||||
warnings.warn(
|
||||
"Not running as root, can't install pwnagotchi system files!"
|
||||
)
|
||||
return
|
||||
install_system_files()
|
||||
restart_services()
|
||||
|
||||
|
||||
def version(version_file):
|
||||
#with open(version_file, 'rt') as vf:
|
||||
#version_file_content = vf.read()
|
||||
|
||||
#version_match = re.search(r"__version__\s*=\s*[\"\']([^\"\']+)", version_file_content)
|
||||
#if version_match:
|
||||
#return version_match.groups()[0]
|
||||
|
||||
if "PWN_VERSION" in os.environ:
|
||||
return os.environ["PWN_VERSION"]
|
||||
else:
|
||||
with open(version_file, 'rt') as vf:
|
||||
version_file_content = vf.read()
|
||||
|
||||
version_match = re.search(r"__version__\s*=\s*[\"\']([^\"\']+)", version_file_content)
|
||||
|
||||
if version_match:
|
||||
return version_match.groups()[0]
|
||||
|
||||
return None
|
||||
|
||||
|
||||
if strtobool(os.environ.get("PWNAGOTCHI_ENABLE_INSTALLER", "1")):
|
||||
installer()
|
||||
|
||||
with open('requirements.txt') as fp:
|
||||
required = [line.strip() for line in fp if line.strip() != ""]
|
||||
required = [
|
||||
line.strip()
|
||||
for line in fp
|
||||
if line.strip() and not line.startswith("--")
|
||||
]
|
||||
|
||||
VERSION_FILE = 'pwnagotchi/_version.py'
|
||||
pwnagotchi_version = version(VERSION_FILE)
|
||||
@@ -72,8 +97,11 @@ setup(name='pwnagotchi',
|
||||
url='https://pwnagotchi.ai/',
|
||||
license='GPL',
|
||||
install_requires=required,
|
||||
cmdclass={
|
||||
"install": CustomInstall,
|
||||
},
|
||||
scripts=['bin/pwnagotchi'],
|
||||
package_data={'pwnagotchi': ['defaults.yml', 'pwnagotchi/defaults.yml', 'locale/*/LC_MESSAGES/*.mo']},
|
||||
package_data={'pwnagotchi': ['defaults.toml', 'pwnagotchi/defaults.toml', 'locale/*/LC_MESSAGES/*.mo']},
|
||||
include_package_data=True,
|
||||
packages=find_packages(),
|
||||
classifiers=[
|
||||
|
||||
Reference in New Issue
Block a user