From 5dd17291f76b34ebdd0c927bd111d98cc927a4fe Mon Sep 17 00:00:00 2001 From: jayofelony Date: Mon, 18 Mar 2024 11:58:22 +0100 Subject: [PATCH] Fix a lot of stuff Signed-off-by: jayofelony --- .github/workflows/publish.yml | 2 - builder/data/32bit/boot/config.txt | 63 ++++++++++++++++++ .../32bit/etc/modules-load.d/modules.conf | 6 ++ builder/data/32bit/raspberrypi32.yml | 34 ---------- builder/data/64bit/boot/firmware/config.txt | 66 +++++++++++++++++++ .../64bit/etc/modules-load.d/modules.conf | 6 ++ builder/data/64bit/raspberrypi64.yml | 36 ---------- builder/data/64bit/usr/bin/pwnlib | 13 ---- pwnagotchi/ui/web/server.py | 2 +- 9 files changed, 142 insertions(+), 86 deletions(-) create mode 100644 builder/data/32bit/boot/config.txt create mode 100644 builder/data/32bit/etc/modules-load.d/modules.conf create mode 100644 builder/data/64bit/boot/firmware/config.txt create mode 100644 builder/data/64bit/etc/modules-load.d/modules.conf diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 41caeb91..e6479c5b 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -23,8 +23,6 @@ jobs: - name: Get latest tag uses: actions-ecosystem/action-get-latest-tag@v1 id: get-latest-tag - with: - token: ${{ secrets.GITHUB_TOKEN }} - name: Set LAST_VERSION as an environment variable run: echo "LAST_VERSION=${{ steps.get-latest-tag.outputs.tag }}" >> $GITHUB_ENV diff --git a/builder/data/32bit/boot/config.txt b/builder/data/32bit/boot/config.txt new file mode 100644 index 00000000..7268a516 --- /dev/null +++ b/builder/data/32bit/boot/config.txt @@ -0,0 +1,63 @@ +# For more options and information see +# http://rptl.io/configtxt +# Some settings may impact device functionality. See link above for details + +# Uncomment some or all of these to enable the optional hardware interfaces +#dtparam=i2c_arm=on +#dtparam=i2s=on +#dtparam=spi=on + +# Enable audio (loads snd_bcm2835) +dtparam=audio=on + +# Additional overlays and parameters are documented +# /boot/overlays/README + +# Automatically load overlays for detected cameras +camera_auto_detect=1 + +# Automatically load overlays for detected DSI displays +display_auto_detect=1 + +# Automatically load initramfs files, if found +auto_initramfs=1 + +# Enable DRM VC4 V3D driver +dtoverlay=vc4-kms-v3d +max_framebuffers=2 + +# Don't have the firmware create an initial video= setting in cmdline.txt. +# Use the kernel's default instead. +disable_fw_kms_setup=1 + +# Run in 64-bit mode +arm_64bit=0 + +# Disable compensation for displays with overscan +disable_overscan=1 + +# Run as fast as firmware / board allows +arm_boost=1 + +[cm4] +# Enable host mode on the 2711 built-in XHCI USB controller. +# This line should be removed if the legacy DWC2 controller is required +# (e.g. for USB device mode) or if USB support is not required. +otg_mode=1 + +[all] +dtoverlay=dwc2 +dtparam=i2c1=on +dtparam=i2c_arm=on +dtparam=spi=on +gpu_mem=1 +dtoverlay=dwc2 + +[pi0] +dtoverlay=spi1-3cs + +[pi3] +dtoverlay=spi1-3cs + +[pi4] +dtoverlay=spi1-3cs diff --git a/builder/data/32bit/etc/modules-load.d/modules.conf b/builder/data/32bit/etc/modules-load.d/modules.conf new file mode 100644 index 00000000..bb4fa86c --- /dev/null +++ b/builder/data/32bit/etc/modules-load.d/modules.conf @@ -0,0 +1,6 @@ +# /etc/modules: kernel modules to load at boot time. +# +# This file contains the names of kernel modules that should be loaded +# at boot time, one per line. Lines beginning with "#" are ignored. +# Parameters can be specified after the module name. +i2c-dev \ No newline at end of file diff --git a/builder/data/32bit/raspberrypi32.yml b/builder/data/32bit/raspberrypi32.yml index 22da4d7a..4bd1e35e 100644 --- a/builder/data/32bit/raspberrypi32.yml +++ b/builder/data/32bit/raspberrypi32.yml @@ -39,26 +39,6 @@ hostname: "{{ lookup('env', 'PWN_HOSTNAME') | default('pwnagotchi', true) }}" version: "{{ lookup('env', 'PWN_VERSION') | default('pwnagotchi-torch', true) }}" custom_plugin_dir: "/usr/local/share/pwnagotchi/custom-plugins" - system: - boot_options: - - "#### pwnagotchi additions" - - "# this pwnagotchi image is 32-bit only no v8+ headers to build nexmon for 64 bit" - - "arm_64bit=0" - - "# dwc2 for RNDIS. comment out, and remove dwc2 and g_ether from cmdline.txt for X306 usb battery hat" - - "dtoverlay=dwc2" - - "dtoverlay=spi0-0cs" - - "dtparam=i2c1=on" - - "dtparam=i2c_arm=on" - - "dtparam=spi=on" - - "gpu_mem=16" - - "#### audio out on pins 18 and 19" - - "#dtoverlay=audremap,pins_18_19" - - "#### touchscreen on waveshare touch e-paper" - - "#dtoverlay=goodix,interrupt=27,reset=22" - - "#### for PWM backlighting on pimoroni displayhatmini" - - "dtoverlay=pwm-2chan,pin=12,func=4,pin2=13,func2=4" - modules: - - "i2c-dev" services: enable: - bettercap.service @@ -475,20 +455,6 @@ path: /boot/ssh state: touch - - name: adjust /boot/config.txt - lineinfile: - dest: /boot/config.txt - insertafter: EOF - line: '{{ item }}' - with_items: "{{system.boot_options}}" - - - name: adjust /etc/modules - lineinfile: - dest: /etc/modules - insertafter: EOF - line: '{{ item }}' - with_items: "{{system.modules}}" - - name: change root partition replace: dest: /boot/cmdline.txt diff --git a/builder/data/64bit/boot/firmware/config.txt b/builder/data/64bit/boot/firmware/config.txt new file mode 100644 index 00000000..e85ee4bb --- /dev/null +++ b/builder/data/64bit/boot/firmware/config.txt @@ -0,0 +1,66 @@ +# For more options and information see +# http://rptl.io/configtxt +# Some settings may impact device functionality. See link above for details + +# Uncomment some or all of these to enable the optional hardware interfaces +#dtparam=i2c_arm=on +#dtparam=i2s=on +#dtparam=spi=on + +# Enable audio (loads snd_bcm2835) +dtparam=audio=on + +# Additional overlays and parameters are documented +# /boot/firmware/overlays/README + +# Automatically load overlays for detected cameras +camera_auto_detect=1 + +# Automatically load overlays for detected DSI displays +display_auto_detect=1 + +# Automatically load initramfs files, if found +auto_initramfs=1 + +# Enable DRM VC4 V3D driver +dtoverlay=vc4-kms-v3d +max_framebuffers=2 + +# Don't have the firmware create an initial video= setting in cmdline.txt. +# Use the kernel's default instead. +disable_fw_kms_setup=1 + +# Run in 64-bit mode +arm_64bit=1 + +# Disable compensation for displays with overscan +disable_overscan=1 + +# Run as fast as firmware / board allows +arm_boost=1 + +[cm4] +# Enable host mode on the 2711 built-in XHCI USB controller. +# This line should be removed if the legacy DWC2 controller is required +# (e.g. for USB device mode) or if USB support is not required. +otg_mode=1 + +[all] +dtparam=i2c1=on +dtparam=i2c_arm=on +dtparam=spi=on +gpu_mem=1 +dtoverlay=dwc2 + +[pi0] +dtoverlay=spi0-0cs + + +[pi3] +dtoverlay=spi0-0cs + +[pi4] +dtoverlay=spi0-0cs + +[pi5] +dtoverlay=spi0-0cs diff --git a/builder/data/64bit/etc/modules-load.d/modules.conf b/builder/data/64bit/etc/modules-load.d/modules.conf new file mode 100644 index 00000000..bb4fa86c --- /dev/null +++ b/builder/data/64bit/etc/modules-load.d/modules.conf @@ -0,0 +1,6 @@ +# /etc/modules: kernel modules to load at boot time. +# +# This file contains the names of kernel modules that should be loaded +# at boot time, one per line. Lines beginning with "#" are ignored. +# Parameters can be specified after the module name. +i2c-dev \ No newline at end of file diff --git a/builder/data/64bit/raspberrypi64.yml b/builder/data/64bit/raspberrypi64.yml index 9621b763..0aab0455 100644 --- a/builder/data/64bit/raspberrypi64.yml +++ b/builder/data/64bit/raspberrypi64.yml @@ -11,23 +11,6 @@ pwnagotchi: hostname: "{{ lookup('env', 'PWN_HOSTNAME') | default('pwnagotchi', true) }}" version: "{{ lookup('env', 'PWN_VERSION') | default('pwnagotchi', true) }}" - system: - boot_options: - - "dtoverlay=dwc2" - - "dtparam=i2c1=on" - - "dtparam=i2c_arm=on" - - "dtparam=spi=on" - - "gpu_mem=16" - - "[pi0]" - - "dtoverlay=spi0-0cs" - - "[pi3]" - - "dtoverlay=spi0-0cs" - - "[pi4]" - - "dtoverlay=spi0-0cs" - - "[pi5]" - - "dtoverlay=spi0-0cs" - modules: - - "i2c-dev" services: enable: - bettercap.service @@ -211,25 +194,6 @@ path: /etc/rc.local state: absent - - name: adjust /boot/config.txt - blockinfile: - dest: /boot/config.txt - insertafter: EOF - block: | - dtoverlay=dwc2 - dtparam=i2c1=on - dtparam=i2c_arm=on" - dtparam=spi=on - gpu_mem=16 - [pi0] - dtoverlay=spi0-0cs - [pi3] - dtoverlay=spi0-0cs - [pi4] - dtoverlay=spi0-0cs - [pi5] - dtoverlay=spi0-0cs - - name: change root partition replace: dest: /boot/firmware/cmdline.txt diff --git a/builder/data/64bit/usr/bin/pwnlib b/builder/data/64bit/usr/bin/pwnlib index fa25d682..6cc93f24 100755 --- a/builder/data/64bit/usr/bin/pwnlib +++ b/builder/data/64bit/usr/bin/pwnlib @@ -1,18 +1,5 @@ #!/usr/bin/env bash -# well ... it blinks the led -blink_led() { - # shellcheck disable=SC2034 - for i in $(seq 1 "$1"); do - echo 0 >/sys/class/leds/led0/brightness - sleep 0.3 - echo 1 >/sys/class/leds/led0/brightness - sleep 0.3 - done - echo 0 >/sys/class/leds/led0/brightness - sleep 0.3 -} - # reload mod reload_brcm() { if ! modprobe -r brcmfmac; then diff --git a/pwnagotchi/ui/web/server.py b/pwnagotchi/ui/web/server.py index d8b5fe68..a2e96613 100644 --- a/pwnagotchi/ui/web/server.py +++ b/pwnagotchi/ui/web/server.py @@ -47,6 +47,6 @@ class Server: formatServerIpAddress = '[::]' if self._address == '::' else self._address logging.info("web ui available at http://%s:%d/" % (formatServerIpAddress, self._port)) - app.run(host=self._address, port=self._port, debug=False) + app.run(host=self._address, port=self._port) else: logging.info("could not get ip of usb0, video server not starting")