diff options
| -rw-r--r-- | deployment/systems/cokolwiek.scm | 105 | 
1 files changed, 105 insertions, 0 deletions
| diff --git a/deployment/systems/cokolwiek.scm b/deployment/systems/cokolwiek.scm new file mode 100644 index 0000000..3fdc851 --- /dev/null +++ b/deployment/systems/cokolwiek.scm @@ -0,0 +1,105 @@ +;;; SPDX-License-Identifier: GPL-3.0-or-later +;;; SPDX-FileCopyrightText: 2024-2025 Marek Paśnikowski <marek@marekpasnikowski.pl> + +(define-module (deployment systems cokolwiek) +  #:use-module ( (gnu packages package-management) +                 #:prefix gnu:packages:package-management:) +  #:use-module ( (gnu services) +                 #:prefix gnu:services:) +  #:use-module ( (gnu services base) +                 #:prefix gnu:services:base:) +  #:use-module ( (gnu services guix) +                 #:prefix gnu:services:guix:) +  #:use-module ( (gnu services ssh) +                 #:prefix gnu:services:ssh:) +  #:use-module ( (gnu system) +                 #:prefix gnu:system:) +  #:use-module ( (gnu system file-systems) +                 #:prefix gnu:system:file-systems:) +  #:use-module ( (gnu system linux-initrd) +                 #:prefix gnu:system:linux-initrd:) +  #:use-module ( (gnu system shadow) +                 #:prefix gnu:system:shadow:) +  #:use-module ( (nongnu packages linux) +                 #:prefix nongnu:packages:linux:) +  #:use-module ( (nongnu system linux-initrd) +                 #:prefix nongnu:system:linux-initrd:) +  #:use-module ( (sovereign channels) +                 #:prefix sovereign:channels:) +  #:use-module ( (sovereign devices) +                 #:prefix sovereign:devices:) +  #:use-module ( (sovereign devices amd64) +                 #:prefix sovereign:devices:amd64:) +  #:use-module ( (sovereign packages protonmail) +                 #:prefix sovereign:packages:protonmail:) +  #:use-module ( (sovereign systems) +                 #:prefix sovereign:systems:) +  #:use-module ( (users id1000) +                 #:prefix users:id1000:)) + +(define system-name +  "cokolwiek") + +(define file-system-efi +  (let* +    ( (l-system-name  (string-upcase  system-name)) +      (l-device       (sovereign:devices:file-system-label  l-system-name))) +    (gnu:system:file-systems:file-system +      (inherit  sovereign:devices:file-system/efi) +      (device   l-device)))) + +(define file-system-root +  (let +    ( (l-device (sovereign:devices:file-system-label  system-name +                                                      "root"))) +    (gnu:system:file-systems:file-system +      (inherit  sovereign:devices:file-system/root) +      (device   l-device)))) + +(define swap +  (let +    ( (l-target (sovereign:devices:file-system-label  system-name +                                                      "swap"))) +    (gnu:system:file-systems:swap-space +      (inherit  sovereign:devices:swap/no-trim) +      (target   l-target)))) + +(define system +  (let* +    ( (l-guix-homes         (list users:id1000:name/home-environment)) +      (l-guix-home-service  (sovereign:systems:guix-home-service  l-guix-homes)) +      (l-bootloader         (sovereign:devices:amd64:custom-bootloader-configuration  system-name)) +      (l-file-systems       (cons*  file-system-root +                                    file-system-efi +                                    gnu:system:file-systems:%base-file-systems)) +      (l-firmware           (list nongnu:packages:linux:linux-firmware)) +      (l-initrd-modules     (cons*  "mei_me" +                                    gnu:system:linux-initrd:%base-initrd-modules)) +      (l-services           (cons*  l-guix-home-service +                                    (gnu:services:service gnu:services:ssh:openssh-service-type) +                                    sovereign:packages:protonmail:nogui-profile +                                    sovereign:systems:%sovereign-services)) +      (l-swap-devices       (list swap)) +      (l-users              (cons*  users:id1000:uid1000-account +                                    gnu:system:shadow:%base-user-accounts))) +    (gnu:system:operating-system +      (kernel             nongnu:packages:linux:linux) +      (bootloader         l-bootloader) +      (label              (sovereign:systems:operating-system-label* system-name +                                                                     (gnu:system:operating-system-default-label gnu:system:this-operating-system))) +      (keyboard-layout    sovereign:devices:pl-keyboard-layout) +      (initrd             nongnu:system:linux-initrd:microcode-initrd) +      (initrd-modules     l-initrd-modules) +      (firmware           l-firmware) +      (host-name          system-name) +      (file-systems       l-file-systems) +      (swap-devices       l-swap-devices) +      (users              l-users) +      (timezone           "Europe/Warsaw") +      (locale             sovereign:systems:pl-locale) +      (locale-definitions sovereign:systems:%sovereign-locale-definitions) +      (services           l-services) +      (sudoers-file       sovereign:systems:%sovereign-sudoers-specification)))) + +(define-public operating-system* +  system) | 
