From afe32807aaed2aa093917a6a217726adf64af074 Mon Sep 17 00:00:00 2001 From: Hilton Chain Date: Fri, 20 Jun 2025 15:21:42 +0800 Subject: [PATCH] services: Add greetd-tuigreet-session. * modules/rosenthal/services/base.scm: New file. --- modules/rosenthal/services/base.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 modules/rosenthal/services/base.scm diff --git a/modules/rosenthal/services/base.scm b/modules/rosenthal/services/base.scm new file mode 100644 index 0000000..5fcf205 --- /dev/null +++ b/modules/rosenthal/services/base.scm @@ -0,0 +1,29 @@ +;;; SPDX-FileCopyrightText: 2025 Hilton Chain +;;; +;;; SPDX-License-Identifier: GPL-3.0-or-later + +(define-module (rosenthal services base) + #:use-module (guix gexp) + #:use-module (guix records) + #:use-module (rosenthal utils packages) + #:use-module (gnu services base) + #:use-module (gnu packages bash) + #:export (greetd-tuigreet-session)) + +(define-record-type* + greetd-tuigreet-session make-greetd-tuigreet-session + greetd-tuigreet-session? + this-greetd-tuigreet-session + (tuigreet greetd-tuigreet-session-tuigreet + (default (spec->pkg "tuigreet")))) + +(define-gexp-compiler (greetd-tuigreet-session-compiler + (session ) + system target) + (match-record session (tuigreet) + (lower-object + (program-file "tuigreet-wrapper" + #~(execl #$tuigreet #$tuigreet + "--issue" "--time" "--user-menu" "--asterisks" + "--power-shutdown" "loginctl power-off" + "--power-reboot" "loginctl reboot")))))