(define-module (aisaka-system-configuration) #:use-module (gnu) #:use-module (gnu packages cups) #:use-module (gnu packages finance) #:use-module (gnu services cups) #:use-module (gnu services configuration) #:use-module (gnu services desktop) #:use-module (gnu services networking) #:use-module (gnu services nix) #:use-module (gnu services ssh) #:use-module (gnu services version-control) #:use-module (gnu services xorg)) (define keyboard-layout (keyboard-layout "pl")) (operating-system (locale "pl_PL.utf8") (timezone "Europe/Warsaw") (keyboard-layout keyboard-layout) (host-name "aisaka") (users (cons* (user-account (name "marek") (comment "Marek Paśnikowski") (group "users") (home-directory "/home/marek") (supplementary-groups '("audio" "netdev" "tor" "video" "wheel"))) %base-user-accounts)) (packages (append (map (compose list specification->package+output) '(;; "netcat-openbsd" "nss-certs" "ntfs-3g")) ( map (compose list specification->package+output) ( list "plasma" "plasma-desktop" "plasma-framework" "plasma-integration" "plasma-nano" "plasma-nm" "plasma-pa" "plasma-pass" "plasma-vault" "plasma-welcome" "plasma-workspace" "plasma-bigscreen" "plasma-mobile" "plasma-phonebook" "plasma-browser-integration" "plasma-mobile-settings" "plasma-mobile-sounds" "plasma-wayland-protocols" "plasma-active-window-control" "plasma-phone-components" "plasma-redshift-control" "plasma-disks" "plasma-firewall" "plasma-systemmonitor" "breeze" "breeze-gtk" "bluedevil" "breeze-icons" "kdeplasma-addons" "keysmith" "kmenuedit" "krunner" "kwin" "latte-dock" "plasma-workspace-wallpapers" "polkit-kde-agent" "system-settings" "calindori" "discover" "elisa" "kpipewire" "ksysguard" "attica" "kaccounts-integration" "kde-frameworkintegration" "kmail" "kscreen" ) ) %base-packages)) (services (append (list (service openssh-service-type) (udev-rules-service 'trezord trezord-udev-rules) (service guix-service-type (guix-configuration (extra-options (list "--gc-keep-derivations=yes" "--gc-keep-outputs=yes")))) (service nix-service-type) (service (service-type (name 'trezor-system-packages) (extensions (list (service-extension profile-service-type (lambda (_) (map specification->package (list "trezord" "trezord-udev-rules")))))) (description "TrezorD packages needed by the system.") (default-value #f))) (service cups-service-type (cups-configuration (extensions (list cups-filters epson-inkjet-printer-escpr)) (web-interface? #t))) (service git-daemon-service-type (git-daemon-configuration (export-all? #t))) (service gnome-desktop-service-type) (service tor-service-type (tor-configuration (control-socket? #t)))) (modify-services %desktop-services (elogind-service-type configuration => (elogind-configuration (inherit configuration) (handle-lid-switch 'ignore))) (delete guix-service-type)))) (bootloader (bootloader-configuration (bootloader grub-bootloader) (targets '("/dev/sda")) (keyboard-layout keyboard-layout))) (swap-devices (list (swap-space (target (uuid "73bed3f9-be07-40ad-a228-577cd24f2e1d"))))) (mapped-devices (list (mapped-device (source (uuid "887ac37f-2919-41a0-a62a-e1ff5ea2d6cc")) (target "aisaka-root") (type luks-device-mapping)))) (file-systems (append %base-file-systems (list (file-system (mount-point "/") (device "/dev/mapper/aisaka-root") (type "btrfs") (dependencies mapped-devices)) (file-system (mount-point "/boot") (device (uuid "4f77b5fc-56ad-43ae-b6ec-e5adc8c48587")) (type "ext4"))))))