129 lines
3.3 KiB
Scheme
129 lines
3.3 KiB
Scheme
;; -*- mode: guix-scheme -*-
|
|
|
|
(use-modules
|
|
(gnu)
|
|
(gnu image)
|
|
(gnu services authentication)
|
|
(gnu services avahi)
|
|
(gnu services base)
|
|
(gnu services dbus)
|
|
(gnu services desktop)
|
|
(gnu services linux)
|
|
(gnu services networking)
|
|
(gnu services pm)
|
|
(gnu services virtualization)
|
|
(gnu services xorg)
|
|
(gnu system nss))
|
|
|
|
(use-service-modules desktop
|
|
xorg)
|
|
|
|
(use-package-modules bootloaders
|
|
certs
|
|
emacs
|
|
emacs-xyz
|
|
fonts
|
|
readline
|
|
terminals
|
|
version-control
|
|
wm
|
|
xorg)
|
|
|
|
(define %local-filesystem
|
|
(call-with-input-file "/etc/config.scm"
|
|
(lambda (port)
|
|
(read port)
|
|
(read port)
|
|
(eval (cadar (last-pair (read port)))
|
|
(interaction-environment)))))
|
|
|
|
(operating-system
|
|
(host-name "ziltis-machine")
|
|
(timezone "Europe/Berlin")
|
|
(locale "de_DE.utf8")
|
|
(keyboard-layout
|
|
(keyboard-layout "de" #:options
|
|
'("caps:swapescape")))
|
|
(bootloader
|
|
(bootloader-configuration
|
|
(bootloader grub-efi-bootloader)
|
|
(targets
|
|
'("/boot/efi"))
|
|
(keyboard-layout keyboard-layout)))
|
|
(file-systems %local-filesystem)
|
|
(swap-devices
|
|
(list
|
|
(swap-space
|
|
(target "/dev/disk/by-partlabel/swap")
|
|
(discard? #t))))
|
|
(users
|
|
(cons*
|
|
(user-account
|
|
(name "zilti")
|
|
(group "users")
|
|
(supplementary-groups
|
|
'("wheel"
|
|
"netdev"
|
|
"audio"
|
|
"video"
|
|
"libvirt")))
|
|
%base-user-accounts))
|
|
(packages
|
|
(append
|
|
(list
|
|
nss-certs
|
|
readline
|
|
emacs
|
|
emacs-desktop-environment
|
|
font-terminus
|
|
git
|
|
kitty
|
|
swayfx)
|
|
%base-packages))
|
|
(services
|
|
(append
|
|
(modify-services
|
|
%desktop-services
|
|
(delete login-service-type)
|
|
(delete mingetty-service-type)
|
|
(delete console-font-service-type))
|
|
(list
|
|
(service tlp-service-type)
|
|
(service thermald-service-type
|
|
(thermald-configuration
|
|
(adaptive? #t)))
|
|
(service bluetooth-service-type)
|
|
(service inputattach-service-type)
|
|
(service fstrim-service-type)
|
|
(service earlyoom-service-type
|
|
(earlyoom-configuration
|
|
(minimum-available-memory 5)
|
|
(minimum-free-swap 5)))
|
|
(service greetd-service-type
|
|
(greetd-configuration
|
|
(greeter-supplementary-groups
|
|
(list "video" "input"))
|
|
(terminals
|
|
(list
|
|
#;(greetd-terminal-configuration
|
|
(terminal-vt "7")
|
|
(terminal-switch #t)
|
|
(default-session-command
|
|
(greetd-wlgreet-session
|
|
(command
|
|
(file-append swayfx "/bin/sway")))
|
|
#;(greetd-wlgreet-sway-session
|
|
(sway (specification->package "swayfx")))))
|
|
(greetd-terminal-configuration
|
|
(terminal-vt "8"))))))
|
|
(service fprintd-service-type)
|
|
(service screen-locker-service-type
|
|
(screen-locker-configuration
|
|
(name "swaylock")
|
|
(program
|
|
(file-append swaylock-effects "/bin/swaylock"))
|
|
(using-setuid? #f)))
|
|
(service libvirt-service-type
|
|
(libvirt-configuration
|
|
(unix-sock-group "libvirt"))))))
|
|
(name-service-switch %mdns-host-lookup-nss))
|