diff options
Diffstat (limited to 'guix')
| -rw-r--r-- | guix/jd/desktops/base.scm | 24 | ||||
| -rw-r--r-- | guix/jd/home/services/desktop.scm | 54 | ||||
| -rw-r--r-- | guix/jd/home/services/udiskie.scm | 31 |
3 files changed, 68 insertions, 41 deletions
diff --git a/guix/jd/desktops/base.scm b/guix/jd/desktops/base.scm index 69816fe..e95cbd0 100644 --- a/guix/jd/desktops/base.scm +++ b/guix/jd/desktops/base.scm | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | (define-module (jd desktops base) | 1 | (define-module (jd desktops base) |
| 2 | #:use-module (jd packages vpn) | 2 | #:use-module (jd packages vpn) |
| 3 | #:use-module (jd home services polkit) | 3 | #:use-module (jd home services polkit) |
| 4 | #:use-module (jd home services udiskie) | 4 | #:use-module (jd home services desktop) |
| 5 | #:use-module (jd services polkit) | 5 | #:use-module (jd services polkit) |
| 6 | 6 | ||
| 7 | #:use-module (gnu) | 7 | #:use-module (gnu) |
| @@ -10,22 +10,22 @@ | |||
| 10 | #:use-module (gnu home services desktop) | 10 | #:use-module (gnu home services desktop) |
| 11 | #:use-module (gnu home services gnupg) | 11 | #:use-module (gnu home services gnupg) |
| 12 | #:use-module (gnu home services xdg) | 12 | #:use-module (gnu home services xdg) |
| 13 | |||
| 14 | #:use-module (gnu services) | 13 | #:use-module (gnu services) |
| 14 | |||
| 15 | #:use-module (nongnu packages linux) | 15 | #:use-module (nongnu packages linux) |
| 16 | #:use-module (nongnu system linux-initrd)) | 16 | #:use-module (nongnu system linux-initrd)) |
| 17 | 17 | ||
| 18 | (use-package-modules wm gnome gnupg) | 18 | (use-package-modules wm gnome gnupg networking) |
| 19 | (use-service-modules cups desktop networking ssh xorg | 19 | (use-service-modules cups desktop networking ssh xorg |
| 20 | docker virtualization pm sound) | 20 | docker virtualization pm sound dbus) |
| 21 | 21 | ||
| 22 | 22 | ||
| 23 | (define-public %jd-base-home-services | 23 | (define-public %jd-base-home-services |
| 24 | (list | 24 | (list |
| 25 | (service home-xdg-mime-applications-service-type | 25 | (service home-xdg-mime-applications-service-type |
| 26 | (home-xdg-mime-applications-configuration | 26 | (home-xdg-mime-applications-configuration |
| 27 | (default '((inode/directory . emacs-desktop.desktop))) | 27 | (default '((inode/directory . emacs-desktop.desktop) |
| 28 | (default '((application/pdf . emacs-desktop.desktop))) | 28 | (application/pdf . emacs-desktop.desktop))) |
| 29 | (desktop-entries | 29 | (desktop-entries |
| 30 | (list (xdg-desktop-entry | 30 | (list (xdg-desktop-entry |
| 31 | (file "emacs-desktop") | 31 | (file "emacs-desktop") |
| @@ -43,8 +43,8 @@ | |||
| 43 | (simple-service 'some-useful-env-vars-service | 43 | (simple-service 'some-useful-env-vars-service |
| 44 | home-environment-variables-service-type | 44 | home-environment-variables-service-type |
| 45 | `(("GTK_THEME" . "Adwaita:dark") | 45 | `(("GTK_THEME" . "Adwaita:dark") |
| 46 | ("VISUAL" . "emacsclient -a emacs") | 46 | ("VISUAL" . "emacsclient") |
| 47 | ("EDITOR" . "emacsclient -a emacs") | 47 | ("EDITOR" . "emacsclient") |
| 48 | ("PATH" . "$HOME/.bin:$HOME/.npm-global/bin:$PATH") | 48 | ("PATH" . "$HOME/.bin:$HOME/.npm-global/bin:$PATH") |
| 49 | ("XDG_DATA_DIRS" . "$XDG_DATA_DIRS:$HOME/.local/share/flatpak/exports/share"))) | 49 | ("XDG_DATA_DIRS" . "$XDG_DATA_DIRS:$HOME/.local/share/flatpak/exports/share"))) |
| 50 | 50 | ||
| @@ -58,7 +58,9 @@ | |||
| 58 | (default-cache-ttl-ssh 28800) | 58 | (default-cache-ttl-ssh 28800) |
| 59 | (max-cache-ttl-ssh 28800))) | 59 | (max-cache-ttl-ssh 28800))) |
| 60 | 60 | ||
| 61 | (service home-udiskie-service-type) | 61 | (service home-dbus-service-type) |
| 62 | |||
| 63 | (service home-desktop-service-type) | ||
| 62 | (service home-polkit-gnome-service-type))) | 64 | (service home-polkit-gnome-service-type))) |
| 63 | 65 | ||
| 64 | (define-public %jd-base-user-accounts | 66 | (define-public %jd-base-user-accounts |
| @@ -104,6 +106,7 @@ | |||
| 104 | (vpn-plugins (list | 106 | (vpn-plugins (list |
| 105 | network-manager-pptp)))) | 107 | network-manager-pptp)))) |
| 106 | 108 | ||
| 109 | (simple-service 'blueman dbus-root-service-type (list blueman)) | ||
| 107 | (service bluetooth-service-type | 110 | (service bluetooth-service-type |
| 108 | (bluetooth-configuration | 111 | (bluetooth-configuration |
| 109 | (auto-enable? #t))) | 112 | (auto-enable? #t))) |
| @@ -126,6 +129,7 @@ | |||
| 126 | polkit-network-manager-service | 129 | polkit-network-manager-service |
| 127 | 130 | ||
| 128 | (modify-services %desktop-services | 131 | (modify-services %desktop-services |
| 132 | (delete screen-locker-service-type) | ||
| 129 | (delete network-manager-service-type)))) | 133 | (delete network-manager-service-type)))) |
| 130 | 134 | ||
| 131 | ;; Odin is a base for my operating systems | 135 | ;; Odin is a base for my operating systems |
diff --git a/guix/jd/home/services/desktop.scm b/guix/jd/home/services/desktop.scm new file mode 100644 index 0000000..bb4916e --- /dev/null +++ b/guix/jd/home/services/desktop.scm | |||
| @@ -0,0 +1,54 @@ | |||
| 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 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 | #:use-module (guix gexp)) | ||
| 13 | |||
| 14 | (define (desktop-profile-service config) | ||
| 15 | (specifications->packages '("udiskie" | ||
| 16 | "syncthing-gtk" | ||
| 17 | "network-manager-applet"))) | ||
| 18 | |||
| 19 | (define (desktop-shepherd-services config) | ||
| 20 | (list (shepherd-service | ||
| 21 | (documentation "Udiskie daemon with tray.") | ||
| 22 | (provision '(udiskie)) | ||
| 23 | (start #~(make-forkexec-constructor | ||
| 24 | (list #$(file-append udiskie | ||
| 25 | "/bin/udiskie") | ||
| 26 | "-t"))) | ||
| 27 | (stop #~(make-kill-destructor))) | ||
| 28 | |||
| 29 | (shepherd-service | ||
| 30 | (documentation "Syncthing daemon with tray.") | ||
| 31 | (provision '(syncthing-gtk)) | ||
| 32 | (start #~(make-forkexec-constructor | ||
| 33 | (list #$(file-append syncthing-gtk | ||
| 34 | "/bin/syncthing-gtk") | ||
| 35 | "-m"))) | ||
| 36 | (stop #~(make-kill-destructor))) | ||
| 37 | |||
| 38 | (shepherd-service | ||
| 39 | (documentation "NetworkManager tray.") | ||
| 40 | (provision '(nm-applet)) | ||
| 41 | (start #~(make-forkexec-constructor | ||
| 42 | (list #$(file-append network-manager-applet | ||
| 43 | "/bin/nm-applet")))) | ||
| 44 | (stop #~(make-kill-destructor))))) | ||
| 45 | |||
| 46 | (define-public home-desktop-service-type | ||
| 47 | (service-type (name 'home-udiskie) | ||
| 48 | (extensions (list (service-extension home-profile-service-type | ||
| 49 | desktop-profile-service) | ||
| 50 | (service-extension home-shepherd-service-type | ||
| 51 | desktop-shepherd-services))) | ||
| 52 | (default-value #f) | ||
| 53 | (description "Runs desktop services."))) | ||
| 54 | |||
diff --git a/guix/jd/home/services/udiskie.scm b/guix/jd/home/services/udiskie.scm deleted file mode 100644 index ac8a16a..0000000 --- a/guix/jd/home/services/udiskie.scm +++ /dev/null | |||
| @@ -1,31 +0,0 @@ | |||
| 1 | (define-module (jd home services udiskie) | ||
| 2 | #:use-module (gnu packages) | ||
| 3 | #:use-module (gnu packages freedesktop) | ||
| 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 | (define (udiskie-profile-service config) | ||
| 11 | (specifications->packages '("udiskie"))) | ||
| 12 | |||
| 13 | (define (udiskie-shepherd-service config) | ||
| 14 | (list (shepherd-service | ||
| 15 | (documentation "udiskie daemon") | ||
| 16 | (provision '(udiskie)) | ||
| 17 | (start #~(make-forkexec-constructor | ||
| 18 | (list #$(file-append udiskie | ||
| 19 | "/bin/udiskie") | ||
| 20 | "-t"))) | ||
| 21 | (stop #~(make-kill-destructor))))) | ||
| 22 | |||
| 23 | (define-public home-udiskie-service-type | ||
| 24 | (service-type (name 'home-udiskie) | ||
| 25 | (extensions (list (service-extension home-profile-service-type | ||
| 26 | udiskie-profile-service) | ||
| 27 | (service-extension home-shepherd-service-type | ||
| 28 | udiskie-shepherd-service))) | ||
| 29 | (default-value #f) | ||
| 30 | (description "Runs udiskie daemon."))) | ||
| 31 | |||
