diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 0b17ceb0b..7bb7ee8e8 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -96,6 +96,8 @@ jobs: wget https://github.com/Eeems-Org/sysfs_preload/releases/download/1.0.0/packages.zip -O /tmp/packages.zip unzip /tmp/packages.zip -d /tmp opkg install /tmp/rmall/sysfs_preload_1.0.0-1_rmall.ipk + wget https://github.com/timower/rM2-stuff/releases/download/v0.1.2/rm2display.ipk -O /tmp/rm2display.ipk + opkg install /tmp/rm2display.ipk echo "src/gz local-rmall file:///opt/tmp/src" > /opt/etc/opkg.conf.d/16-local.conf run: | set -ex diff --git a/applications/system-service/system-service.pro b/applications/system-service/system-service.pro index f8f7fc355..c2d817352 100644 --- a/applications/system-service/system-service.pro +++ b/applications/system-service/system-service.pro @@ -49,6 +49,10 @@ keyd.files = ../../assets/opt/etc/keyd/oxide.conf keyd.path = /opt/etc/keyd/ INSTALLS += keyd +launcherctl.files = ../../assets/opt/share/launcherctl/oxide +launcherctl.path = /opt/share/launcherctl/ +INSTALLS += launcherctl + applications.files = ../../assets/opt/usr/share/applications/xochitl.oxide applications.path = /opt/usr/share/applications/ INSTALLS += applications diff --git a/assets/opt/share/launcherctl/oxide b/assets/opt/share/launcherctl/oxide new file mode 100644 index 000000000..97ff4a73e --- /dev/null +++ b/assets/opt/share/launcherctl/oxide @@ -0,0 +1,57 @@ +#!/bin/bash +set -e +case "$1" in + is-active) + systemctl is-active --quiet tarnish.service + ;; + is-enabled) + systemctl is-enabled --quiet tarnish.service + ;; + logs) + if [ $# -eq 2 ] && [[ "$2" == "-f" ]] || [[ "$2" == "--follow" ]]; then + journalctl --follow --all --unit tarnish.service + else + journalctl --no-pager --all --unit tarnish.service + fi + ;; + start) + systemctl start tarnish.service + ;; + stop) + systemctl stop tarnish.service + ;; + enable) + systemctl enable tarnish.service + ;; + disable) + systemctl disable tarnish.service + ;; + apps) + rot apps get applications | jq -r 'keys | .[]' + ;; + running) + rot apps get runningApplications | jq -r 'keys | .[]' + ;; + paused) + rot apps get pausedApplications | jq -r 'keys | .[]' + ;; + launch | resume) + rot apps get applications \ + | jq -cr ".$2" | sed 's|/codes/eeems/oxide1/||' \ + | xargs -I {} rot --object Application:{} apps call launch + ;; + close) + rot apps get applications \ + | jq -cr ".$2" | sed 's|/codes/eeems/oxide1/||' \ + | xargs -I {} rot --object Application:{} apps call stop + ;; + pause) + rot apps get applications \ + | jq -cr ".$2" | sed 's|/codes/eeems/oxide1/||' \ + | xargs -I {} rot --object Application:{} apps call pause + ;; + *) + echo "Oxide does not support this method" + exit 1 + ;; +esac diff --git a/package b/package index f8f270b1f..ea3dea6d8 100644 --- a/package +++ b/package @@ -51,6 +51,8 @@ oxide() { # Task switcher install -D -m 755 -t "$pkgdir"/opt/bin "$srcdir"/release/opt/bin/corrupt install -D -m 644 -t "$pkgdir"/opt/usr/share/applications "$srcdir"/release/opt/usr/share/applications/codes.eeems.corrupt.oxide + # launcherctl registration + install -D -T -m 755 "$srcdir"/release/opt/share/launcherctl/oxide "$pkgdir"/opt/share/launcherctl/oxide } configure() {