jjj;; cap's config

(use-modules (gnu) (srfi srfi-1))
(use-service-modules desktop networking ssh xorg  sddm)
(use-package-modules wm)

(define %my-desktop-services
  (cons*
    (screen-locker-service swaylock)
    (service sddm-service-type (sddm-configuration))
    (modify-services
      ;; remove gdm
      (remove (lambda (service)
                (eq? (service-kind service) gdm-service-type))
              %desktop-services)
      ;; prevent network-manager from modifying /etc/resolv.conf
      (network-manager-service-type
        config => (network-manager-configuration
                    (inherit config)
                    (dns "none"))))))

(operating-system
  (locale "en_US.utf8")
  (timezone "Europe/Berlin")
  (keyboard-layout
    (keyboard-layout "de"))
  (bootloader
    (bootloader-configuration
      (bootloader grub-efi-bootloader)
      (target "/boot/efi")
      (keyboard-layout keyboard-layout)))
  (swap-devices (list "/dev/sda2"))
  (mapped-devices
    (list (mapped-device
            (source
              (uuid "13d52518-1adc-434f-b85b-798c3874a18c"))
            (target "root")
            (type luks-device-mapping))))
  (file-systems
    (cons* (file-system
             (mount-point "/")
             (device "/dev/mapper/root")
             (type "btrfs")
             (dependencies mapped-devices))
           (file-system
             (mount-point "/boot/efi")
             (device (uuid "4D39-2291" 'fat32))
             (type "vfat"))
           %base-file-systems))
  (host-name "bark")
  (users (cons* (user-account
                  (name "cap")
                  (comment "")
                  (group "users")
                  (home-directory "/home/cap")
                  (supplementary-groups
                    '("wheel" "netdev" "audio" "video")))
                %base-user-accounts))
  (packages
    (append
      (map (compose list specification->package+output) 
                '("nss-certs" "vim" 
                  "htop" "tmux" "gnupg"
                  "pinentry" "password-store" "nftables"
                  "python" "git" "file" 
                  "tree" "iftop" "curl" 
                  "wget" "bind:utils" "rsync" 
                  "btrfs-progs" 
                  "cryptsetup" "dosfstools" "ntfs-3g" 
                  "openssl" "st"
                  "icecat"
                  
                  "sway" "swaylock" "font-awesome" "swayidle" "libnotify" ))
      %base-packages))
  
    (services (cons (set-xorg-configuration
                    (xorg-configuration
                      (keyboard-layout keyboard-layout)))
                  %desktop-services))))