guixconfig/config.scm

248 lines
8.7 KiB
Scheme

(use-modules
(gnu)
(gnu image)
(gnu system nss)
(guix channels)
(rosenthal packages wm)
(zilti packages hyprland)
(nongnu packages firmware)
(nongnu packages linux)
(nongnu system linux-initrd))
(use-service-modules
admin
authentication
base
configuration
dbus
desktop
docker
linux
networking
nix
pm
sddm
sound
virtualization
xorg)
(use-package-modules
bootloaders
certs
containers
freedesktop
fonts
gl
gnome
kde-frameworks
linux
pciutils
qt
readline
terminals
version-control
virtualization
wm
xdisorg
xorg)
(operating-system
(host-name "ziltis-machine")
(timezone "Europe/Berlin")
(locale "de_DE.utf8")
(keyboard-layout
(keyboard-layout "de" #:options '("caps:swapescape")))
(kernel linux)
(initrd microcode-initrd)
(firmware (list linux-firmware))
(bootloader
(bootloader-configuration
(bootloader grub-efi-bootloader)
(targets
'("/boot/efi"))
(keyboard-layout keyboard-layout)))
#;(file-systems %local-filesystem)
#;(swap-devices %local-swap)
(file-systems (append (list
(file-system
(device (file-system-label "EFI"))
(mount-point "/boot/efi")
(type "vfat"))
(file-system
(device (file-system-label "guix"))
(mount-point "/")
(type "xfs")))
%base-file-systems))
(swap-devices
(list (swap-space (target (file-system-label "swap")))))
(users
(cons*
(user-account
(name "zilti")
(group "users")
(supplementary-groups
'("avahi" "users" "input" "wheel" "netdev" "audio" "cdrom" "video" "libvirt" "lp")))
%base-user-accounts))
(packages
(append
(list bluez-firmware
egl-gbm
egl-wayland
eglexternalplatform
font-terminus
fwupd-nonfree
git
glu
hwdata
hyprland-xwayland
i915-firmware
libdrm
libglvnd
linux-pam
mesa
network-manager
kwayland
qtwayland
readline
tuxedo-keyboard
xdg-desktop-portal-hyprland
xdg-desktop-portal
xf86-video-amdgpu
xf86-video-intel
xorg-server-xwayland
xorg-server
wayland
amdgpu-firmware
amd-microcode
intel-microcode)
%base-packages))
(services
(append
(modify-services
%desktop-services
(delete screen-locker-service-type)
(delete pulseaudio-service-type)
(guix-service-type config => (guix-configuration
(inherit config)
(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 'emacs)
(url "https://github.com/babariviere/guix-emacs")
(introduction
(make-channel-introduction
"72ca4ef5b572fea10a4589c37264fa35d4564783"
(openpgp-fingerprint
"261C A284 3452 FB01 F6DF 6CF4 F9B7 864F 2AB4 6F18"))))
(channel
(name 'rosenthal)
(url "https://codeberg.org/hako/rosenthal.git")
(branch "trunk")
(introduction
(make-channel-introduction
"7677db76330121a901604dfbad19077893865f35"
(openpgp-fingerprint
"13E7 6CD6 E649 C28C 3385 4DF5 5E5A A665 6149 17F7"))))
(channel
(name 'ziltis-channel)
(url "https://gitea.lyrion.ch/zilti/guixchannel"))
%default-channels))
(substitute-urls
(append (list "https://substitutes.nonguix.org")
%default-substitute-urls))
(authorized-keys
(append (list (local-file "./keys/non-guix.pub"))
%default-authorized-guix-keys)))))
(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 nix-service-type (nix-configuration))
(service
virtlog-service-type
(virtlog-configuration))
(service
fstrim-service-type
(fstrim-configuration))
(service
fprintd-service-type
(fprintd-configuration)))
(list polkit-wheel-service)
(list
(service screen-locker-service-type
(screen-locker-configuration
(name "swaylock")
(program
(file-append swaylock-effects "/bin/swaylock"))
(using-setuid? #f))))
(list
(simple-service 'add-extra-hosts
hosts-service-type
(list (host "127.0.0.1" "l.redsky.io" '("ld.redsky.io"))
(host "::1" "l.redsky.io" '("ld.redsky.io")))))
(list
(service pam-limits-service-type
(list
(pam-limits-entry "*" 'both 'nofile 524288))))
(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 'emacs)
(url "https://github.com/babariviere/guix-emacs")
(introduction
(make-channel-introduction
"72ca4ef5b572fea10a4589c37264fa35d4564783"
(openpgp-fingerprint
"261C A284 3452 FB01 F6DF 6CF4 F9B7 864F 2AB4 6F18"))))
(channel
(name 'rosenthal)
(url "https://codeberg.org/hako/rosenthal.git")
(branch "trunk")
(introduction
(make-channel-introduction
"7677db76330121a901604dfbad19077893865f35"
(openpgp-fingerprint
"13E7 6CD6 E649 C28C 3385 4DF5 5E5A A665 6149 17F7"))))
(channel
(name 'ziltis-channel)
(url "https://gitea.lyrion.ch/zilti/guixchannel"))
%default-channels)))))))
(name-service-switch %mdns-host-lookup-nss))