dotfiles/config.scm

98 lines
3.3 KiB
Scheme
Raw Normal View History

2024-03-16 17:28:50 +01:00
;; -*- mode: scheme; -*-
;; This is an operating system configuration template
;; for a "desktop" setup with GNOME and Xfce.
(use-modules (gnu)
(gnu system nss)
(guix utils)
(nongnu packages linux)
(nongnu system linux-initrd)
(srfi srfi-1))
(use-service-modules desktop xorg dns networking)
(use-package-modules bootloaders certs shells ssh version-control emacs vim wm freedesktop xorg fontutils)
(operating-system
(host-name "apnx")
(timezone "Europe/Ljubljana")
(locale "sl_SI.utf8")
;; Use the UEFI variant of GRUB with the EFI System
;; Partition mounted on /boot/efi.
(bootloader (bootloader-configuration
(bootloader grub-efi-bootloader)
(targets '("/boot/efi"))))
(kernel linux)
(initrd microcode-initrd)
(firmware (list linux-firmware))
(file-systems (cons* (file-system
(device "/dev/sda3")
(mount-point "/")
(type "btrfs")
(options "compress"))
(file-system
(device "/dev/sda2")
(mount-point "/boot/efi")
(type "vfat"))
%base-file-systems))
(swap-devices
(list (swap-space (target "/swapfile"))))
(users (cons* (user-account
(name "g1smo")
(comment "Yuri")
(group "users")
(supplementary-groups '("wheel" "netdev"
"audio" "video" "dialout"))
(shell (file-append zsh "/bin/zsh"))
(home-directory "/home/g1smo"))
(user-account
(name "bask")
(comment "Balkan Anarchist Bookfair")
(group "users")
(supplementary-groups '("wheel" "netdev"
"audio" "video" "dialout"))
(home-directory "/home/bask"))
%base-user-accounts))
;; This is where we specify system-wide packages.
(packages (cons* nss-certs ;for HTTPS access
zsh ;Z shell
openssh
git
emacs
vim
bspwm
libinput
xf86-input-libinput
freetype
%base-packages))
;; Add GNOME and/or Xfce---we can choose at the log-in
;; screen with F1. Use the "desktop" services, which
;; include the X11 log-in service, networking with Wicd,
;; and more.
(services (cons* (service xfce-desktop-service-type)
(service gnome-desktop-service-type)
(service dnsmasq-service-type
(dnsmasq-configuration
(cache-size 1500)))
(service network-manager-service-type
(network-manager-configuration
(dns "dnsmasq")))
(service pam-limits-service-type
(list
(pam-limits-entry "@audio" 'both 'rtprio 99)
(pam-limits-entry "@audio" 'both 'memlock 'unlimited)))
(remove
(lambda (service)
(eq? network-manager-service-type (service-kind service)))
%desktop-services)))
;; Allow resolution of '.local' host names with mDNS.
(name-service-switch %mdns-host-lookup-nss))