diff options
Diffstat (limited to 'guix')
| -rw-r--r-- | guix/jd/desktops/base.scm | 55 | ||||
| -rwxr-xr-x | guix/jd/desktops/berserker.scm | 36 | ||||
| -rw-r--r-- | guix/jd/home/services/desktop.scm | 20 | ||||
| -rw-r--r-- | guix/jd/packages/linux.scm | 51 |
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 | |||
