diff options
| -rw-r--r-- | Makefile | 4 | ||||
| -rw-r--r-- | signing-key.pub | 6 | ||||
| -rw-r--r-- | src/jd/features/mail.scm | 34 | ||||
| -rw-r--r-- | src/jd/features/math.scm | 68 | ||||
| -rw-r--r-- | src/jd/features/nextcloud.scm | 50 | ||||
| -rw-r--r-- | src/jd/host.scm | 4 | ||||
| -rw-r--r-- | src/jd/user.scm | 151 | 
7 files changed, 246 insertions, 71 deletions
| @@ -16,4 +16,6 @@ repl: | |||
| 16 | "(begin (use-modules (guix gexp)) ((@ (ares server) run-nrepl-server)))" | 16 | "(begin (use-modules (guix gexp)) ((@ (ares server) run-nrepl-server)))" | 
| 17 | 17 | ||
| 18 | reconfigure: | 18 | reconfigure: | 
| 19 | sudo -E ${GUIX} system -L ./src reconfigure -e "(@ (jd config) %os)" | 19 | sudo -E ${GUIX} system -L ./src reconfigure \ | 
| 20 | -e "(@ (jd config) %os)" \ | ||
| 21 | --substitute-urls='https://ci.guix.gnu.org https://bordeaux.guix.gnu.org https://substitutes.nonguix.org' | ||
| diff --git a/signing-key.pub b/signing-key.pub new file mode 100644 index 0000000..32ddac6 --- /dev/null +++ b/signing-key.pub | |||
| @@ -0,0 +1,6 @@ | |||
| 1 | (public-key | ||
| 2 | (ecc | ||
| 3 | (curve Ed25519) | ||
| 4 | (q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#) | ||
| 5 | ) | ||
| 6 | ) | ||
| diff --git a/src/jd/features/mail.scm b/src/jd/features/mail.scm index f5c3536..bf137e9 100644 --- a/src/jd/features/mail.scm +++ b/src/jd/features/mail.scm | |||
| @@ -27,7 +27,7 @@ | |||
| 27 | #:use-module (guix diagnostics) | 27 | #:use-module (guix diagnostics) | 
| 28 | #:use-module (guix i18n) | 28 | #:use-module (guix i18n) | 
| 29 | 29 | ||
| 30 | #:export (feature-l2md* feature-mail-mcron)) | 30 | #:export (feature-l2md* feature-mail-mcron feature-octave)) | 
| 31 | 31 | ||
| 32 | (define* (feature-l2md* | 32 | (define* (feature-l2md* | 
| 33 | #:key | 33 | #:key | 
| @@ -113,3 +113,35 @@ features that have been enabled." | |||
| 113 | (feature | 113 | (feature | 
| 114 | (name 'mail-mcron) | 114 | (name 'mail-mcron) | 
| 115 | (home-services-getter get-home-services))) | 115 | (home-services-getter get-home-services))) | 
| 116 | |||
| 117 | (define* (feature-octave | ||
| 118 | #:key (octave (@ (gnu packages maths) octave-cli))) | ||
| 119 | (define f-name 'octave) | ||
| 120 | (define (get-home-services config) | ||
| 121 | (list | ||
| 122 | (rde-elisp-configuration-service | ||
| 123 | f-name | ||
| 124 | config | ||
| 125 | `((with-eval-after-load 'org | ||
| 126 | (require 'ob-octave) | ||
| 127 | (add-to-list 'org-structure-template-alist | ||
| 128 | '("octave" . "src octave")) | ||
| 129 | (org-babel-do-load-languages | ||
| 130 | 'org-babel-load-languages | ||
| 131 | '((octave . t))) | ||
| 132 | (setq org-babel-default-header-args:octave | ||
| 133 | '((:results . "output") | ||
| 134 | (:session . "octave") | ||
| 135 | (:exports . "both") | ||
| 136 | (:eval . "no-export")))))) | ||
| 137 | (simple-service | ||
| 138 | 'octave-packages | ||
| 139 | home-profile-service-type | ||
| 140 | (append (or (and (get-value 'python config) | ||
| 141 | (list (@ (gnu packages python-xyz) python-sympy))) | ||
| 142 | '()) | ||
| 143 | (list octave))))) | ||
| 144 | (feature | ||
| 145 | (name f-name) | ||
| 146 | (values `((,f-name . #t))) | ||
| 147 | (home-services-getter get-home-services))) | ||
| diff --git a/src/jd/features/math.scm b/src/jd/features/math.scm new file mode 100644 index 0000000..7609370 --- /dev/null +++ b/src/jd/features/math.scm | |||
| @@ -0,0 +1,68 @@ | |||
| 1 | (define-module (jd features math) | ||
| 2 | #:use-module (rde features) | ||
| 3 | #:use-module (gnu services) | ||
| 4 | #:use-module (rde features emacs) | ||
| 5 | #:use-module (gnu home services) | ||
| 6 | |||
| 7 | |||
| 8 | #:use-module (rde packages) | ||
| 9 | #:use-module (rde exceptions) | ||
| 10 | |||
| 11 | #:use-module (rde predicates) | ||
| 12 | |||
| 13 | #:use-module (rde features mail) | ||
| 14 | #:use-module ((rde features mail providers) #:prefix mail-providers:) | ||
| 15 | #:use-module (gnu packages mail) | ||
| 16 | #:use-module (gnu packages emacs-xyz) | ||
| 17 | #:use-module (rde packages emacs-xyz) | ||
| 18 | #:use-module (rde packages mail) | ||
| 19 | #:use-module (rde serializers elisp) | ||
| 20 | #:use-module (rde home services mail) | ||
| 21 | |||
| 22 | #:use-module (gnu services configuration) | ||
| 23 | |||
| 24 | #:use-module (gnu home-services mail) | ||
| 25 | #:use-module (gnu home services mcron) | ||
| 26 | #:use-module (gnu home-services version-control) | ||
| 27 | #:use-module (gnu home services xdg) | ||
| 28 | |||
| 29 | #:use-module (ice-9 match) | ||
| 30 | #:use-module (srfi srfi-1) | ||
| 31 | #:use-module (guix gexp) | ||
| 32 | #:use-module (guix deprecation) | ||
| 33 | #:use-module (guix diagnostics) | ||
| 34 | #:use-module (guix i18n) | ||
| 35 | |||
| 36 | #:export (feature-octave)) | ||
| 37 | |||
| 38 | (define* (feature-octave | ||
| 39 | #:key (octave (@ (gnu packages maths) octave-cli))) | ||
| 40 | (define f-name 'octave) | ||
| 41 | (define (get-home-services config) | ||
| 42 | (list | ||
| 43 | (rde-elisp-configuration-service | ||
| 44 | f-name | ||
| 45 | config | ||
| 46 | `((with-eval-after-load 'org | ||
| 47 | (require 'ob-octave) | ||
| 48 | (add-to-list 'org-structure-template-alist | ||
| 49 | '("octave" . "src octave")) | ||
| 50 | (org-babel-do-load-languages | ||
| 51 | 'org-babel-load-languages | ||
| 52 | '((octave . t))) | ||
| 53 | (setq org-babel-default-header-args:octave | ||
| 54 | '((:results . "output") | ||
| 55 | (:session . "octave") | ||
| 56 | (:exports . "both") | ||
| 57 | (:eval . "no-export")))))) | ||
| 58 | (simple-service | ||
| 59 | 'octave-packages | ||
| 60 | home-profile-service-type | ||
| 61 | (append (or (and (get-value 'python config) | ||
| 62 | (list (@ (gnu packages python-xyz) python-sympy))) | ||
| 63 | '()) | ||
| 64 | (list octave))))) | ||
| 65 | (feature | ||
| 66 | (name f-name) | ||
| 67 | (values `((,f-name . #t))) | ||
| 68 | (home-services-getter get-home-services))) | ||
| diff --git a/src/jd/features/nextcloud.scm b/src/jd/features/nextcloud.scm new file mode 100644 index 0000000..ff3c9fb --- /dev/null +++ b/src/jd/features/nextcloud.scm | |||
| @@ -0,0 +1,50 @@ | |||
| 1 | (define-module (jd features nextcloud) | ||
| 2 | #:use-module (rde features) | ||
| 3 | #:use-module (rde predicates) | ||
| 4 | |||
| 5 | #:use-module (gnu packages) | ||
| 6 | #:use-module (gnu packages polkit) | ||
| 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 (guix gexp) | ||
| 12 | #:export (feature-nextcloud)) | ||
| 13 | |||
| 14 | (define* (feature-nextcloud | ||
| 15 | #:key | ||
| 16 | (nextcloud-client (@ (gnu packages sync) nextcloud-client)) | ||
| 17 | (gnome-keyring (@ (gnu packages gnome) gnome-keyring)) | ||
| 18 | (polkit? #t)) | ||
| 19 | (define f-name 'nextcloud) | ||
| 20 | |||
| 21 | (define (get-home-services config) | ||
| 22 | (list | ||
| 23 | (simple-service | ||
| 24 | 'add-nextcloud-home-package | ||
| 25 | home-profile-service-type | ||
| 26 | (append | ||
| 27 | (if polkit? (list gnome-keyring) '()) | ||
| 28 | (list nextcloud-client))) | ||
| 29 | |||
| 30 | (simple-service | ||
| 31 | 'nextcloud-shepherd-service | ||
| 32 | home-shepherd-service-type | ||
| 33 | (list | ||
| 34 | (shepherd-service | ||
| 35 | (provision `(nextcloud)) | ||
| 36 | (auto-start? #t) | ||
| 37 | (stop #~(make-kill-destructor)) | ||
| 38 | (start #~(make-forkexec-constructor | ||
| 39 | (list #$(program-file | ||
| 40 | "nextcloud" | ||
| 41 | #~(begin | ||
| 42 | (setenv "QT_QPA_PLATFORM" "wayland-egl;xcb") | ||
| 43 | (apply system* | ||
| 44 | (list | ||
| 45 | #$(file-append (@ (gnu packages sync) nextcloud-client) "/bin/nextcloud"))))))))))))) | ||
| 46 | |||
| 47 | (feature | ||
| 48 | (name f-name) | ||
| 49 | (values `((,f-name . #t))) | ||
| 50 | (home-services-getter get-home-services))) | ||
| diff --git a/src/jd/host.scm b/src/jd/host.scm index 7071a3f..d94d0e2 100644 --- a/src/jd/host.scm +++ b/src/jd/host.scm | |||
| @@ -43,5 +43,7 @@ | |||
| 43 | #:extra-config | 43 | #:extra-config | 
| 44 | `((profile laptop ((output eDP-1 enable))) | 44 | `((profile laptop ((output eDP-1 enable))) | 
| 45 | (profile docked ((output eDP-1 disable) | 45 | (profile docked ((output eDP-1 disable) | 
| 46 | (output DP-3 enable))))) | 46 | (output DP-3 enable))) | 
| 47 | (profile docked ((output eDP-1 disable) | ||
| 48 | (output DP-4 enable))))) | ||
| 47 | (feature-hidpi))) | 49 | (feature-hidpi))) | 
| diff --git a/src/jd/user.scm b/src/jd/user.scm index 7c54a30..7a79e2c 100644 --- a/src/jd/user.scm +++ b/src/jd/user.scm | |||
| @@ -4,12 +4,17 @@ | |||
| 4 | #:use-module (gnu home-services ssh) | 4 | #:use-module (gnu home-services ssh) | 
| 5 | #:use-module (gnu home services xdg) | 5 | #:use-module (gnu home services xdg) | 
| 6 | #:use-module (gnu packages) | 6 | #:use-module (gnu packages) | 
| 7 | #:use-module (gnu packages cups) | ||
| 7 | #:use-module (gnu packages emacs-xyz) | 8 | #:use-module (gnu packages emacs-xyz) | 
| 8 | #:use-module (gnu packages gnome) | 9 | #:use-module (gnu packages gnome) | 
| 9 | #:use-module (gnu packages gnupg) | 10 | #:use-module (gnu packages gnupg) | 
| 10 | #:use-module (gnu packages guile-xyz) | 11 | #:use-module (gnu packages guile-xyz) | 
| 11 | #:use-module (gnu services) | 12 | #:use-module (gnu services) | 
| 13 | #:use-module (gnu services base) | ||
| 14 | #:use-module (gnu services cups) | ||
| 12 | #:use-module (gnu services nix) | 15 | #:use-module (gnu services nix) | 
| 16 | #:use-module (gnu services desktop) | ||
| 17 | #:use-module (gnu system pam) | ||
| 13 | 18 | ||
| 14 | #:use-module (guix channels) | 19 | #:use-module (guix channels) | 
| 15 | #:use-module (guix download) | 20 | #:use-module (guix download) | 
| @@ -19,6 +24,7 @@ | |||
| 19 | 24 | ||
| 20 | #:use-module (jd features mail) | 25 | #:use-module (jd features mail) | 
| 21 | #:use-module (jd features networking) | 26 | #:use-module (jd features networking) | 
| 27 | #:use-module (jd features nextcloud) | ||
| 22 | 28 | ||
| 23 | #:use-module (nongnu packages linux) | 29 | #:use-module (nongnu packages linux) | 
| 24 | #:use-module (nongnu system linux-initrd) | 30 | #:use-module (nongnu system linux-initrd) | 
| @@ -72,14 +78,15 @@ | |||
| 72 | (feature-base-services) | 78 | (feature-base-services) | 
| 73 | (feature-base-packages) | 79 | (feature-base-packages) | 
| 74 | (feature-desktop-services) | 80 | (feature-desktop-services) | 
| 81 | (feature-tex) | ||
| 75 | (feature-xdg | 82 | (feature-xdg | 
| 76 | #:xdg-user-directories-configuration | 83 | #:xdg-user-directories-configuration | 
| 77 | (home-xdg-user-directories-configuration | 84 | (home-xdg-user-directories-configuration | 
| 78 | (music "$HOME/music") | 85 | (music "$HOME/music") | 
| 79 | (videos "$HOME/videos") | 86 | (videos "$HOME/videos") | 
| 80 | (pictures "$HOME/pictures") | 87 | (pictures "$HOME/pics") | 
| 81 | (documents "$HOME/documents") | 88 | (documents "$HOME/docs") | 
| 82 | (download "$HOME/downloads") | 89 | (download "$HOME/dl") | 
| 83 | (publicshare "$HOME/sync") | 90 | (publicshare "$HOME/sync") | 
| 84 | (desktop "$HOME") | 91 | (desktop "$HOME") | 
| 85 | (templates "$HOME"))) | 92 | (templates "$HOME"))) | 
| @@ -142,6 +149,7 @@ | |||
| 142 | (waybar-battery #:intense? #f) | 149 | (waybar-battery #:intense? #f) | 
| 143 | (waybar-tray) | 150 | (waybar-tray) | 
| 144 | (waybar-clock))) | 151 | (waybar-clock))) | 
| 152 | ;; (feature-nextcloud) | ||
| 145 | (feature-foot) | 153 | (feature-foot) | 
| 146 | (feature-yt-dlp) | 154 | (feature-yt-dlp) | 
| 147 | (feature-libreoffice) | 155 | (feature-libreoffice) | 
| @@ -152,9 +160,16 @@ | |||
| 152 | (feature-swaylock) | 160 | (feature-swaylock) | 
| 153 | (feature-batsignal) | 161 | (feature-batsignal) | 
| 154 | (feature-imv) | 162 | (feature-imv) | 
| 155 | (feature-mpv) | ||
| 156 | (feature-librewolf) | 163 | (feature-librewolf) | 
| 157 | (feature-ledger))) | 164 | (feature-librewolf | 
| 165 | #:browser (@ (gnu packages gnuzilla) icecat) | ||
| 166 | #:default-browser? #f) | ||
| 167 | (feature-librewolf | ||
| 168 | #:browser (@ (nongnu packages mozilla) firefox) | ||
| 169 | #:default-browser? #f) | ||
| 170 | ;; (feature-ungoogled-chromium) | ||
| 171 | (feature-ledger) | ||
| 172 | (feature-mpv))) | ||
| 158 | 173 | ||
| 159 | (define-public %mail-features | 174 | (define-public %mail-features | 
| 160 | (list | 175 | (list | 
| @@ -182,14 +197,7 @@ | |||
| 182 | (rde-elisp-configuration-service | 197 | (rde-elisp-configuration-service | 
| 183 | f-name | 198 | f-name | 
| 184 | config | 199 | config | 
| 185 | `((with-eval-after-load 'geiser-mode | 200 | `((with-eval-after-load 'notmuch | 
| 186 | (defun jd/guix-repl () | ||
| 187 | (interactive) | ||
| 188 | (let ((geiser-guile-binary '("guix" "repl")) | ||
| 189 | (geiser-guile-load-path (cons "~/dotfiles/rde" geiser-guile-load-path))) | ||
| 190 | (geiser 'guile)))) | ||
| 191 | |||
| 192 | (with-eval-after-load 'notmuch | ||
| 193 | (setq-default notmuch-search-oldest-first nil)) | 201 | (setq-default notmuch-search-oldest-first nil)) | 
| 194 | 202 | ||
| 195 | (with-eval-after-load 'paredit | 203 | (with-eval-after-load 'paredit | 
| @@ -240,24 +248,30 @@ | |||
| 240 | (global-page-break-lines-mode 1)) | 248 | (global-page-break-lines-mode 1)) | 
| 241 | 249 | ||
| 242 | (with-eval-after-load 'gptel | 250 | (with-eval-after-load 'gptel | 
| 243 | (setq gptel-model 'gpt-4o | 251 | (setq gptel-model 'gpt-4o | 
| 244 | gptel-backend (gptel-make-gh-copilot "Copilot"))) | 252 | gptel-backend (gptel-make-gh-copilot "Copilot"))) | 
| 245 | 253 | ||
| 246 | (with-eval-after-load 'simple | 254 | (with-eval-after-load 'simple | 
| 247 | (add-hook 'after-init-hook (lambda () | 255 | (add-hook | 
| 248 | (delete-selection-mode 1) | 256 | 'after-init-hook | 
| 249 | (pixel-scroll-precision-mode 0) | 257 | (lambda () | 
| 250 | (electric-pair-mode 1) | 258 | (delete-selection-mode 1) | 
| 251 | (setq-default truncate-lines t) | 259 | (pixel-scroll-precision-mode 0) | 
| 252 | (setq-default cursor-in-non-selected-windows 'hollow) | 260 | (electric-pair-mode 1) | 
| 253 | (setq-default cursor-type 'box) | 261 | (setq-default truncate-lines t) | 
| 254 | ;; (set-face-attribute 'default nil :height 165) | 262 | (setq-default cursor-in-non-selected-windows 'hollow) | 
| 255 | ;; (require 'solarized-theme) | 263 | (setq-default cursor-type 'box) | 
| 256 | (require 'multiple-cursors) | 264 | (require 'multiple-cursors) | 
| 257 | (require 'undo-tree) | 265 | (require 'undo-tree) | 
| 258 | (require 'rainbow-delimiters) | 266 | (require 'rainbow-delimiters) | 
| 259 | (require 'paredit) | 267 | (require 'paredit) | 
| 260 | )) | 268 | (require 'url) | 
| 269 | (require 'json) | ||
| 270 | (require 'org) | ||
| 271 | (require 'org-pdftools) | ||
| 272 | (defalias 'getf 'cl-getf) | ||
| 273 | (defalias 'find-if 'cl-find-if) | ||
| 274 | (add-hook 'org-mode-hook 'org-pdftools-setup-link))) | ||
| 261 | (set-default 'display-fill-column-indicator-column 100) | 275 | (set-default 'display-fill-column-indicator-column 100) | 
| 262 | (add-hook 'prog-mode-hook 'display-fill-column-indicator-mode) | 276 | (add-hook 'prog-mode-hook 'display-fill-column-indicator-mode) | 
| 263 | (setq display-line-numbers-type 'relative) | 277 | (setq display-line-numbers-type 'relative) | 
| @@ -270,11 +284,10 @@ | |||
| 270 | "emacs-hl-todo" | 284 | "emacs-hl-todo" | 
| 271 | "emacs-undo-tree" | 285 | "emacs-undo-tree" | 
| 272 | "emacs-multiple-cursors" | 286 | "emacs-multiple-cursors" | 
| 273 | ;; "emacs-swiper" | ||
| 274 | ;; "emacs-solarized-theme" | ||
| 275 | "emacs-nginx-mode" | 287 | "emacs-nginx-mode" | 
| 276 | "emacs-yaml-mode" | 288 | "emacs-yaml-mode" | 
| 277 | "emacs-org-present")))) | 289 | "emacs-org-present" | 
| 290 | "emacs-org-pdftools")))) | ||
| 278 | (feature | 291 | (feature | 
| 279 | (name f-name) | 292 | (name f-name) | 
| 280 | (values `((,f-name . #t))) | 293 | (values `((,f-name . #t))) | 
| @@ -282,30 +295,33 @@ | |||
| 282 | 295 | ||
| 283 | (define-public %emacs-features | 296 | (define-public %emacs-features | 
| 284 | (list | 297 | (list | 
| 285 | (feature-emacs-modus-themes #:headings-scaling? #t | 298 | (feature-emacs-modus-themes #:deuteranopia? #f) | 
| 286 | #:deuteranopia? #f) | 299 | (feature-emacs-citation #:global-bibliography (list "/home/jakub/docs/notes/references/master.bib")) | 
| 287 | (feature-emacs-citation #:global-bibliography (list "/home/jakub/Notes/Roam/references/master.bib")) | ||
| 288 | (feature-emacs-completion #:mini-frame? #f ;; Dziwne kurwa bledy | 300 | (feature-emacs-completion #:mini-frame? #f ;; Dziwne kurwa bledy | 
| 289 | #:marginalia-align 'right) | 301 | #:marginalia-align 'right) | 
| 290 | (feature-emacs-corfu #:corfu-doc-auto #f) | 302 | (feature-emacs-corfu #:corfu-doc-auto #f) | 
| 291 | (feature-emacs #:default-application-launcher? #t) | 303 | (feature-emacs #:default-application-launcher? #t) | 
| 292 | (feature-emacs-elfeed #:elfeed-org-files '("/home/jakub/Notes/Rss.org")) | 304 | (feature-emacs-elfeed #:elfeed-org-files '("/home/jakub/docs/notes/rss.org")) | 
| 293 | (feature-emacs-erc #:erc-log? #t | 305 | (feature-emacs-erc #:erc-log? #t | 
| 294 | #:erc-autojoin-channels-alist '((Libera.Chat "#rde") | 306 | #:erc-autojoin-channels-alist '((Libera.Chat "#rde") | 
| 295 | (Libera.Chat "#systemcrafters") | 307 | (Libera.Chat "#systemcrafters") | 
| 296 | (Libera.Chat "#lisp-pl") | 308 | (Libera.Chat "#lisp-pl") | 
| 297 | (Libera.Chat "#hsp"))) | 309 | (Libera.Chat "#hsp"))) | 
| 298 | (feature-emacs-keycast #:turn-on? #f) | 310 | (feature-emacs-keycast #:turn-on? #f) | 
| 299 | (feature-emacs-org-agenda #:org-agenda-files '("/home/jakub/Notes/Me.org" "/home/jakub/Notes/Work.org")) | 311 | (feature-emacs-org-agenda #:org-agenda-files '("/home/jakub/docs/notes/personal.org" | 
| 312 | "/home/jakub/docs/notes/s22425.org")) | ||
| 300 | (feature-emacs-org-dailies #:encrypted? #t) | 313 | (feature-emacs-org-dailies #:encrypted? #t) | 
| 301 | (feature-emacs-org #:org-directory "/home/jakub/Notes" | 314 | (feature-emacs-org #:org-directory "/home/jakub/docs/notes" | 
| 302 | #:org-indent? #f) | 315 | #:org-indent? #t) | 
| 303 | (feature-emacs-org-roam #:org-roam-directory "/home/jakub/Notes/Roam/slip-box") | 316 | (feature-emacs-org-roam #:org-roam-directory "/home/jakub/docs/notes/slip-box") | 
| 304 | (feature-emacs-spelling #:spelling-program (@ (gnu packages hunspell) hunspell) | 317 | (feature-emacs-spelling #:spelling-program (@ (gnu packages hunspell) hunspell) | 
| 305 | #:spelling-dictionaries (list (@ (gnu packages hunspell) hunspell-dict-en) | 318 | #:spelling-dictionaries (list (@ (gnu packages hunspell) hunspell-dict-en) | 
| 306 | (@ (gnu packages hunspell) hunspell-dict-pl)) | 319 | (@ (gnu packages hunspell) hunspell-dict-pl)) | 
| 307 | #:ispell-standard-dictionary "pl_PL") | 320 | #:ispell-standard-dictionary "pl_PL") | 
| 308 | (feature-emacs-dired #:extra-switches "-h") | 321 | (feature-emacs-dired #:extra-switches "-h") | 
| 322 | (feature-emacs-monocle #:olivetti-body-width 100) | ||
| 323 | (feature-emacs-denote #:denote-directory "/home/jakub/docs/notes") | ||
| 324 | (feature-emacs-devdocs) | ||
| 309 | (feature-emacs-appearance) | 325 | (feature-emacs-appearance) | 
| 310 | (feature-emacs-dashboard) | 326 | (feature-emacs-dashboard) | 
| 311 | (feature-emacs-eglot) | 327 | (feature-emacs-eglot) | 
| @@ -314,7 +330,6 @@ | |||
| 314 | (feature-emacs-gptel) | 330 | (feature-emacs-gptel) | 
| 315 | (feature-emacs-guix) | 331 | (feature-emacs-guix) | 
| 316 | (feature-emacs-message) | 332 | (feature-emacs-message) | 
| 317 | (feature-emacs-monocle) | ||
| 318 | (feature-emacs-nov-el) | 333 | (feature-emacs-nov-el) | 
| 319 | (feature-emacs-pdf-tools) | 334 | (feature-emacs-pdf-tools) | 
| 320 | (feature-emacs-personal-config) | 335 | (feature-emacs-personal-config) | 
| @@ -331,10 +346,11 @@ | |||
| 331 | 346 | ||
| 332 | (define %dev-features | 347 | (define %dev-features | 
| 333 | (list | 348 | (list | 
| 349 | (feature-markdown #:headings-scaling? #t) | ||
| 334 | (feature-android) | 350 | (feature-android) | 
| 335 | (feature-clojure) | 351 | (feature-clojure) | 
| 336 | (feature-markdown) | 352 | (feature-python) | 
| 337 | (feature-python))) | 353 | (feature-octave))) | 
| 338 | 354 | ||
| 339 | (define %virtualization-features | 355 | (define %virtualization-features | 
| 340 | (list | 356 | (list | 
| @@ -380,36 +396,25 @@ | |||
| 380 | (feature-custom-services | 396 | (feature-custom-services | 
| 381 | #:feature-name-prefix 'jd-additional-services | 397 | #:feature-name-prefix 'jd-additional-services | 
| 382 | #:system-services | 398 | #:system-services | 
| 383 | (list (service nix-service-type)) | 399 | (list (service nix-service-type) | 
| 400 | (service gnome-keyring-service-type) | ||
| 401 | (service pam-limits-service-type | ||
| 402 | (list | ||
| 403 | (pam-limits-entry "*" 'both 'nofile 100000) ;; Required for some cases when building Docker images in Nix | ||
| 404 | (pam-limits-entry "@users" 'both 'rtprio 99) ;; Needed for Guitarix | ||
| 405 | (pam-limits-entry "@users" 'both 'memlock 'unlimited))) | ||
| 406 | (service cups-service-type | ||
| 407 | (cups-configuration | ||
| 408 | (web-interface? #t) | ||
| 409 | (extensions | ||
| 410 | (list cups-filters))))) | ||
| 384 | #:home-services | 411 | #:home-services | 
| 385 | (list | 412 | (list | 
| 386 | (simple-service | 413 | (simple-service | 
| 387 | 'home-environment-extra-variables | 414 | 'home-environment-extra-variables | 
| 388 | home-environment-variables-service-type | 415 | home-environment-variables-service-type | 
| 389 | '(("XDG_DATA_DIRS" . "$XDG_DATA_DIRS:$HOME/.local/share/flatpak/exports/share"))) | 416 | '(("XDG_DATA_DIRS" . "$XDG_DATA_DIRS:$HOME/.local/share/flatpak/exports/share"))) | 
| 390 | ;; (simple-service | 417 | |
| 391 | ;; 'home-nextcloud-package | ||
| 392 | ;; home-profile-service-type | ||
| 393 | ;; (list | ||
| 394 | ;; (@@ (gnu packages sync) nextcloud-client))) | ||
| 395 | (simple-service | ||
| 396 | 'nextcloud-shepherd-service | ||
| 397 | home-shepherd-service-type | ||
| 398 | (list | ||
| 399 | (shepherd-service | ||
| 400 | (provision `(nextcloud)) | ||
| 401 | (auto-start? #t) | ||
| 402 | (stop #~(make-kill-destructor)) | ||
| 403 | (start #~(make-forkexec-constructor | ||
| 404 | (list #$(program-file | ||
| 405 | "nextcloud" | ||
| 406 | #~(begin | ||
| 407 | (setenv "QT_QPA_PLATFORM" "wayland-egl;xcb") | ||
| 408 | (apply system* | ||
| 409 | (list | ||
| 410 | #$(file-append (@ (gnu packages sync) nextcloud-client) "/bin/nextcloud"))))))))))) | ||
| 411 | ;; (simple-service | ||
| 412 | ;; 'home-nextcloud-daemon) | ||
| 413 | (simple-service | 418 | (simple-service | 
| 414 | 'home-profile-extra-packages | 419 | 'home-profile-extra-packages | 
| 415 | home-profile-service-type | 420 | home-profile-service-type | 
| @@ -435,13 +440,23 @@ | |||
| 435 | "gnome-themes-extra" "papirus-icon-theme" | 440 | "gnome-themes-extra" "papirus-icon-theme" | 
| 436 | "arc-theme" | 441 | "arc-theme" | 
| 437 | 442 | ||
| 443 | "xdg-desktop-portal-gnome" | ||
| 444 | |||
| 438 | "fd" | 445 | "fd" | 
| 439 | "nautilus" | 446 | "nautilus" | 
| 440 | "qbittorrent" | 447 | "qbittorrent" | 
| 441 | "kdenlive" "gimp" | 448 | "kdenlive" "gimp" | 
| 442 | "blender" | 449 | "blender" | 
| 443 | 450 | ||
| 444 | "ripgrep" "curl")))))) | 451 | "ripgrep" "curl" | 
| 452 | |||
| 453 | "texlive" "texlive-collection-basic" | ||
| 454 | "texlive-bin" "texlive-collection-latex" | ||
| 455 | "texlive-collection-fontsrecommended" | ||
| 456 | "texlive-collection-pictures" | ||
| 457 | "texlive-collection-latexextra" | ||
| 458 | "texlive-dvipng")))))) | ||
| 459 | |||
| 445 | 460 | ||
| 446 | (define-public (feature-nonfree-kernel) | 461 | (define-public (feature-nonfree-kernel) | 
| 447 | (feature-kernel | 462 | (feature-kernel | 
