summaryrefslogtreecommitdiffstats
path: root/guix/jd
diff options
context:
space:
mode:
Diffstat (limited to 'guix/jd')
-rw-r--r--guix/jd/desktops/base.scm55
-rwxr-xr-xguix/jd/desktops/berserker.scm36
-rw-r--r--guix/jd/home/services/desktop.scm20
-rw-r--r--guix/jd/packages/linux.scm51
4 files changed, 119 insertions, 43 deletions
diff --git a/guix/jd/desktops/base.scm b/guix/jd/desktops/base.scm
index c613c26..079d57e 100644
--- a/guix/jd/desktops/base.scm
+++ b/guix/jd/desktops/base.scm
@@ -18,7 +18,7 @@
18 #:use-module (nongnu system linux-initrd)) 18 #:use-module (nongnu system linux-initrd))
19 19
20(use-package-modules wm gnome networking virtualization 20(use-package-modules wm gnome networking virtualization
21 lisp lisp-xyz cups fonts gnupg) 21 lisp lisp-xyz cups fonts gnupg android)
22 22
23(use-service-modules cups desktop networking ssh xorg 23(use-service-modules cups desktop networking ssh xorg
24 docker virtualization pm sound dbus 24 docker virtualization pm sound dbus
@@ -68,6 +68,7 @@
68 "audio" ;; control audio devices 68 "audio" ;; control audio devices
69 "video" ;; access to webcam 69 "video" ;; access to webcam
70 "dialout" ;; access to /dev/ttyUSBX devices 70 "dialout" ;; access to /dev/ttyUSBX devices
71 "adbusers"
71 )))) 72 ))))
72 73
73(define-public %jd-base-user-accounts 74(define-public %jd-base-user-accounts
@@ -147,7 +148,7 @@
147 (map (lambda (tty) 148 (map (lambda (tty)
148 (cons tty (file-append 149 (cons tty (file-append
149 font-terminus 150 font-terminus
150 "/share/consolefonts/ter-112n"))) 151 "/share/consolefonts/ter-122n.psf.gz")))
151 '("tty1" "tty2" "tty3" "tty4" "tty5" "tty6"))) 152 '("tty1" "tty2" "tty3" "tty4" "tty5" "tty6")))
152 153
153 (service screen-locker-service-type 154 (service screen-locker-service-type
@@ -167,6 +168,7 @@
167 (bluetooth-configuration 168 (bluetooth-configuration
168 (auto-enable? #t))) 169 (auto-enable? #t)))
169 170
171 (service containerd-service-type)
170 (service docker-service-type) 172 (service docker-service-type)
171 (service libvirt-service-type 173 (service libvirt-service-type
172 (libvirt-configuration 174 (libvirt-configuration
@@ -188,29 +190,38 @@
188 (service nix-service-type) 190 (service nix-service-type)
189 191
190 polkit-network-manager-service 192 polkit-network-manager-service
193
194 (udev-rules-service 'android android-udev-rules
195 #:groups '("adbusers"))
196
197 (udev-rules-service 'microbit (udev-rule
198 "69-microbit.rules"
199 (string-append "ACTION!=\"add|change\", GOTO=\"microbit_rules_end\""
200 "SUBSYSTEM==\"usb\", ATTR{idVendor}==\"0d28\", ATTR{idProduct}==\"0204\", TAG+=\"uaccess\""
201 "LABEL=\"microbit_rules_end\"")))
191 202
192 ;; %desktop-services 203 ;; %desktop-services
193 (modify-services %desktop-services 204 (modify-services %desktop-services
194 (guix-service-type config => (guix-configuration 205 (guix-service-type config => (guix-configuration
195 (inherit config) 206 (inherit config)
196 (substitute-urls 207 (substitute-urls
197 (append (list "https://substitutes.nonguix.org") 208 (append (list "https://substitutes.nonguix.org")
198 %default-substitute-urls)) 209 %default-substitute-urls))
199 (authorized-keys 210 (authorized-keys
200 (append (list (plain-file "non-guix.pub" 211 (append (list (plain-file "non-guix.pub"
201 "(public-key (ecc (curve Ed25519) (q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#)))")) 212 "(public-key (ecc (curve Ed25519) (q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#)))"))
202 %default-authorized-guix-keys)))) 213 %default-authorized-guix-keys))))
203 (delete network-manager-service-type) 214 (delete network-manager-service-type)
204 ;; (delete mingetty-service-type) 215 ;; (delete mingetty-service-type)
205 (delete console-font-service-type) 216 (delete console-font-service-type)
206 217
207 (delete pulseaudio-service-type) 218 (delete pulseaudio-service-type)
208 (delete alsa-service-type) 219 (delete alsa-service-type)
209 (delete (if (string-prefix? "x86_64" 220 (delete (if (string-prefix? "x86_64"
210 (or (%current-target-system) 221 (or (%current-target-system)
211 (%current-system))) 222 (%current-system)))
212 gdm-service-type 223 gdm-service-type
213 sddm-service-type))))) 224 sddm-service-type)))))
214 225
215;; Odin is a base for my operating systems 226;; Odin is a base for my operating systems
216(define-public odin-free 227(define-public odin-free
diff --git a/guix/jd/desktops/berserker.scm b/guix/jd/desktops/berserker.scm
index ed673db..37e7adc 100755
--- a/guix/jd/desktops/berserker.scm
+++ b/guix/jd/desktops/berserker.scm
@@ -1,5 +1,6 @@
1(define-module (jd desktops berserker) 1(define-module (jd desktops berserker)
2 #:use-module (jd desktops base) 2 #:use-module (jd desktops base)
3 #:use-module (jd packages linux)
3 #:use-module (gnu) 4 #:use-module (gnu)
4 #:use-module (gnu home)) 5 #:use-module (gnu home))
5 6
@@ -10,30 +11,35 @@
10(define system 11(define system
11 (operating-system 12 (operating-system
12 (inherit odin-non-free) 13 (inherit odin-non-free)
14 (kernel-loadable-modules (list xmm7360-pci))
13 (host-name "berserker") 15 (host-name "berserker")
14 16
15 (bootloader (bootloader-configuration 17
18 (bootloader (bootloader-configuration
16 (bootloader grub-efi-bootloader) 19 (bootloader grub-efi-bootloader)
17 (targets (list "/boot/efi")))) 20 (targets (list "/boot/efi"))))
21 (mapped-devices (list (mapped-device
22 (source (uuid
23 "1f2b1bf2-89fe-4e2c-8b40-c460572bb776"))
24 (target "crypthome")
25 (type luks-device-mapping))))
18 26
19 (swap-devices (list (swap-space 27 (file-systems (cons* (file-system
20 (target (uuid
21 "70ee2477-66ff-4856-aebf-8a77053c4462")))))
22
23 (file-systems (cons* (file-system
24 (mount-point "/boot/efi")
25 (device (uuid "BE9B-69F0"
26 'fat32))
27 (type "vfat"))
28
29 (file-system
30 (mount-point "/") 28 (mount-point "/")
31 (device (uuid 29 (device (uuid
32 "d8783299-c180-4ca3-9c56-9826797f928d" 30 "66396ba1-bda9-46bd-ab26-5edc46b437d6"
33 'ext4)) 31 'ext4))
34 (type "ext4")) 32 (type "ext4"))
35 33 (file-system
36 %base-file-systems)))) 34 (mount-point "/boot/efi")
35 (device (uuid "482A-B117"
36 'fat32))
37 (type "vfat"))
38 (file-system
39 (mount-point "/home")
40 (device "/dev/mapper/crypthome")
41 (type "ext4")
42 (dependencies mapped-devices)) %base-file-systems))))
37 43
38 44
39(if (getenv "JD_HOME") home system) 45(if (getenv "JD_HOME") home system)
diff --git a/guix/jd/home/services/desktop.scm b/guix/jd/home/services/desktop.scm
index ec3a53a..32c8059 100644
--- a/guix/jd/home/services/desktop.scm
+++ b/guix/jd/home/services/desktop.scm
@@ -20,10 +20,11 @@
20(define (desktop-profile-service config) 20(define (desktop-profile-service config)
21 (append 21 (append
22 (list font-terminus-ttf) 22 (list font-terminus-ttf)
23 (specifications->packages '( ;; sway 23 (specifications->packages '("sway"
24 "swayfx" 24 ;; "swayfx"
25 "swaylock" 25 "swaylock"
26 "swayidle" 26 "swayidle"
27 "swaynotificationcenter"
27 "waybar" 28 "waybar"
28 "fuzzel" 29 "fuzzel"
29 "foot" 30 "foot"
@@ -31,6 +32,7 @@
31 "wl-clipboard" 32 "wl-clipboard"
32 "wlsunset" 33 "wlsunset"
33 "grimshot" 34 "grimshot"
35 "swappy"
34 36
35 "udiskie" 37 "udiskie"
36 ;; rest 38 ;; rest
@@ -54,6 +56,8 @@
54 56
55 "blueman" 57 "blueman"
56 58
59 "nomacs"
60
57 "xdg-utils" 61 "xdg-utils"
58 "xdg-dbus-proxy" 62 "xdg-dbus-proxy"
59 "xdg-desktop-portal-gtk" 63 "xdg-desktop-portal-gtk"
@@ -68,8 +72,8 @@
68 72
69 "dunst" 73 "dunst"
70 74
71 "gimp" 75 ; "gimp"
72 "inkscape" 76 ; "inkscape"
73 77
74 "mpv" 78 "mpv"
75 "youtube-dl" 79 "youtube-dl"
@@ -107,7 +111,11 @@
107 "rlwrap" 111 "rlwrap"
108 112
109 "nheko" 113 "nheko"
110 "quassel")))) 114 "quassel"
115 "inkscape"
116 "gimp"
117 "libreoffice"
118 "steam"))))
111 119
112(define (desktop-environment-variables-service config) 120(define (desktop-environment-variables-service config)
113 `(("GTK_THEME" . "Adwaita:dark") 121 `(("GTK_THEME" . "Adwaita:dark")
@@ -126,7 +134,7 @@
126 ("CLUTTER_BACKEND" . "wayland") 134 ("CLUTTER_BACKEND" . "wayland")
127 ("ELM_ENGINE" . "wayland_egl") 135 ("ELM_ENGINE" . "wayland_egl")
128 ("ECORE_EVAS_ENGINE" . "wayland-egl") 136 ("ECORE_EVAS_ENGINE" . "wayland-egl")
129 ("QT_QPA_PLATFORM" . "wayland-egl"))) 137 ("QT_QPA_PLATFORM" . "wayland-egl"))) ;; QT_QPA_PLATFORM=xcb
130 138
131(define (desktop-xdg-mime-applications-service config) 139(define (desktop-xdg-mime-applications-service config)
132 (home-xdg-mime-applications-configuration 140 (home-xdg-mime-applications-configuration
diff --git a/guix/jd/packages/linux.scm b/guix/jd/packages/linux.scm
new file mode 100644
index 0000000..94549c3
--- /dev/null
+++ b/guix/jd/packages/linux.scm
@@ -0,0 +1,51 @@
1(define-module (jd packages linux)
2 #:use-module (guix packages)
3 #:use-module (guix download)
4 #:use-module (guix build-system linux-module)
5 #:use-module (guix git-download)
6 #:use-module (guix gexp)
7 #:use-module (gnu packages linux)
8 #:use-module (gnu packages pciutils)
9 #:use-module (gnu packages pkg-config)
10 #:use-module (gnu packages autotools)
11 #:use-module ((guix licenses) #:prefix license:))
12
13(define-public xmm7360-pci
14 (package
15 (name "xmm7360-pci")
16 (version "0.1.0")
17 (source
18 (origin
19 (method git-fetch)
20 (uri (git-reference
21 (url "https://github.com/xmm7360/xmm7360-pci.git")
22 (commit "a8ff2c6ceee84cbe74df8a78cfaa5a016d362ed4")))
23 (file-name (git-file-name name version))
24 (sha256
25 (base32
26 "1aals95hk76rgd21rknqc9qfjva6g6gwicw6wz19m20bn08bs2f3"))))
27 (build-system linux-module-build-system)
28 (arguments
29 (list
30 #:tests? #f
31 #:phases
32 #~(modify-phases %standard-phases
33 (add-after 'unpack 'patch-makefile
34 (lambda _
35 (substitute* (find-files
36 "." "^Makefile(\\.include)?$")
37 (("^ccflags-y := .*$")
38 "ccflags-y := -Wno-multichar -Wno-incompatible-pointer-types")))))))
39 (native-inputs
40 `(("pkg-config" ,pkg-config)
41 ("autoconf" ,autoconf)
42 ("automake" ,automake)))
43 (inputs
44 `(("kernel" ,linux-libre)
45 ("pciutils" ,pciutils)))
46 (synopsis "Kernel module for Intel XMM7360 LTE modem")
47 (description
48 "This package provides a kernel module for the Intel XMM7360 LTE modem, allowing it to function in Linux.")
49 (home-page "https://github.com/xmm7360/xmm7360-pci")
50 (license license:gpl3+)))
51