From 8b3af806749f0ebb859f9405e82c2ab9585ab206 Mon Sep 17 00:00:00 2001 From: Manuel Fombuena Date: Fri, 3 Nov 2023 11:33:41 +0000 Subject: [PATCH] feat(numlock): add module to turn Num Lock on This module adds setleds and a shell script to turn Num Lock on. Useful when you have to type a password or a PIN to unlock a volume. --- modules.d/90numlock/module-setup.sh | 34 +++++++++++++++++++++++++++++ modules.d/90numlock/numlock.sh | 6 +++++ 2 files changed, 40 insertions(+) create mode 100755 modules.d/90numlock/module-setup.sh create mode 100755 modules.d/90numlock/numlock.sh diff --git a/modules.d/90numlock/module-setup.sh b/modules.d/90numlock/module-setup.sh new file mode 100755 index 0000000000..b093d92878 --- /dev/null +++ b/modules.d/90numlock/module-setup.sh @@ -0,0 +1,34 @@ +#!/usr/bin/bash +# This file is part of dracut. +# SPDX-License-Identifier: GPL-2.0-or-later + +# Prerequisite check(s) for module. +check() { + + # If the binary(s) requirements are not fulfilled the module can't be installed. + require_binaries setleds || return 1 + + # Return 255 to only include the module, if another module requires it. + return 255 + +} + +# Module dependency requirements. +depends() { + + # This module has external dependency on other module(s). + echo systemd-udevd + # Return 0 to include the dependent module(s) in the initramfs. + return 0 + +} + +# Install the required file(s) and directories for the module in the initramfs. +install() { + + inst_multiple -o \ + setleds + + inst_hook initqueue/settled 90 "$moddir/numlock.sh" + +} diff --git a/modules.d/90numlock/numlock.sh b/modules.d/90numlock/numlock.sh new file mode 100755 index 0000000000..6cd0d078df --- /dev/null +++ b/modules.d/90numlock/numlock.sh @@ -0,0 +1,6 @@ +#!/usr/bin/sh + +for tty in /dev/tty{1..6} +do + /usr/bin/setleds -D +num < "$tty"; +done