diff options
Diffstat (limited to 'modules/ryan-config/base-system.scm')
-rw-r--r-- | modules/ryan-config/base-system.scm | 225 |
1 files changed, 116 insertions, 109 deletions
diff --git a/modules/ryan-config/base-system.scm b/modules/ryan-config/base-system.scm index cdb28fd..0c22182 100644 --- a/modules/ryan-config/base-system.scm +++ b/modules/ryan-config/base-system.scm | |||
@@ -82,117 +82,124 @@ | |||
82 | "RUN+=\"/run/current-system/profile/bin/chmod g+w /sys/class/backlight/%k/brightness\""))) | 82 | "RUN+=\"/run/current-system/profile/bin/chmod g+w /sys/class/backlight/%k/brightness\""))) |
83 | 83 | ||
84 | (define-public base-operating-system | 84 | (define-public base-operating-system |
85 | (operating-system | 85 | (operating-system |
86 | (kernel linux) | 86 | (kernel linux) |
87 | (firmware (list linux-firmware)) | 87 | (firmware (list linux-firmware)) |
88 | (locale "en_US.utf8") | 88 | (locale "en_US.utf8") |
89 | (timezone "America/New_York") | 89 | (timezone "America/New_York") |
90 | (keyboard-layout (keyboard-layout "us")) | 90 | (keyboard-layout (keyboard-layout "us")) |
91 | (host-name "ThisWillChange") | 91 | (host-name "ThisWillChange") |
92 | 92 | ||
93 | ;; The list of user accounts ('root' is implicit). | 93 | ;; The list of user accounts ('root' is implicit). |
94 | (users (cons* (user-account | 94 | (users (cons* (user-account |
95 | (name "ryan") | 95 | (name "ryan") |
96 | (comment "Ryan") | 96 | (comment "Ryan") |
97 | (group "users") | 97 | (group "users") |
98 | ;(shell (file-append zsh "/bin/zsh")) | 98 | ;(shell (file-append zsh "/bin/zsh")) |
99 | (home-directory "/home/ryan") | 99 | (home-directory "/home/ryan") |
100 | (supplementary-groups '("wheel" "netdev" "audio" "video" "lp" "plugdev" "docker" "libvirt" "kvm"))) | 100 | (supplementary-groups '("wheel" "netdev" "audio" "video" "lp" "plugdev" "docker" "libvirt" "kvm"))) |
101 | %base-user-accounts)) | 101 | %base-user-accounts)) |
102 | 102 | ||
103 | ;; Packages installed system-wide. Users can also install packages | 103 | ;; Packages installed system-wide. Users can also install packages |
104 | ;; under their own account: use 'guix search KEYWORD' to search | 104 | ;; under their own account: use 'guix search KEYWORD' to search |
105 | ;; for packages and 'guix install PACKAGE' to install a package. | 105 | ;; for packages and 'guix install PACKAGE' to install a package. |
106 | (packages (append (map specification->package (list "sway" | 106 | (packages (append (map specification->package (list "sway" |
107 | "swaybg" | 107 | "swaybg" |
108 | "swayidle" | 108 | "swayidle" |
109 | ;"swaylock-effects" | 109 | ;"swaylock-effects" |
110 | "fuzzel" | 110 | "fuzzel" |
111 | "alacritty" | 111 | "alacritty" |
112 | "pinentry-qt" | 112 | "pinentry-qt" |
113 | "adwaita-icon-theme" | 113 | "adwaita-icon-theme" |
114 | "hicolor-icon-theme" | 114 | "hicolor-icon-theme" |
115 | "git" | 115 | "git" |
116 | "nss-certs" | 116 | "nss-certs" |
117 | "waybar" | 117 | "waybar" |
118 | "gnupg" | 118 | "gnupg" |
119 | "light" | 119 | "light" |
120 | "mako" | 120 | "mako" |
121 | "grim" | 121 | "grim" |
122 | "slurp" | 122 | "slurp" |
123 | "wl-clipboard" | 123 | "wl-clipboard" |
124 | "bluez" | 124 | "bluez" |
125 | "blueman" | 125 | "blueman" |
126 | "ldacbt" | 126 | "ldacbt" |
127 | "libfreeaptx" | 127 | "libfreeaptx" |
128 | "libfdk" | 128 | "libfdk" |
129 | "opendoas" | 129 | "opendoas" |
130 | ;"xdg-desktop-portal-wlr" | 130 | ;"xdg-desktop-portal-wlr" |
131 | "xdg-desktop-portal" | 131 | "xdg-desktop-portal" |
132 | "pipewire" | 132 | "pipewire" |
133 | "docker" | 133 | "docker" |
134 | "libvirt" | 134 | "libvirt" |
135 | "virt-manager" | 135 | "virt-manager" |
136 | "wireplumber" | 136 | "wireplumber" |
137 | "zsh")) | 137 | "zsh")) |
138 | (list my-ca-certs xdg-desktop-portal-wlr-new swaylock-effects-new) | 138 | (list my-ca-certs xdg-desktop-portal-wlr-new swaylock-effects-new) |
139 | %my-base-packages )) | 139 | %my-base-packages )) |
140 | 140 | ||
141 | ;; Below is the list of system services. To search for available | 141 | ;; Below is the list of system services. To search for available |
142 | ;; services, run 'guix system search KEYWORD' in a terminal. | 142 | ;; services, run 'guix system search KEYWORD' in a terminal. |
143 | (services | 143 | (services |
144 | (append (list | 144 | (append (list |
145 | 145 | ||
146 | ;; To configure OpenSSH, pass an 'openssh-configuration' | 146 | ;; To configure OpenSSH, pass an 'openssh-configuration' |
147 | ;; record as a second argument to 'service' below. | 147 | ;; record as a second argument to 'service' below. |
148 | (service openssh-service-type) | 148 | (service openssh-service-type) |
149 | (service pcscd-service-type) | 149 | (service pcscd-service-type) |
150 | (service docker-service-type) | 150 | (service docker-service-type) |
151 | (service nix-service-type) | 151 | (service nix-service-type) |
152 | (service libvirt-service-type | 152 | (service libvirt-service-type |
153 | (libvirt-configuration | 153 | (libvirt-configuration |
154 | (unix-sock-group "libvirt"))) | 154 | (unix-sock-group "libvirt"))) |
155 | (service bluetooth-service-type) | 155 | (service bluetooth-service-type) |
156 | (udev-rules-service 'fido2 libfido2 #:groups '("plugdev"))) | 156 | (udev-rules-service 'fido2 libfido2 #:groups '("plugdev"))) |
157 | 157 | ||
158 | ;; This is the default list of services we | 158 | ;; This is the default list of services we |
159 | ;; are appending to. | 159 | ;; are appending to. |
160 | (modify-services %desktop-services | 160 | (modify-services %desktop-services |
161 | (guix-service-type config => | 161 | (guix-service-type config => |
162 | (guix-configuration | 162 | (guix-configuration |
163 | (inherit config) | 163 | (inherit config) |
164 | (substitute-urls | 164 | (substitute-urls |
165 | (append (list "https://substitutes.nonguix.org") | 165 | (append (list "https://substitutes.nonguix.org") |
166 | %default-substitute-urls)) | 166 | %default-substitute-urls)) |
167 | (authorized-keys | 167 | (authorized-keys |
168 | (cons* (plain-file "non-guix.pub" | 168 | (cons* (plain-file "non-guix.pub" |
169 | "(public-key | 169 | "(public-key |
170 | (ecc | 170 | (ecc |
171 | (curve Ed25519) | 171 | (curve Ed25519) |
172 | (q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#) | 172 | (q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#) |
173 | ) | 173 | ) |
174 | )" ) %default-authorized-guix-keys)))) | 174 | )" ) %default-authorized-guix-keys)))) |
175 | (udev-service-type config => | 175 | (udev-service-type config => |
176 | (udev-configuration | 176 | (udev-configuration |
177 | (inherit config) | 177 | (inherit config) |
178 | (rules (cons %backlight-udev-rule | 178 | (rules (cons %backlight-udev-rule |
179 | (udev-configuration-rules config))))) | 179 | (udev-configuration-rules config))))) |
180 | (delete pulseaudio-service-type) | 180 | (delete pulseaudio-service-type) |
181 | (delete gdm-service-type) | 181 | (delete gdm-service-type) |
182 | (delete xorg-server-service-type) | 182 | (delete xorg-server-service-type) |
183 | (delete alsa-service-type) ))) | 183 | (delete alsa-service-type) ))) |
184 | (setuid-programs | 184 | (setuid-programs |
185 | (append (list (file-like->setuid-program | 185 | (append (list (file-like->setuid-program |
186 | (file-append | 186 | (file-append |
187 | ;(specification->package "swaylock-effects") | 187 | ;(specification->package "swaylock-effects") |
188 | swaylock-effects-new | 188 | swaylock-effects-new |
189 | "/bin/swaylock")) | 189 | "/bin/swaylock")) |
190 | (file-like->setuid-program | 190 | (file-like->setuid-program |
191 | (file-append | 191 | (file-append |
192 | (specification->package "opendoas") | 192 | (specification->package "opendoas") |
193 | "/bin/doas"))) | 193 | "/bin/doas"))) |
194 | (delete sudo %setuid-programs))) | 194 | (delete sudo %setuid-programs))) |
195 | (bootloader (bootloader-configuration | 195 | (file-systems (cons* |
196 | (bootloader grub-efi-bootloader) | 196 | (file-system |
197 | (targets (list "/boot/efi")) | 197 | (mount-point "/tmp") |
198 | (keyboard-layout keyboard-layout))))))))) | 198 | (device "none") |
199 | (type "tmpfs") | ||
200 | (check? #f)) | ||
201 | %base-file-systems)) | ||
202 | (bootloader (bootloader-configuration | ||
203 | (bootloader grub-efi-bootloader) | ||
204 | (targets (list "/boot/efi")) | ||
205 | (keyboard-layout keyboard-layout))))) \ No newline at end of file | ||