summaryrefslogtreecommitdiff
path: root/systems
diff options
context:
space:
mode:
authorMarek Paśnikowski <marek@marekpasnikowski.pl>2024-07-31 11:41:56 +0200
committerMarek Paśnikowski <marek@marekpasnikowski.pl>2024-07-31 11:41:56 +0200
commit5172ed1b3c6cd07364e103b524f4ea6983b71b96 (patch)
tree874cee3472a3b6679816bcd341ba0ea41398edc9 /systems
parent1771bd6269a01f8a6b5375f51bd1e227cde947e8 (diff)
feat(deployment): install Guix to a next machine
Diffstat (limited to 'systems')
-rw-r--r--systems/aisaka.scm64
1 files changed, 64 insertions, 0 deletions
diff --git a/systems/aisaka.scm b/systems/aisaka.scm
new file mode 100644
index 0000000..5b1efa8
--- /dev/null
+++ b/systems/aisaka.scm
@@ -0,0 +1,64 @@
+(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))
+
+;; string
+(define host-name*
+ "aisaka")
+
+;; (record user-account)
+(define users*
+ (let* ((system-groups (list "wheel"))
+
+ (supplementary-groups* (append hardware-groups
+ system-groups)))
+ (list (uid1000-account supplementary-groups*))))
+
+;; record operating-system
+(define-public operating-system*
+ (let* ((home-environments `((,uid1000-name ,(uid1000-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*