(use-modules (gnu) (srfi srfi-1) ((gnu packages linux) #:prefix gnu-linux:) (nongnu packages linux) (nongnu system linux-initrd)) (use-package-modules admin certs freedesktop linux ssh vim wm wget xdisorg xorg video virtualization) (use-service-modules desktop networking ssh xorg pm sddm virtualization security-token) (define keyboard-layout (keyboard-layout "us,es" #:options '("eurosign:e" "grp:alt_space_toggle" "lv3:ralt_switch"))) (define my-services (list (udev-rules-service 'light gnu-linux:light) (service pcscd-service-type) (service tor-service-type) (service thermald-service-type) (service power-profiles-daemon-service-type) (service bluetooth-service-type) (service sddm-service-type (sddm-configuration (xorg-configuration (xorg-configuration (keyboard-layout keyboard-layout) (modules (append %default-xorg-modules (list xf86-input-wacom))) (extra-config '("\n" "\n" "Section \"InputClass\"\n" " Identifier \"libinput touchpad catchall\"\n" " Driver \"libinput\"\n" " MatchIsTouchpad \"on\"\n" " MatchDevicePath \"/dev/input/event*\"\n" " Option \"Tapping\" \"on\"\n" " Option \"TappingDrag\" \"on\"\n" " Option \"DisableWhileTyping\" \"on\"\n" "EndSection\n" "\n" ; https://wiki.archlinux.org/title/Libinput#Via_xinput "Section \"InputClass\"\n" " Identifier \"USB Mouse Pad USB Mouse Pad Mouse\"\n" " Driver \"libinput\"\n" " MatchDevicePath \"/dev/input/event*\"\n" " MatchUSBID \"062a:8255\"\n" " Option \"Middle Emulation\" \"on\"\n" " Option \"AccelSpeed\" \"-0.9\"" "EndSection\n" "\n" "\n" "Section \"Device\"\n" " Identifier \"modesetting\"\n" " Driver \"modesetting\"\n" " Option \"TearFree\" \"True\"\n" "EndSection" "\n")))))) (service qemu-binfmt-service-type (qemu-binfmt-configuration (platforms (lookup-qemu-platforms "riscv64" "aarch64")) (qemu qemu-7.2.4))))) (operating-system (kernel linux) (kernel-loadable-modules `(,tuxedo-keyboard)) (initrd microcode-initrd) (firmware (list linux-firmware)) (locale "en_US.utf8") (timezone "Europe/Madrid") (keyboard-layout keyboard-layout) (bootloader (bootloader-configuration (bootloader grub-efi-bootloader) (targets (list "/boot/efi")) (keyboard-layout keyboard-layout))) (swap-devices (list (swap-space (target "/dev/sda3")))) (file-systems (cons* (file-system (mount-point "/boot/efi") (device (uuid "6BB8-3AFE" 'fat32)) (type "vfat")) (file-system (mount-point "/") (device (uuid "eee511d3-b473-4bc0-ba63-bf3971341576" 'ext4)) (type "ext4")) (file-system (mount-point "/home") (device (uuid "49ebc09e-6021-4730-a467-b8818c2128f1" 'ext4)) (type "ext4")) %base-file-systems)) (host-name "tuxedo") (users (cons* (user-account (name "Ekaitz") (comment "Ekaitz") (group "users") (home-directory "/home/Ekaitz") (supplementary-groups '("wheel" "netdev" "audio" "video" "lp" "dialout" "kvm"))) %base-user-accounts)) (packages (cons* htop gnu-linux:light i3-wm neovim tree wget tcpdump openssh thermald power-profiles-daemon intel-vaapi-driver xf86-input-wacom gnu-linux:ntfs-3g qemu-7.2.4 %base-packages)) (services (append my-services (modify-services %desktop-services ;; Removes ModemManager because it interferes with USB ;; development. If using a 3/4G modem or something we have ;; to activate it. (delete modem-manager-service-type) (delete gdm-service-type) ;; Configure nonguix substitutes (guix-service-type config => (guix-configuration (inherit config) (substitute-urls (append (list "https://substitutes.nonguix.org") %default-substitute-urls)) (authorized-keys (append (list (local-file "./non-guix-signing-key.pub")) %default-authorized-guix-keys))))))))