(define-module (systems aisaka) ;; service #:use-module (gnu services) ;; guix-home-service-type #:use-module (gnu services guix) ;; keyboard-layout #:use-module (gnu system keyboard) ;; bootloader-configuration* ;; file-systems* ;; firmware* ;; hardware-groups ;; initrd* ;; kernel* ;; swap-devices* #:use-module (machines inspiron) ;; %suweren-operating-system #:use-module (suweren system) ;; uid1000-account ;; uid1000-home-environment ;; uid1000-name #:use-module (users id1000) ;; uid1001-account ;; uid1001-home-environment ;; uid1001-name #:use-module (users id1001)) ;; string (define host-name* "aisaka") ;; (record user-account) (define users* (let* ((system-groups (list "wheel")) (supplementary-groups hardware-groups) (supplementary-groups* (append hardware-groups system-groups))) (list (uid1000-account supplementary-groups*) (uid1001-account supplementary-groups)))) ;; record operating-system (define-public operating-system* (let* ((home-environments `((,uid1000-name ,(uid1000-home-environment host-name*)) (,uid1001-name ,(uid1001-home-environment host-name*)))) (guix-home (service guix-home-service-type home-environments)) (keyboard-layout* (keyboard-layout "pl")) (services* (list guix-home)) (timezone* "Europe/Warsaw") (locale* "pl_PL.utf8")) (%suweren-operating-system kernel* (bootloader-configuration* keyboard-layout*) keyboard-layout* initrd* firmware* host-name* (file-systems* host-name*) (swap-devices* host-name*) users* timezone* locale* services*))) operating-system*