summaryrefslogtreecommitdiffstats
path: root/guix/jd/desktops
diff options
context:
space:
mode:
Diffstat (limited to 'guix/jd/desktops')
-rw-r--r--guix/jd/desktops/base.scm249
-rwxr-xr-xguix/jd/desktops/berserker.scm17
-rw-r--r--guix/jd/desktops/mimir.scm14
3 files changed, 0 insertions, 280 deletions
diff --git a/guix/jd/desktops/base.scm b/guix/jd/desktops/base.scm
deleted file mode 100644
index 748e11d..0000000
--- a/guix/jd/desktops/base.scm
+++ /dev/null
@@ -1,249 +0,0 @@
1(define-module (jd desktops base)
2 #:use-module (jd home services polkit)
3 #:use-module (jd home services desktop)
4 #:use-module (jd home services emacs)
5 #:use-module (jd services polkit)
6
7 #:use-module (gnu)
8 #:use-module (gnu home)
9 #:use-module (gnu home services)
10 #:use-module (gnu home services desktop)
11 #:use-module (gnu home services gnupg)
12 #:use-module (gnu home services xdg)
13 #:use-module (gnu home services sound)
14 #:use-module (gnu home services ssh)
15 #:use-module (gnu services)
16 #:use-module (guix packages)
17
18 #:use-module (nongnu packages linux)
19 #:use-module (nongnu system linux-initrd))
20
21(use-package-modules wm gnome networking virtualization
22 lisp lisp-xyz cups fonts gnupg android)
23
24(use-service-modules cups desktop networking ssh xorg
25 docker virtualization pm sound dbus
26 nix sddm guix)
27
28(define-public %jd-base-home-services
29 (list
30 ;; (service home-redshift-service-type
31 ;; (home-redshift-configuration
32 ;; (location-provider 'manual)
33 ;; (latitude 51.919438)
34 ;; (longitude 19.145136)))
35 ;; Poland
36
37 (service home-dbus-service-type)
38 (service home-emacs-service-type)
39 (service home-desktop-service-type)
40
41 (service home-openssh-service-type
42 (home-openssh-configuration
43 (hosts
44 (list (openssh-host (name "gammu")
45 (host-name "172.16.1.102")
46 (user "serwis")
47 (host-key-algorithms '("+ssh-rsa")))
48 (openssh-host (name "net47")
49 (host-name "net47.abaks.pl")
50 (user "serwis")
51 (port 22001))))))
52
53 ;; Dont know why, but when i put home-gpg-agent-service-type as an
54 ;; extension in home-desktop-service-type service it doesn't work.
55 (service home-gpg-agent-service-type
56 (home-gpg-agent-configuration
57 (pinentry-program
58 (file-append pinentry-gnome3 "/bin/pinentry-gnome3"))
59 (ssh-support? #t)
60 (default-cache-ttl 28800)
61 (max-cache-ttl 28800)
62 (default-cache-ttl-ssh 28800)
63 (max-cache-ttl-ssh 28800)))
64 ;; (service home-polkit-gnome-service-type)
65 ))
66
67
68(define-public %jakub-user
69 (user-account
70 (name "jakub")
71 (comment "Jakub Dlugosz")
72 (group "users")
73 (home-directory "/home/jakub")
74 (supplementary-groups '("wheel" ;; sudo
75 "netdev" ;; network devices
76 "kvm"
77 "libvirt"
78 "tty"
79 "input"
80 "docker"
81 "audio" ;; control audio devices
82 "video" ;; access to webcam
83 "dialout" ;; access to /dev/ttyUSBX devices
84 "adbusers"
85 ))))
86
87(define-public %jd-base-user-accounts
88 (cons*
89 %jakub-user
90 %base-user-accounts))
91
92(define-public %stumpwm-packages
93 (list sbcl
94 sbcl-dbus
95 stumpwm+slynk
96
97 sbcl-stumpwm-screenshot
98 sbcl-stumpwm-pamixer
99 sbcl-stumpwm-pass
100
101 sbcl-stumpwm-cpu
102 sbcl-stumpwm-mem
103 sbcl-stumpwm-net
104 sbcl-stumpwm-battery-portable
105 sbcl-stumpwm-stumptray
106
107 sbcl-stumpwm-ttf-fonts
108
109 sbcl-drakma
110 sbcl-yason
111
112 (list stumpwm "lib")))
113
114(define-public %root-packages
115 (specifications->packages '("emacs"
116 "emacs-exwm"
117 "stow"
118 "bluez"
119 "bluez-alsa"
120 "exfat-utils"
121 "git"
122 "xf86-input-libinput"
123 "intel-vaapi-driver"
124 "libva-utils" ;; vainfo
125 ;; "nss-certs" -- it is in %base-packages from fdfd7667c66cf9ce746330f39bcd366e124460e1
126 "nix")))
127
128(define-public %jd-base-packages
129 (append %root-packages
130 ;; %stumpwm-packages
131 %base-packages))
132
133(define-public %jd-base-services
134 (cons*
135 (service guix-home-service-type
136 `(("jakub" ,(home-environment
137 (services %jd-base-home-services)))))
138
139 (service openssh-service-type)
140
141 (service console-font-service-type
142 (map (lambda (tty)
143 (cons tty (file-append
144 font-terminus
145 "/share/consolefonts/ter-122n.psf.gz")))
146 '("tty1" "tty2" "tty3" "tty4" "tty5" "tty6")))
147
148 (service screen-locker-service-type
149 (screen-locker-configuration
150 (name "swaylock")
151 (program (file-append swaylock "/bin/swaylock"))
152 (using-pam? #t)
153 (using-setuid? #f)))
154
155 (service network-manager-service-type
156 (network-manager-configuration
157 (vpn-plugins (list network-manager-openvpn))))
158
159 (simple-service 'dbus-packages dbus-root-service-type (list blueman
160 virt-manager))
161 (service bluetooth-service-type
162 (bluetooth-configuration
163 (auto-enable? #t)))
164
165 (service containerd-service-type)
166 (service docker-service-type)
167 (service libvirt-service-type
168 (libvirt-configuration
169 (unix-sock-group "libvirt")))
170 (service virtlog-service-type)
171
172 (service cups-service-type
173 (cups-configuration
174 (web-interface? #t)
175 (extensions
176 (list cups-filters))))
177
178 (service thermald-service-type)
179 (service tlp-service-type
180 (tlp-configuration
181 (cpu-boost-on-ac? #t)
182 (wifi-pwr-on-bat? #t)))
183
184 (service nix-service-type)
185
186 polkit-network-manager-service
187
188 (udev-rules-service 'android android-udev-rules
189 #:groups '("adbusers"))
190
191 (udev-rules-service 'microbit (udev-rule
192 "69-microbit.rules"
193 (string-append "ACTION!=\"add|change\", GOTO=\"microbit_rules_end\""
194 "SUBSYSTEM==\"usb\", ATTR{idVendor}==\"0d28\", ATTR{idProduct}==\"0204\", TAG+=\"uaccess\""
195 "LABEL=\"microbit_rules_end\"")))
196
197 ;; %desktop-services
198 (modify-services %desktop-services
199 (guix-service-type config => (guix-configuration
200 (inherit config)
201 (substitute-urls
202 (append (list "https://substitutes.nonguix.org")
203 %default-substitute-urls))
204 (authorized-keys
205 (append (list (plain-file "non-guix.pub"
206 "(public-key (ecc (curve Ed25519) (q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#)))"))
207 %default-authorized-guix-keys))))
208 (delete network-manager-service-type)
209 ;; (delete mingetty-service-type)
210 (delete console-font-service-type)
211
212 (delete pulseaudio-service-type)
213 (delete alsa-service-type)
214 (delete (if (string-prefix? "x86_64"
215 (or (%current-target-system)
216 (%current-system)))
217 gdm-service-type
218 sddm-service-type)))))
219
220;; Odin is a base for my operating systems
221(define-public odin-free
222 (operating-system
223 (locale "en_US.utf8")
224 (timezone "Europe/Warsaw")
225 (keyboard-layout (keyboard-layout "pl"))
226 (host-name "odin")
227
228 (users %jd-base-user-accounts)
229 (packages %jd-base-packages)
230 (services %jd-base-services)
231
232 (bootloader (bootloader-configuration
233 (bootloader grub-bootloader)
234 (targets (list "/boot/efi"))
235 (keyboard-layout keyboard-layout)))
236
237 (file-systems (cons* (file-system
238 (mount-point "/tmp")
239 (device "none")
240 (type "tmpfs")
241 (check? #f))
242 %base-file-systems))))
243
244(define-public odin-non-free
245 (operating-system
246 (inherit odin-free)
247 (kernel linux)
248 (initrd microcode-initrd)
249 (firmware (list linux-firmware))))
diff --git a/guix/jd/desktops/berserker.scm b/guix/jd/desktops/berserker.scm
deleted file mode 100755
index 3d6b0df..0000000
--- a/guix/jd/desktops/berserker.scm
+++ /dev/null
@@ -1,17 +0,0 @@
1(define-module (jd desktops berserker)
2 #:use-module (jd desktops base)
3 #:use-module (jd packages linux)
4 #:use-module (jd utils)
5 #:use-module (gnu)
6 #:use-module (gnu home))
7
8(define-public home
9 (home-environment
10 (services %jd-base-home-services)))
11
12(define-public system
13 (operating-system
14 (inherit odin-non-free)
15 (kernel-loadable-modules (list xmm7360-pci))
16 (host-name "berserker")))
17
diff --git a/guix/jd/desktops/mimir.scm b/guix/jd/desktops/mimir.scm
deleted file mode 100644
index e5db0b7..0000000
--- a/guix/jd/desktops/mimir.scm
+++ /dev/null
@@ -1,14 +0,0 @@
1(define-module (jd desktops mimir)
2 #:use-module (jd desktops base)
3 #:use-module (gnu)
4 #:use-module (gnu home))
5
6(define-public home
7 (home-environment
8 (services %jd-base-home-services)))
9
10(define-public system
11 (operating-system
12 (inherit odin-non-free)
13 (host-name "mimir")))
14