(use-modules (srfi srfi-1) (srfi srfi-9) (ice-9 rdelim) (guix) (gnu) (gnu system nss) (gnu system locale) (gnu packages linux) (gnu packages gnome) (gnu packages gnuzilla) (gnu packages suckless) (gnu packages vpn) (gnu packages ssh) (gnu packages scheme) (gnu packages admin) (gnu packages fonts) (gnu packages xorg) (gnu packages emacs) (gnu packages vpn) (gnu packages mail) (gnu packages dunst) (gnu packages xdisorg) (gnu packages guile) (gnu packages image-viewers) (gnu packages pulseaudio) (gnu packages display-managers) (gnu packages video) (gnu packages networking) (gnu packages version-control) (gnu packages ntp) (gnu packages libusb) (gnu services) (gnu services dbus) (gnu services networking) (gnu services admin) (gnu services vpn) (gnu services xorg) (gnu services web) (gnu services desktop)) (use-service-modules xorg dbus networking desktop admin mcron) (use-package-modules xorg bootloaders wm certs suckless emacs base idutils) (define libinput.conf " # Use the libinput driver for all event devices Section \"InputClass\" Identifier \"libinput keyboard catchall\" MatchIsKeyboard \"on\" MatchDevicePath \"/dev/input/event*\" Driver \"libinput\" Option \"XkbLayout\" \"us,se\" Option \"XkbOptions\" \"grp:win_space_toggle,caps:ctrl_modifier\" EndSection ") (define %user-name "nils") (define %host-name "gnu") (operating-system (host-name %host-name) (timezone "Europe/Paris") (locale "en_US.utf8") (locale-definitions (list (locale-definition (name "en_US.utf8") (source "en_US") (charset "UTF-8")) (locale-definition (name "sv_SE.utf8") (source "sv_SE") (charset "UTF-8")))) (bootloader (bootloader-configuration (bootloader grub-efi-bootloader) (target "/boot"))) (file-systems (cons* (file-system (device "guixsd-root") (title 'label) (mount-point "/") (type "ext4")) (file-system (device "/dev/sda1") (mount-point "/boot") (needed-for-boot? #t) (type "vfat")) %base-file-systems)) (kernel-arguments '("modprobe.blacklist=pcspkr,snd_pcsp")) (users (cons (user-account (name %user-name) (comment %user-name) (group "users") (supplementary-groups '("wheel" "netdev" "audio" "video")) (home-directory (string-append "/home/" %user-name))) %base-user-accounts)) (packages (cons* i3-wm i3status dmenu dunst nss-certs font-inconsolata font-dejavu font-hack font-liberation font-terminus font-ubuntu pulseaudio alsa-utils openssh emacs emacs-use-package offlineimap mu openvpn network-manager-openvpn sicp icecat htop feh ;; set background image in i3 xbacklight xf86-input-evdev xf86-video-fbdev xorg-server rxvt-unicode git %base-packages)) (services (cons* (service mcron-service-type) (service rottlog-service-type) (slim-service #:allow-empty-passwords? #f #:auto-login? #f #:startx (xorg-start-command #:configuration-file (xorg-configuration-file #:extra-config (list libinput.conf)))) (simple-service 'mtp udev-service-type (list libmtp)) ;; The D-Bus clique. (udisks-service) (upower-service) (accountsservice-service) (colord-service) (geoclue-service) (polkit-service) (elogind-service) (dbus-service) (service wpa-supplicant-service-type wpa-supplicant) (service network-manager-service-type (network-manager-configuration)) (ntp-service #:allow-large-adjustment? #t) (openvpn-client-service) %base-services)) ;; Allow resolution of '.local' host names with mDNS. (name-service-switch %mdns-host-lookup-nss))