(define-module (suweren services) #:use-module (gnu packages cups) #:use-module (gnu packages linux) #:use-module (gnu services) #:use-module (gnu services base) #:use-module (gnu services cups) #:use-module (gnu services desktop) #:use-module (gnu services sddm) #:use-module (gnu services sound) #:use-module (gnu services syncthing) #:use-module (gnu services xorg) #:use-module (services guix channels) #:use-module (services nonguix substitute) #:use-module (services plasma-desktop) #:use-module (suweren services desktop) #:use-module (suweren trezor) ; trezor-bridge #:use-module (upstream services nbfc)) (define (guix-options configuration-record) (let ((extra-options (list "--gc-keep-derivations=yes" "--gc-keep-outputs=yes"))) (guix-configuration (inherit configuration-record) (extra-options extra-options)))) (define-public %distribution-services (let* ((cups-configuration* (cups-configuration (web-interface? #t))) (nbfc-configuration* (nbfc-configuration (model "Acer Nitro AN515-43"))) (sddm-configuration* (sddm-configuration ;; (display-server "wayland") (theme "breeze"))) (cups-service (service cups-service-type cups-configuration*)) (%desktop-services* (modify-services %desktop-services (delete gdm-service-type) (delete pulseaudio-service-type) (guix-service-type configuration => (guix-options configuration)) (guix-service-type configuration => (channels configuration)) (guix-service-type configuration => (nonguix-substitute configuration)))) (nbfc-service (service nbfc-service-type nbfc-configuration*)) (plasma-desktop-service (service plasma-desktop-service-type)) (sddm-service (service sddm-service-type sddm-configuration*)) (syncthing-service (service syncthing-service-type (syncthing-configuration (user "marek"))))) (append %desktop-services* bluetooth-services trezor-bridge (list cups-service nbfc-service plasma-desktop-service sddm-service syncthing-service))))