From dd50852a68c98d10482c4a60463290c052bec2c8 Mon Sep 17 00:00:00 2001 From: 2Shirt <2xShirt@gmail.com> Date: Fri, 23 Jul 2021 22:58:28 -0600 Subject: [PATCH] Enable numlock in Linux --- scripts/numlock | 10 ++++++++++ setup/linux/packages/gui | 1 + .../system/multi-user.target.wants/numlock.service | 1 + .../airootfs/etc/systemd/system/numlock.service | 10 ++++++++++ .../profile_gui/airootfs/etc/skel/.start_desktop_apps | 5 +++++ 5 files changed, 27 insertions(+) create mode 100755 scripts/numlock create mode 120000 setup/linux/profile_base/airootfs/etc/systemd/system/multi-user.target.wants/numlock.service create mode 100644 setup/linux/profile_base/airootfs/etc/systemd/system/numlock.service diff --git a/scripts/numlock b/scripts/numlock new file mode 100755 index 00000000..a30dfdc6 --- /dev/null +++ b/scripts/numlock @@ -0,0 +1,10 @@ +#!/bin/env bash +# +## Enable numlock if no battery is detected +## Credit: https://wiki.archlinux.org/title/Activating_numlock_on_bootup#With_systemd_service + +if ! compgen -G "/sys/class/power_supply/BAT*" >/dev/null; then + for tty in /dev/tty{1..6}; do + /usr/bin/setleds -D +num < "$tty" + done +fi diff --git a/setup/linux/packages/gui b/setup/linux/packages/gui index b7a625ff..4ef1a114 100644 --- a/setup/linux/packages/gui +++ b/setup/linux/packages/gui @@ -21,6 +21,7 @@ mkvtoolnix-cli mpv noto-fonts noto-fonts-cjk +numlockx openbox-patched otf-font-awesome-4 papirus-icon-theme diff --git a/setup/linux/profile_base/airootfs/etc/systemd/system/multi-user.target.wants/numlock.service b/setup/linux/profile_base/airootfs/etc/systemd/system/multi-user.target.wants/numlock.service new file mode 120000 index 00000000..23379751 --- /dev/null +++ b/setup/linux/profile_base/airootfs/etc/systemd/system/multi-user.target.wants/numlock.service @@ -0,0 +1 @@ +/etc/systemd/system/numlock.service \ No newline at end of file diff --git a/setup/linux/profile_base/airootfs/etc/systemd/system/numlock.service b/setup/linux/profile_base/airootfs/etc/systemd/system/numlock.service new file mode 100644 index 00000000..a076df37 --- /dev/null +++ b/setup/linux/profile_base/airootfs/etc/systemd/system/numlock.service @@ -0,0 +1,10 @@ +[Unit] +Description=numlock + +[Service] +ExecStart=/usr/local/bin/numlock +StandardInput=tty +RemainAfterExit=yes + +[Install] +WantedBy=multi-user.target diff --git a/setup/linux/profile_gui/airootfs/etc/skel/.start_desktop_apps b/setup/linux/profile_gui/airootfs/etc/skel/.start_desktop_apps index 49151e56..d9e08b46 100755 --- a/setup/linux/profile_gui/airootfs/etc/skel/.start_desktop_apps +++ b/setup/linux/profile_gui/airootfs/etc/skel/.start_desktop_apps @@ -2,6 +2,11 @@ # ## Start desktop apps based on WM +# Numlock +if ! compgen -G "/sys/class/power_supply/BAT*" >/dev/null; then + numlockx & +fi + # Start common apps #picom --backend xrender --xrender-sync --xrender-sync-fence & picom --daemon || picom --daemon --no-vsync