From aeef099eac71bfe651cf89b051fde381d8155d25 Mon Sep 17 00:00:00 2001 From: Alexis Svinartchouk Date: Tue, 27 Oct 2020 13:21:58 +0100 Subject: [PATCH] Fake sleep until we have a way to wake up from suspend to ram Change-type: patch --- Dockerfile | 13 ++++++++++++- docker-compose.yml | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 27cb1372..28bbbbcb 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,15 @@ FROM balenalib/aarch64-debian-node:12.16-buster-build as builder RUN apt-get update -RUN apt-get install python +RUN apt-get install python libx11-dev libxss-dev libxss1 + +# Build clicklock +WORKDIR /usr/src/clicklock +RUN git clone https://github.com/zpfvo/clicklock.git . +RUN git checkout 5da48f70f90883f8a966f50f75e494e8f18adc95 +RUN autoreconf --force --install +RUN ./configure +RUN make WORKDIR /usr/src/app @@ -23,6 +31,9 @@ RUN npm run webpack RUN PATH=$(pwd)/node_modules/.bin/:$PATH electron-builder --dir --config.asar=false --config.npmRebuild=false --config.nodeGypRebuild=false FROM alexisresinio/aarch64-debian-bejs:latest +# clicklock +COPY --from=builder /usr/src/clicklock/clicklock /usr/bin/clicklock + # Etcher configuration COPY etcher-pro-config.json /usr/src/app/ diff --git a/docker-compose.yml b/docker-compose.yml index 8ae6d1e0..7585d39d 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -62,3 +62,39 @@ services: - 'BALENAELECTRONJS_ZOOM_FACTOR=1.28' - 'BALENAELECTRONJS_MOUNTS_ROOT=/mnt' - 'BALENAELECTRONJS_CONSTRAINT_PATH=/mnt' + - "BALENAELECTRONJS_SCREENSAVER_ON_COMMAND= + if [ ! -d /sys/class/gpio/gpio101 ]; then echo 101 > /sys/class/gpio/export; fi && + if [ -d /sys/class/gpio/gpio101 ]; then echo 0 > /sys/class/gpio/gpio101/value; fi && + if [ ! -d /sys/class/gpio/gpio131 ]; then echo 131 > /sys/class/gpio/export; fi && + if [ -d /sys/class/gpio/gpio131 ]; then echo 1 > /sys/class/gpio/gpio131/value; fi && + if [ -d /sys/class/pwm/pwmchip2/pwm0 ]; then echo 0 > /sys/class/pwm/pwmchip2/pwm0/enable; fi && + echo 0 > /sys/devices/system/cpu/cpu1/online && + echo 0 > /sys/devices/system/cpu/cpu2/online && + echo 0 > /sys/devices/system/cpu/cpu3/online && + dbus-send --system --dest=org.freedesktop.systemd1 --type=method_call --print-reply /org/freedesktop/systemd1 org.freedesktop.systemd1.Manager.StopUnit string:gov-switch.service string:replace && + echo userspace > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor && + echo powersave > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor && + dbus-send --system --dest=org.freedesktop.systemd1 --type=method_call --print-reply /org/freedesktop/systemd1 org.freedesktop.systemd1.Manager.StopUnit string:fan-control.service string:replace && + clicklock& + if [ ! -d /sys/class/pwm/pwmchip1/pwm0 ]; then echo 0 > /sys/class/pwm/pwmchip1/export; fi && + if [ -d /sys/class/pwm/pwmchip1/pwm0 ]; then + echo 45000 > /sys/class/pwm/pwmchip1/pwm0/period && + echo 45000 > /sys/class/pwm/pwmchip1/pwm0/duty_cycle; + fi && + sleep 60; + if [ ! -d /sys/class/pwm/pwmchip1/pwm0 ]; then echo 0 > /sys/class/pwm/pwmchip1/export; fi && + if [ -d /sys/class/pwm/pwmchip1/pwm0 ]; then echo 0 > /sys/class/pwm/pwmchip1/pwm0/duty_cycle && echo 1 > /sys/class/pwm/pwmchip1/pwm0/period; fi + " + - "BALENAELECTRONJS_SCREENSAVER_OFF_COMMAND= + ps -ef | grep sleep | awk '{print $2}' | xargs kill -9 || true && + if [ ! -d /sys/class/gpio/gpio101 ]; then echo 101 > /sys/class/gpio/export; fi && + if [ -d /sys/class/gpio/gpio101 ]; then echo 1 > /sys/class/gpio/gpio101/value; fi && + if [ ! -d /sys/class/gpio/gpio131 ]; then echo 131 > /sys/class/gpio/export; fi && + if [ -d /sys/class/gpio/gpio131 ]; then echo 0 > /sys/class/gpio/gpio131/value; fi && + if [ -d /sys/class/pwm/pwmchip2/pwm0 ]; then echo 1 > /sys/class/pwm/pwmchip2/pwm0/enable; fi && + echo 1 > /sys/devices/system/cpu/cpu1/online && + echo 1 > /sys/devices/system/cpu/cpu2/online && + echo 1 > /sys/devices/system/cpu/cpu3/online && + dbus-send --system --dest=org.freedesktop.systemd1 --type=method_call --print-reply /org/freedesktop/systemd1 org.freedesktop.systemd1.Manager.StartUnit string:gov-switch.service string:replace && + dbus-send --system --dest=org.freedesktop.systemd1 --type=method_call --print-reply /org/freedesktop/systemd1 org.freedesktop.systemd1.Manager.StartUnit string:fan-control.service string:replace + "