guixconfig/config.scm

208 lines
5.6 KiB
Scheme
Raw Normal View History

2023-12-01 14:30:07 +00:00
;; Modules
2023-11-28 21:38:47 +00:00
2023-12-01 14:30:07 +00:00
;; #+NAME: module-list
;; - gnu
;; - gnu image
;; - gnu services authentication
;; - 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
2023-12-11 11:54:43 +00:00
;; - nongnu packages linux
;; - nongnu system linux-initrd
2023-12-01 14:30:07 +00:00
;; [[file:config.org::*Modules][Modules:1]]
2023-12-14 21:49:12 +00:00
(use-modules
(gnu)
(gnu image)
(gnu services authentication)
(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)
(nongnu packages linux)
(nongnu system linux-initrd))
2023-12-01 14:30:07 +00:00
;; Modules:1 ends here
;; Service Modules
;; #+NAME: service-module-list
;; - desktop
;; - xorg
;; [[file:config.org::*Service Modules][Service Modules:1]]
2023-12-14 21:49:12 +00:00
(use-service-modules desktop xorg)
2023-12-01 14:30:07 +00:00
;; Service Modules:1 ends here
;; Package Modules
;; #+NAME: package-module-list
;; - bootloaders
;; - certs
;; - emacs
;; - emacs-xyz
;; - fonts
2023-12-12 09:28:30 +00:00
;; - pciutils
2023-12-01 14:30:07 +00:00
;; - readline
;; - terminals
;; - version-control
;; - wm
;; - xorg
2023-11-28 21:38:47 +00:00
2023-12-01 14:30:07 +00:00
;; [[file:config.org::*Package Modules][Package Modules:1]]
2023-12-14 21:49:12 +00:00
(use-package-modules
bootloaders
certs
emacs
emacs-xyz
fonts
pciutils
readline
terminals
version-control
wm
xorg)
2023-12-01 14:30:07 +00:00
;; Package Modules:1 ends here
;; Operating System
;; This is the full operating system specification.
2023-12-01 13:22:33 +00:00
2023-12-01 14:30:07 +00:00
;; [[file:config.org::*Operating System][Operating System:1]]
2023-11-28 21:38:47 +00:00
(operating-system
(host-name "ziltis-machine")
(timezone "Europe/Berlin")
(locale "de_DE.utf8")
2023-11-29 13:08:49 +00:00
(keyboard-layout
2023-12-01 13:22:33 +00:00
(keyboard-layout "de" #:options '("caps:swapescape")))
2023-12-11 11:54:43 +00:00
(kernel linux)
(initrd microcode-initrd)
(firmware (list linux-firmware))
2023-11-28 22:38:08 +00:00
(bootloader
(bootloader-configuration
2023-12-01 13:34:54 +00:00
(bootloader grub-efi-bootloader)
2023-11-28 22:38:08 +00:00
(targets
'("/boot/efi"))
(keyboard-layout keyboard-layout)))
2023-12-14 21:49:12 +00:00
(file-systems (append (list
(file-system
2023-12-17 16:40:03 +00:00
(device (file-system-label "EFI"))
(mount-point "/boot/efi")
(type "vfat"))
(file-system
(device (file-system-label "guix"))
(mount-point "/")
(type "xfs")))
2023-12-14 21:49:12 +00:00
%base-file-systems))
(swap-devices
(list (swap-space (target (file-system-label "swap")))))
2023-11-28 22:38:08 +00:00
(users
2023-11-29 12:01:54 +00:00
(cons*
(user-account
(name "zilti")
(group "users")
(supplementary-groups
2023-12-01 13:22:33 +00:00
'("wheel" "netdev" "audio" "video" "libvirt")))
2023-11-28 22:38:08 +00:00
%base-user-accounts))
2023-12-01 13:22:33 +00:00
(packages
(append
2023-12-14 21:49:12 +00:00
(list emacs
emacs-desktop-environment
font-terminus
git
hwdata
2023-12-17 16:40:41 +00:00
network-manager
2023-12-14 21:49:12 +00:00
nss-certs
readline)
2023-12-14 19:57:10 +00:00
2023-12-01 13:22:33 +00:00
%base-packages))
(services
(append
(modify-services
%desktop-services
(delete login-service-type)
(delete mingetty-service-type)
2023-12-11 10:59:44 +00:00
(delete console-font-service-type)
(guix-service-type config => (guix-configuration
(inherit config)
(substitute-urls
(append (list "https://substitutes.nonguix.org")
%default-substitute-urls))
(authorized-keys
(append (list (plain-file "non-guix.pub"
2023-12-11 11:54:43 +00:00
"<<nonguix-pubkey>>")))))))
2023-12-14 21:49:12 +00:00
(list (service tlp-service-type (tlp-configuration))
(service
thermald-service-type
(thermald-configuration (adaptive? #t)))
(service
bluetooth-service-type
(bluetooth-configuration))
(service
earlyoom-service-type
(earlyoom-configuration
(minimum-available-memory 5)
(minimum-free-swap 5)))
(service
inputattach-service-type
(inputattach-configuration))
(service
libvirt-service-type
(libvirt-configuration
(unix-sock-group "libvirt")))
(service
fstrim-service-type
(fstrim-configuration))
(service
fprintd-service-type
(fprintd-configuration)))
2023-12-01 13:38:40 +00:00
(list
2023-12-01 13:37:15 +00:00
(service greetd-service-type
(greetd-configuration
(greeter-supplementary-groups
(list "video" "input"))
(terminals
(list
(greetd-terminal-configuration
2023-12-01 15:19:17 +00:00
(terminal-vt "1"))
(greetd-terminal-configuration
(terminal-vt "2"))
(greetd-terminal-configuration
(terminal-vt "3"))
(greetd-terminal-configuration
(terminal-vt "4"))
#;(greetd-terminal-configuration
2023-12-11 10:59:44 +00:00
(terminal-vt "7")
(terminal-switch #t)
(default-session-command
(greetd-wlgreet-session
(command
2023-12-01 15:19:17 +00:00
(file-append swayfx "/bin/sway")))))
2023-12-01 13:37:15 +00:00
(greetd-terminal-configuration
2023-12-01 13:38:40 +00:00
(terminal-vt "8")))))))
(list
2023-12-01 13:37:15 +00:00
(service screen-locker-service-type
(screen-locker-configuration
(name "swaylock")
(program
(file-append swaylock-effects "/bin/swaylock"))
2023-12-01 13:38:40 +00:00
(using-setuid? #f))))
))
2023-11-28 21:38:47 +00:00
(name-service-switch %mdns-host-lookup-nss))
2023-12-01 14:30:07 +00:00
;; Operating System:1 ends here