summaryrefslogtreecommitdiffstats
path: root/guix
diff options
context:
space:
mode:
Diffstat (limited to 'guix')
-rw-r--r--guix/jd/desktops/base.scm249
-rwxr-xr-xguix/jd/desktops/berserker.scm17
-rw-r--r--guix/jd/desktops/mimir.scm14
-rw-r--r--guix/jd/home/services/desktop.scm198
-rw-r--r--guix/jd/home/services/emacs.scm113
-rw-r--r--guix/jd/home/services/polkit.scm31
-rw-r--r--guix/jd/packages/emacs.scm57
-rw-r--r--guix/jd/packages/fonts.scm25
-rw-r--r--guix/jd/packages/linux.scm51
-rw-r--r--guix/jd/services/polkit.scm21
-rw-r--r--guix/jd/utils.scm75
11 files changed, 0 insertions, 851 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
diff --git a/guix/jd/home/services/desktop.scm b/guix/jd/home/services/desktop.scm
deleted file mode 100644
index 393c2d0..0000000
--- a/guix/jd/home/services/desktop.scm
+++ /dev/null
@@ -1,198 +0,0 @@
1(define-module (jd home services desktop)
2 #:use-module (gnu packages)
3 #:use-module (gnu packages freedesktop)
4 #:use-module (gnu packages networking)
5 #:use-module (gnu packages syncthing)
6 #:use-module (gnu packages gnome)
7 #:use-module (gnu packages gnupg)
8 #:use-module (gnu services)
9 #:use-module (gnu services configuration)
10 #:use-module (gnu home services)
11 #:use-module (gnu home services shepherd)
12 #:use-module (gnu home services desktop)
13 #:use-module (gnu home services sound)
14 #:use-module (gnu home services xdg)
15 #:use-module (gnu home services gnupg)
16 #:use-module (gnu home services dotfiles)
17 #:use-module (guix gexp)
18
19 #:use-module (jd packages fonts))
20
21(define (desktop-profile-service config)
22 (append
23 (list font-terminus-ttf)
24 (specifications->packages '("sway"
25 ;; "swayfx"
26 "swaylock"
27 "swayidle"
28 "swaynotificationcenter"
29 "waybar"
30 "fuzzel"
31 "foot"
32 "mako"
33 "wl-clipboard"
34 "wlsunset"
35 "grimshot"
36 "swappy"
37
38 "htop"
39 "distrobox"
40
41 "udiskie"
42 ;; rest
43 "qutebrowser"
44 "ungoogled-chromium"
45 "firefox"
46 "tor-client"
47 "signal-desktop"
48
49 "pulsemixer"
50 "pavucontrol"
51 "alsa-utils"
52
53 "virt-manager"
54
55 "flatpak"
56 "redshift"
57 "fontmanager"
58
59 "polybar"
60
61 "blueman"
62
63 "nomacs"
64
65 "xdg-utils"
66 "xdg-dbus-proxy"
67 "xdg-desktop-portal-gtk"
68 "xdg-desktop-portal-wlr"
69 "glib:bin"
70 "gtk+:bin"
71 "gnome-keyring"
72 "shared-mime-info"
73 "libnotify"
74 "dconf"
75 "hicolor-icon-theme"
76
77 "dunst"
78
79 ; "gimp"
80 ; "inkscape"
81
82 "mpv"
83 "youtube-dl"
84
85 "pamixer"
86 "playerctl"
87 "scrot"
88 "brightnessctl"
89 "upower"
90 "tlp"
91 "feh"
92 "alacritty"
93
94 "curl"
95 "wget"
96 "zip"
97 "unzip"
98 "qrencode"
99 "trash-cli"
100 "pandoc"
101 "password-store"
102 "oath-toolkit"
103 ;; "pinentry"
104
105 "syncthing"
106 "syncthing-gtk"
107
108 "xmodmap"
109 "xrandr"
110 "arandr"
111 "xss-lock"
112 "libinput"
113 "xinput"
114 "xprop"
115 "rlwrap"
116
117 "nheko"
118 "quassel"
119 "inkscape"
120 "gimp"
121 "libreoffice"
122 "steam"))))
123
124(define (desktop-environment-variables-service config)
125 `(("GTK_THEME" . "Adwaita:dark")
126 ("VISUAL" . "emacsclient")
127 ("EDITOR" . "emacsclient")
128 ("PATH" . "$HOME/.bin:$HOME/.local/bin:$HOME/.npm-global/bin:$PATH")
129 ("XDG_DATA_DIRS" . "$XDG_DATA_DIRS:$HOME/.local/share/flatpak/exports/share")
130 ("SBCL_HOME" . "/run/current-system/profile/lib/sbcl/")
131
132 ;; Set Wayland-specific environment variables (taken from RDE)
133 ("XDG_CURRENT_DESKTOP" . "sway")
134 ("XDG_SESSION_TYPE" . "wayland")
135 ("RTC_USE_PIPEWIRE" . "true")
136 ("SDL_VIDEODRIVER" . "wayland")
137 ("MOZ_ENABLE_WAYLAND" . "1")
138 ("CLUTTER_BACKEND" . "wayland")
139 ("ELM_ENGINE" . "wayland_egl")
140 ("ECORE_EVAS_ENGINE" . "wayland-egl")
141 ("QT_QPA_PLATFORM" . "wayland-egl"))) ;; QT_QPA_PLATFORM=xcb
142
143(define (desktop-xdg-mime-applications-service config)
144 (home-xdg-mime-applications-configuration
145 (default '((inode/directory . emacsclient.desktop)
146 (application/pdf . emacsclient.desktop)
147 (x-scheme-handler/http= . firefox.desktop)
148 (x-scheme-handler/https= . firefox.desktop)))
149 ;; (desktop-entries
150 ;; (list (xdg-desktop-entry
151 ;; (file "emacs-desktop")
152 ;; (name "Emacs")
153 ;; (type 'application)
154 ;; (config
155 ;; '((exec . "emacsclient -a emacs %u"))))))
156 ))
157
158(define (desktop-gpg-agent-service config)
159 (home-gpg-agent-configuration
160 (pinentry-program
161 (file-append pinentry-gnome3 "/bin/pinentry-gnome3"))
162 (ssh-support? #t)
163 (default-cache-ttl 28800)
164 (max-cache-ttl 28800)
165 (default-cache-ttl-ssh 28800)
166 (max-cache-ttl-ssh 28800)))
167
168(define (desktop-gpg-agent-service config)
169 (home-gpg-agent-configuration
170 (pinentry-program
171 (file-append pinentry-gnome3 "/bin/pinentry-gnome3"))
172 (ssh-support? #t)
173 (default-cache-ttl 28800)
174 (max-cache-ttl 28800)
175 (default-cache-ttl-ssh 28800)
176 (max-cache-ttl-ssh 28800)))
177
178(define (desktop-dotfiles-service config)
179 (home-dotfiles-configuration
180 (directories '("./files"))))
181
182(define-public home-desktop-service-type
183 (service-type (name 'home-desktop)
184 (extensions (list (service-extension home-profile-service-type
185 desktop-profile-service)
186 (service-extension home-environment-variables-service-type
187 desktop-environment-variables-service)
188 (service-extension home-pipewire-service-type
189 (lambda (_) (home-pipewire-configuration)))
190 (service-extension home-xdg-mime-applications-service-type
191 desktop-xdg-mime-applications-service)
192 (service-extension home-gpg-agent-service-type
193 desktop-gpg-agent-service)
194 (service-extension home-dotfiles-service-type
195 desktop-dotfiles-service)))
196 (default-value #f)
197 (description "Runs desktop services.")))
198
diff --git a/guix/jd/home/services/emacs.scm b/guix/jd/home/services/emacs.scm
deleted file mode 100644
index 15f0e68..0000000
--- a/guix/jd/home/services/emacs.scm
+++ /dev/null
@@ -1,113 +0,0 @@
1(define-module (jd home services emacs)
2 #:use-module (jd packages emacs)
3
4 #:use-module (gnu packages)
5 #:use-module (gnu packages emacs)
6
7 #:use-module (gnu services)
8 #:use-module (gnu services configuration)
9 #:use-module (gnu home services)
10 #:use-module (gnu home services shepherd)
11 #:use-module (gnu home services desktop)
12
13 #:use-module (guix gexp)
14 #:use-module (guix packages)
15 #:use-module (guix profiles))
16
17(define-configuration home-emacs-service-configuration
18 (emacs-package
19 (package emacs-next-pgtk)
20 "Emacs packages"))
21
22(define (emacs-profile-service config)
23 (append (list emacs-org-roam-ui
24 emacs-lsp-mode!
25 (home-emacs-service-configuration-emacs-package
26 config))
27 (specifications->packages '("emacs-sway"
28 "emacs-shackle"
29 "emacs-ytdl"
30 "emacs-desktop-environment"
31 "emacs-exwm"
32 "emacs-perspective"
33 "emacs-mu4e-alert"
34 "mu"
35 "isync"
36 "emacs-htmlize"
37 "emacs-bluetooth"
38 "emacs-nov-el"
39 "emacs-password-store"
40 "emacs-mastodon"
41 "emacs-elfeed"
42 "emacs-pdf-tools"
43 "emacs-emms"
44 "emacs-all-the-icons-dired"
45 "emacs-vterm"
46 "emacs-restclient"
47 "emacs-magit"
48 "emacs-neotree"
49 "emacs-projectile"
50 "emacs-company-box"
51 "emacs-company"
52 "emacs-docker"
53 "emacs-yaml-mode"
54 "emacs-web-mode"
55 "emacs-flycheck"
56 "emacs-tide"
57 "emacs-cider"
58 "emacs-typescript-mode"
59 "emacs-pyvenv"
60 "emacs-geiser-guile"
61 "emacs-racket-mode"
62 "emacs-geiser-racket"
63 "emacs-geiser"
64 "emacs-sly"
65 "emacs-rainbow-delimiters"
66 "emacs-paredit"
67 ;; "emacs-lsp-ivy"
68 ;; "emacs-lsp-mode"
69 "emacs-org-caldav"
70 "emacs-org-pomodoro"
71 "emacs-org-roam"
72 "emacs-org-roam-bibtex"
73 "emacs-org-superstar"
74 "emacs-org"
75 "emacs-ox-pandoc"
76 "emacs-beacon"
77 "emacs-all-the-icons"
78 "emacs-which-key"
79 "emacs-counsel"
80 "emacs-ivy"
81 "emacs-hl-todo"
82 "emacs-diminish"
83 "emacs-solarized-theme"
84 "font-terminus"
85 "emacs-undo-tree"
86 "emacs-hydra"
87 "emacs-multiple-cursors"
88 "emacs-general"
89 "emacs-guix"
90 "emacs-doom-modeline"
91 "emacs-use-package"))))
92
93(define (emacs-shepherd-services config)
94 (list (shepherd-service
95 (documentation "Emacs daemon.")
96 (provision '(emacs))
97 (start #~(make-forkexec-constructor
98 (list #$(file-append (home-emacs-service-configuration-emacs-package
99 config)
100 "/bin/emacs")
101 "--fg-daemon")))
102 (stop #~(make-kill-destructor)))))
103
104(define-public home-emacs-service-type
105 (service-type (name 'home-emacs)
106 (extensions (list (service-extension home-profile-service-type
107 emacs-profile-service)
108 (service-extension home-shepherd-service-type
109 emacs-shepherd-services)
110 ))
111 (default-value (home-emacs-service-configuration))
112 (description "Runs emacs daemon service.")))
113
diff --git a/guix/jd/home/services/polkit.scm b/guix/jd/home/services/polkit.scm
deleted file mode 100644
index 327ee08..0000000
--- a/guix/jd/home/services/polkit.scm
+++ /dev/null
@@ -1,31 +0,0 @@
1(define-module (jd home services polkit)
2 #:use-module (gnu packages)
3 #:use-module (gnu packages polkit)
4 #:use-module (gnu services)
5 #:use-module (gnu services configuration)
6 #:use-module (gnu home services)
7 #:use-module (gnu home services shepherd)
8 #:use-module (guix gexp))
9
10
11(define (polkit-gnome-profile-service config)
12 (specifications->packages '("polkit-gnome")))
13
14(define (polkit-gnome-shepherd-service config)
15 (list (shepherd-service
16 (documentation "Polkit gnome service.")
17 (provision '(polkit-gnome))
18 (start #~(make-forkexec-constructor
19 (list #$(file-append polkit-gnome
20 "/libexec/polkit-gnome-authentication-agent-1"))))
21 (stop #~(make-kill-destructor)))))
22
23(define-public home-polkit-gnome-service-type
24 (service-type (name 'home-polkit-gnome)
25 (extensions (list (service-extension home-profile-service-type
26 polkit-gnome-profile-service)
27 (service-extension home-shepherd-service-type
28 polkit-gnome-shepherd-service)))
29 (default-value #f)
30 (description "Runs the PolicyKit-gnome service.")))
31
diff --git a/guix/jd/packages/emacs.scm b/guix/jd/packages/emacs.scm
deleted file mode 100644
index 0b9b19d..0000000
--- a/guix/jd/packages/emacs.scm
+++ /dev/null
@@ -1,57 +0,0 @@
1(define-module (jd packages emacs)
2 #:use-module (gnu packages emacs-xyz)
3 #:use-module (gnu packages)
4 #:use-module (guix packages)
5 #:use-module (guix git-download)
6 #:use-module (guix build-system emacs)
7 #:use-module ((guix licenses) #:prefix license:)
8 #:export (emacs-org-roam-ui
9 emacs-lsp-mode!))
10
11
12(define emacs-org-roam-ui
13 (let ((commit "9474a254390b1e42488a1801fed5826b32a8030b")
14 (revision "0"))
15 (package
16 (name "emacs-org-roam-ui")
17 (version (git-version "0" revision commit))
18 (source (origin
19 (method git-fetch)
20 (uri (git-reference
21 (url "https://github.com/org-roam/org-roam-ui")
22 (commit commit)))
23 (file-name (git-file-name name version))
24 (sha256
25 (base32
26 "0v54vxh95izch74wz2dl2dkdqicbvshra55l6qvd4xl5qmfhpjdc"))))
27 (build-system emacs-build-system)
28 (arguments
29 `(#:include (cons "^out" %default-include)))
30 (propagated-inputs
31 (list emacs-org-roam emacs-websocket emacs-simple-httpd emacs-f))
32 (home-page "https://github.com/org-roam/org-roam-ui")
33 (synopsis "A graphical frontend for your org-roam Zettelkasten")
34 (description " Org-Roam-UI is a frontend for exploring and interacting
35with your @code{org-roam} notes. It is meant a successor of
36@code{org-roam-server} that extends functionality of org-roam with a Web app
37that runs side-by-side with Emacs.")
38 (license license:gpl3+))))
39
40
41
42(define emacs-lsp-mode!
43 (let ((commit "808c4d0ab9f19bb92c56716cf59df89432b63f5d")
44 (revision "1"))
45 (package
46 (inherit emacs-lsp-mode)
47 (name "emacs-lsp-mode")
48 (version (git-version "8.0.1" revision commit))
49 (source
50 (origin
51 (method git-fetch)
52 (uri (git-reference
53 (url "https://github.com/emacs-lsp/lsp-mode")
54 (commit commit)))
55 (file-name (git-file-name name version))
56 (sha256
57 (base32 "0ridjhzndwjj8947vabq05njgnns74hi69x77axgcbv1c4nasz2y")))))))
diff --git a/guix/jd/packages/fonts.scm b/guix/jd/packages/fonts.scm
deleted file mode 100644
index fa70722..0000000
--- a/guix/jd/packages/fonts.scm
+++ /dev/null
@@ -1,25 +0,0 @@
1(define-module (jd packages fonts)
2 #:use-module (gnu packages)
3 #:use-module (guix packages)
4 #:use-module (guix download)
5 #:use-module (guix build-system font)
6 #:use-module ((guix licenses) #:prefix license:))
7
8(define-public font-terminus-ttf
9 (package
10 (name "font-terminus-ttf")
11 (version "4.49.3")
12 (source (origin
13 (method url-fetch)
14 (uri (string-append "https://files.ax86.net/terminus-ttf/files/"
15 version "/terminus-ttf-" version ".zip"))
16 (sha256
17 (base32
18 "0xvm4mcf0gx7df35swqwxb7a5h3z0gf6dkg6zy84b6nrk0fr5b8f"))))
19 (build-system font-build-system)
20 (home-page "https://files.ax86.net/terminus-ttf/")
21 (synopsis "Terminus TTF Font")
22 (description
23 "Terminus TTF is a TrueType version of Terminus Font, a fixed-width bitmap font optimized for long work with computers.")
24 (license license:gpl2+)))
25
diff --git a/guix/jd/packages/linux.scm b/guix/jd/packages/linux.scm
deleted file mode 100644
index 94549c3..0000000
--- a/guix/jd/packages/linux.scm
+++ /dev/null
@@ -1,51 +0,0 @@
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
diff --git a/guix/jd/services/polkit.scm b/guix/jd/services/polkit.scm
deleted file mode 100644
index 948500c..0000000
--- a/guix/jd/services/polkit.scm
+++ /dev/null
@@ -1,21 +0,0 @@
1(define-module (jd services polkit)
2 #:use-module (gnu services)
3 #:use-module (gnu services dbus)
4 #:use-module (gnu home services)
5 #:use-module (guix gexp))
6
7(define polkit-network-manager
8 (file-union
9 "polkit-wheel"
10 `(("share/polkit-1/rules.d/50-org.freedesktop.NetworkManager.rules"
11 ,(plain-file
12 "50-org.freedesktop.NetworkManager.rules"
13 "polkit.addRule(function(action, subject) {
14 if (action.id.indexOf(\"org.freedesktop.NetworkManager.\") == 0 &&
15 subject.isInGroup(\"netdev\")) {
16 return polkit.Result.YES;
17 }
18});")))))
19
20(define-public polkit-network-manager-service
21 (simple-service 'polkit-network-manager polkit-service-type (list polkit-network-manager)))
diff --git a/guix/jd/utils.scm b/guix/jd/utils.scm
deleted file mode 100644
index 72be6fc..0000000
--- a/guix/jd/utils.scm
+++ /dev/null
@@ -1,75 +0,0 @@
1(define-module (jd utils)
2 #:use-module (gnu system)
3 #:use-module (ice-9 match)
4 #:export (jd-search-patches
5 current-operating-system
6 current-home))
7
8(define primitive-host-operating-system
9 "/etc/config.scm")
10
11(define-macro (define-combine-operating-systems name fields)
12 `(define (,name os-to-inherit-from os)
13 (operating-system
14 (inherit os-to-inherit-from)
15 ,@(map (lambda (field)
16 `(,field
17 (,(string->symbol
18 (string-append
19 "operating-system-"
20 (symbol->string field)))
21 os)))
22 fields))))
23
24(define-combine-operating-systems combine-install-dest-informations
25 (bootloader mapped-devices file-systems))
26
27(define (make-reconfigureable-os os)
28 (combine-install-dest-informations
29 os
30 (load primitive-host-operating-system)))
31
32(define (current-operating-system)
33 (make-reconfigureable-os
34 (module-ref
35 (resolve-module
36 `(jd desktops ,(string->symbol (gethostname))))
37 'system)))
38
39(define (current-home)
40 (module-ref
41 (resolve-module
42 `(jd desktops ,(string->symbol (gethostname))))
43 'home))
44
45;; This code is copied and modified from (gnu packages) module.
46
47(define (make-custom-load-path dir-path)
48 (make-parameter
49 (map (lambda (directory)
50 (let ((custom-dir (string-append directory dir-path)))
51 (if (and (file-exists? custom-dir)
52 (file-is-directory? custom-dir))
53 custom-dir
54 directory)))
55 %load-path)))
56
57(define (make-custom-searcher load-path)
58 (lambda (file-name)
59 (or (search-path (load-path) file-name)
60 (raise (string-append file-name
61 ": not found")))))
62
63(define %jd-patch-path (make-custom-load-path "/jd/packages/patches"))
64(define %jd-dot-files-path (make-custom-load-path "/jd/home/services/dotfiles"))
65
66(define (jd-search-patch file-name)
67 "Search the patch FILE-NAME. Raise an error if not found."
68 (or (search-path (%jd-patch-path) file-name)
69 (raise (string-append file-name
70 ": patch not found"))))
71
72(define-syntax-rule (jd-search-patches file-name ...)
73 "Return the list of absolute file names corresponding to each
74FILE-NAME found in %JD-PATCH-PATH."
75 (list (jd-search-patch file-name) ...))