guix0

View on GitHub Gist

(use-modules (gnu))
(use-service-modules cups desktop networking ssh xorg)

(operating-system
  (locale "ru_RU.utf8")
  (timezone "Europe/Chisinau")
  (keyboard-layout (keyboard-layout "ru,us" #:options '("grp:alt_shift_toggle")))
  (host-name "quasar")
  (users (cons* (user-account
                  (name "domini")
                  (comment "Domini Montessori")
                  (group "users")
                  (home-directory "/home/domini")
                  (supplementary-groups '("wheel" "netdev" "audio" "video")))
                %base-user-accounts))

  (packages (append (list (specification->package "openbox")
                          (specification->package "awesome")
                          (specification->package "i3-wm")
                          (specification->package "i3status")
                          (specification->package "dmenu")
                          (specification->package "st")
                          (specification->package "ratpoison")
                          (specification->package "xterm")
                          (specification->package "emacs")
                          (specification->package "emacs-exwm")
                          (specification->package
                           "emacs-desktop-environment")
                          (specification->package "nss-certs"))
                    %base-packages))

  (services
   (append (list (service gnome-desktop-service-type)
                 (service xfce-desktop-service-type)
                 (service mate-desktop-service-type)
                 (service enlightenment-desktop-service-type)

                 ;; To configure OpenSSH, pass an 'openssh-configuration'
                 ;; record as a second argument to 'service' below.
                 (service openssh-service-type)
                 (service tor-service-type)
                 (service cups-service-type)
                 (set-xorg-configuration
                  (xorg-configuration (keyboard-layout keyboard-layout))))

           %desktop-services))

  (bootloader (bootloader-configuration
                (bootloader grub-efi-bootloader)
                (targets (list "/boot/efi"))
                (keyboard-layout keyboard-layout)))

  (swap-devices (list (swap-space
                        (target (uuid
                                 "3f6e87f7-a8c8-460f-a3db-14ed192c5503")))
                      (swap-space
                        (target (uuid
                                 "ce30c55d-6ae4-402b-aed1-ca2c8ff63fcd")))
                      (swap-space
                        (target (uuid
                                 "0aa2d1fb-09fd-4e82-aceb-4e917e6e2b99")))
                      (swap-space
                        (target (uuid
                                 "91533f62-b7e3-46a4-ba5e-0d49a6ea4c43")))
                      (swap-space
                        (target (uuid
                                 "a365da0a-fd73-4121-8f68-d7ef4dc435b4")))
                      (swap-space
                        (target (uuid
                                 "d6f28840-c273-43da-ad7e-f20e65dd7450")))))

  (file-systems (cons* (file-system
                         (mount-point "/")
                         (device "/dev/nvme0n1p6:/dev/nvme1n1p6:/dev/nvme2n1p6:/dev/nvme3n1p6:/dev/nvme4n1p6:/dev/nvme5n1p6:/dev/sda6:/dev/sdb6:/dev/sdc6:/dev/sdd6")
                         (type "bcachefs")
                         (options "X-mount.subdir=Guix")
                         (mount-may-fail? #t) ; TODO temporary hack, otherwise the Guix boot process can be blocked in case of errors on some device
                         )
                       (file-system
                         (mount-point "/boot/efi")
                         (device "/dev/nvme1n1p2")
                         (type "vfat")) %base-file-systems)
                      (file-system
		                 (mount-point "/tmp")
		                 (device "none")
		                 (type "tmpfs")
		                 (check? #f))
  )
)