💾 Archived View for gem.librehacker.com › gemlog › starlog › 20230314-1.gmi captured on 2024-06-20 at 12:00:24. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2023-03-20)

-=-=-=-=-=-=-

Guix: Listing Operating System Services

christopher@theoden ~$ guix repl
GNU Guile 3.0.9
Copyright (C) 1995-2023 Free Software Foundation, Inc.

Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
This program is free software, and you are welcome to redistribute it
under certain conditions; type `,show c' for details.

Enter `,help' for help.
scheme@(guix-user)> (define os (load "/home/christopher/Manifests/theoden-system.scm"))
scheme@(guix-user)> ,use (gnu system)
scheme@(guix-user)> (map (compose service-type-name service-kind) (operating-system-services os))
$1 = (mcron localed dconf-profile gnome-desktop tor rngd openssh set-xorg-configuration cups usbasp-udev-rules gdm screen-locker screen-locker mtp sane polkit-wheel mount-setuid-helpers gdm-file-system fontconfig-file-system network-manager wpa-supplicant network-manager-applet modem-manager usb-modeswitch avahi udisks upower accountsservice cups-pk-helper colord geoclue polkit elogind dbus ntp x11-socket-directory pulseaudio alsa login virtual-terminal console-fonts syslog agetty mingetty mingetty mingetty mingetty mingetty mingetty static-networking urandom-seed guix nscd rottlog log-cleanup udev sysctl special-files system linux-builder boot cleanup activate shepherd-root pam account etc etc-hosts fstab session-environment host-name user-processes root-file-system setuid-program profile boot-file-system-utilities file-systems linux-bare-metal firmware)

The 'operating-system' is a Guile record defined in 'gnu/system.scm' of a guix checkout, and likewise 'service' is defined in gnu/services.scm. See the 'exports' of each of these files to find record accessors.