guixconfig/config.scm

233 lines
6.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
2023-12-18 00:05:20 +00:00
;; - gnu packages gnome
2023-12-01 14:30:07 +00:00
;; - 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)
2023-12-17 16:43:07 +00:00
(gnu packages gnome)
2023-12-14 21:49:12 +00:00
(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-18 00:05:20 +00:00
#;(file-systems %local-filesystem)
#;(swap-devices %local-swap)
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-18 00:05:20 +00:00
'("users" "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
nss-certs
2023-12-18 00:05:20 +00:00
network-manager
2023-12-14 21:49:12 +00:00
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-18 00:05:20 +00:00
"(public-key (ecc (curve Ed25519) (q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#)))")))))))
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
2023-12-18 00:05:20 +00:00
(fprintd-configuration))
2023-12-18 00:06:58 +00:00
#;(service
2023-12-18 00:05:20 +00:00
polkit-service-type
(polkit-configuration (polkit-wheel-service))))
2023-12-14 21:49:12 +00:00
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-12-18 00:05:20 +00:00
(list
(service unattended-upgrade-service-type
(unattended-upgrade-configuration
(schedule "5 12 * * 1")
(channels
(cons* (channel
(name 'nonguix)
(url "https://gitlab.com/nonguix/nonguix")
;; Enable signature verification:
(introduction
(make-channel-introduction
"897c1a470da759236cc11798f4e0a5f7d4d59fbc"
(openpgp-fingerprint
"2A39 3FFF 68F4 EF7A 3D29 12AF 6F51 20A0 22FB B2D5"))))
(channel
(name 'ziltis-channel)
(url "https://gitea.lyrion.ch/zilti/guixchannel"))
%default-channels))))))
))
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