From f58cc7aded66374fe38e717ec1778a5f5729c2ff Mon Sep 17 00:00:00 2001 From: Nick Mello Date: Sat, 7 Feb 2026 21:42:53 -0600 Subject: [PATCH] logging: Add logging command Add new command and update startup scripts to use it Signed-off-by: Nicholas Mello --- Config.in | 1 + board/skeleton-device-table.txt | 3 +- ...20driver-setup => S20arcade-logging-setup} | 12 ++++---- .../etc/init.d/S25arcade-driver-setup | 30 +++++++++++++++++++ configs/arcade_defconfig | 1 + package/arcade-logger-cmd/Config.in | 4 +++ .../arcade-logger-cmd/arcade-logger-cmd.mk | 11 +++++++ 7 files changed, 54 insertions(+), 8 deletions(-) rename board/skeleton/etc/init.d/{S20driver-setup => S20arcade-logging-setup} (57%) create mode 100644 board/skeleton/etc/init.d/S25arcade-driver-setup create mode 100644 package/arcade-logger-cmd/Config.in create mode 100644 package/arcade-logger-cmd/arcade-logger-cmd.mk diff --git a/Config.in b/Config.in index 56bcc4d..0158b45 100644 --- a/Config.in +++ b/Config.in @@ -1,5 +1,6 @@ menu "Arcade Machine Customizations" +source "$BR2_EXTERNAL_ARCADE_PATH/package/arcade-logger-cmd/Config.in" source "$BR2_EXTERNAL_ARCADE_PATH/package/gpio-keyboard-driver/Config.in" endmenu diff --git a/board/skeleton-device-table.txt b/board/skeleton-device-table.txt index 5ffc455..02c8a9a 100644 --- a/board/skeleton-device-table.txt +++ b/board/skeleton-device-table.txt @@ -1,4 +1,5 @@ # /etc d 755 0 0 - - - - - /etc/init.d d 755 0 0 - - - - - -/etc/init.d/S20driver-setup f 755 0 0 - - - - - +/etc/init.d/S20arcade-logging-setup f 755 0 0 - - - - - +/etc/init.d/S25arcade-driver-setup f 755 0 0 - - - - - diff --git a/board/skeleton/etc/init.d/S20driver-setup b/board/skeleton/etc/init.d/S20arcade-logging-setup similarity index 57% rename from board/skeleton/etc/init.d/S20driver-setup rename to board/skeleton/etc/init.d/S20arcade-logging-setup index ef3c748..ef9a8c3 100644 --- a/board/skeleton/etc/init.d/S20driver-setup +++ b/board/skeleton/etc/init.d/S20arcade-logging-setup @@ -1,11 +1,11 @@ #!/bin/sh -start() { - modprobe gpio_keyboard_driver -} +LOG_DIR="/var/log/arcade/" -stop() { - rmmod gpio_keyboard_driver +start() { + echo "Setting up logging directory: ${LOG_DIR}" + mkdir -p "${LOG_DIR}" + chmod 1777 "${LOG_DIR}" } case "$1" in @@ -13,10 +13,8 @@ case "$1" in start ;; stop) - stop ;; restart) - stop start ;; *) diff --git a/board/skeleton/etc/init.d/S25arcade-driver-setup b/board/skeleton/etc/init.d/S25arcade-driver-setup new file mode 100644 index 0000000..b3aefe4 --- /dev/null +++ b/board/skeleton/etc/init.d/S25arcade-driver-setup @@ -0,0 +1,30 @@ +#!/bin/sh + +start() { + log -n "startup-scripts" "Probing gpio_keyboard_driver" + modprobe gpio_keyboard_driver + log -n "startup-scripts" "Probed gpio_keyboard_driver with exit code $?" +} + +stop() { + log -n "startup-scripts" "Removing gpio_keyboard_driver" + rmmod gpio_keyboard_driver + log -n "startup-scripts" "Removed gpio_keyboard_driver with exit code $?" +} + +case "$1" in + start) + start + ;; + stop) + stop + ;; + restart) + stop + start + ;; + *) + log -l error -n "startup-scripts" "Must be start, stop, or restart" + exit 1 + ;; +esac diff --git a/configs/arcade_defconfig b/configs/arcade_defconfig index 6a67c40..779e7ca 100644 --- a/configs/arcade_defconfig +++ b/configs/arcade_defconfig @@ -34,3 +34,4 @@ BR2_PACKAGE_HOST_GENIMAGE=y BR2_PACKAGE_HOST_KMOD_XZ=y BR2_PACKAGE_HOST_MTOOLS=y BR2_PACKAGE_GPIO_KEYBOARD_DRIVER=y +BR2_PACKAGE_ARCADE_LOGGER_CMD=y diff --git a/package/arcade-logger-cmd/Config.in b/package/arcade-logger-cmd/Config.in new file mode 100644 index 0000000..6443f0b --- /dev/null +++ b/package/arcade-logger-cmd/Config.in @@ -0,0 +1,4 @@ +config BR2_PACKAGE_ARCADE_LOGGER_CMD + bool "arcade-logger-cmd" + help + CLI app for logging to the command logging library diff --git a/package/arcade-logger-cmd/arcade-logger-cmd.mk b/package/arcade-logger-cmd/arcade-logger-cmd.mk new file mode 100644 index 0000000..6ae1ce5 --- /dev/null +++ b/package/arcade-logger-cmd/arcade-logger-cmd.mk @@ -0,0 +1,11 @@ +################################################################################ +# +# arcade-logger-cmd +# +################################################################################ + +ARCADE_LOGGER_CMD_VERSION = 26698165ce1717f51eaa5175653e29d48e4ba2ba +ARCADE_LOGGER_CMD_SITE = gitea@ssh.git.home.arpa:arcade/log.git +ARCADE_LOGGER_CMD_SITE_METHOD = git + +$(eval $(cargo-package))