abraham.scm (3037B)


      1 (define-module (system abraham)
      2   #:use-module (guix gexp)
      3   #:use-module (guix packages)
      4   #:use-module (gnu bootloader)
      5   #:use-module (gnu bootloader grub)
      6   #:use-module (gnu packages admin)
      7   #:use-module (gnu packages linux)
      8   #:use-module (gnu packages wm)
      9   #:use-module (gnu services)
     10   #:use-module (gnu services base)
     11   #:use-module (gnu services desktop)
     12   #:use-module (gnu services guix)
     13   #:use-module (gnu services sddm)
     14   #:use-module (gnu system)
     15   #:use-module (gnu system keyboard)
     16   #:use-module (gnu system linux-initrd)
     17   #:use-module (gnu system nss)
     18   #:use-module (gnu system shadow)
     19   #:use-module (nongnu packages linux)
     20   #:use-module (nongnu system linux-initrd)
     21   #:use-module (mt services)
     22   #:use-module (mt system)
     23   #:use-module (mt packages linux)
     24   #:export (abraham-os))
     25 
     26 (define %issue "
     27 \"Welcome to the thing, formerly (and currently) known as Abraham.\"
     28 ")
     29 
     30 (define abraham-os
     31   (operating-system
     32     (host-name "abraham-os")
     33     (timezone "America/New_York")
     34     (locale "en_US.utf8")
     35    
     36     (issue %issue)
     37 
     38     (keyboard-layout (keyboard-layout "us"))
     39 
     40     (kernel linux-lts)   
     41     (initrd microcode-initrd)
     42     (firmware (list linux-firmware))
     43 
     44     (name-service-switch %mdns-host-lookup-nss)
     45    
     46     (kernel-loadable-modules (list rtl88x2bu-linux-module))
     47     (kernel-arguments
     48       (cons* "modprobe.blacklist=rtw88_8822bu"
     49              %default-kernel-arguments))
     50     
     51     (bootloader (bootloader-configuration
     52                   (bootloader grub-efi-bootloader)
     53                   (targets '("/boot/efi"))
     54                   (keyboard-layout keyboard-layout)))
     55 
     56     (swap-devices %mt-swap-devices)
     57 
     58     (file-systems %mt-file-systems)
     59 
     60     (users
     61       (cons*
     62         (user-account
     63           (name "player")
     64           (comment "Player")
     65           (group "users")
     66           (home-directory "/home/player")
     67           (supplementary-groups '("wheel" "netdev" "audio" "video")))
     68        %base-user-accounts))
     69     
     70     (packages
     71       (append
     72         (list sway)
     73         %mt-base-packages))
     74 
     75     (services
     76       (append
     77         (list
     78          (service greetd-service-type
     79                   (greetd-configuration
     80                    (terminals
     81                     (list
     82                      ;; TTY7 (autologin)
     83                      (greetd-terminal-configuration
     84                       (terminal-switch #t)
     85                       (default-session-user "player")
     86                       (default-session-command
     87                        (file-append sway "/bin/sway")))
     88                      ;; TTY1-6
     89                      (greetd-terminal-configuration (terminal-vt "1"))
     90                      (greetd-terminal-configuration (terminal-vt "2"))
     91                      (greetd-terminal-configuration (terminal-vt "3"))
     92                      (greetd-terminal-configuration (terminal-vt "4"))
     93                      (greetd-terminal-configuration (terminal-vt "5"))
     94                      (greetd-terminal-configuration (terminal-vt "6")))))))
     95         %mt-laity-services
     96         %mt-desktop-services))))
     97 
     98 abraham-os