(define-module (dom0 home) #:use-module (gnu) #:use-module (gnu packages gnupg) #:use-module (gnu services) #:use-module (gnu home) #:use-module (gnu home services) #:use-module (gnu home services pm) #:use-module (gnu home services sound) #:use-module (gnu home services shells) #:use-module (gnu home services desktop) #:use-module (gnu home services gnupg) #:use-module (gnu home services xdg) #:use-module (nongnu packages nvidia) #:use-module (nongnu services nvidia) #:use-module (guix gexp) #:use-module (nonguix transformations) #:export (dom0-home-environment)) (use-package-modules compression gnome gnome-xyz music video fonts freedesktop linux package-management pulseaudio ssh terminals xdisorg xorg glib virtualization wm messaging gstreamer) (define dom0-home-environment (home-environment (services (list (simple-service 'profile-env-vars-service home-environment-variables-service-type '(;; Sort dot files first in ls ("LC_COLLATE" . "C") ;; vim instead of nano ("VISUAL" . "vim") ("EDITOR" . "vim") ;; Wayland ("XDG_CURRENT_DESKTOP" . "sway") ("XDG_SESSION_TYPE" . "wayland") ("RTC_USE_PIPEWIRE" . "true") ("SDL_VIDEODRIVER" . "wayland") ("MOZ_ENABLE_WAYLAND" . "1") ("CLUTTER_BACKEND" . "wayland") ("ELM_ENGINE" . "wayland_egl") ("ECORE_EVAS_ENGINE" . "wayland-egl") ("QT_QPA_PLATFORM" . "wayland-egl") ;; JAVA ("_JAVA_AWT_WM_NONREPARENTING" . #t) ;; env-vars for Flatpak visibility ("XDG_DATA_DIRS" . "$XDG_DATA_DIRS:$HOME/.local/share/flatpak/exports/share"))) (service home-bash-service-type (home-bash-configuration (bash-profile (list (local-file "../files/scripts/sway-login") (plain-file "bash-profile" "flatpak -u remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo"))) (bashrc (list (local-file "../files/scripts/gpg-agent-tty"))))) (simple-service 'xdg-user-directories-config-service home-xdg-user-directories-service-type (home-xdg-user-directories-configuration (download "$HOME/Downloads"))) (service home-xdg-configuration-files-service-type `(("sway/config" ,(local-file "../files/misc-config/dom0-sway-config")))) (service home-gpg-agent-service-type (home-gpg-agent-configuration (pinentry-program (file-append pinentry "/bin/pinentry")) (ssh-support? #t))) (service home-dbus-service-type) (service home-pipewire-service-type (home-pipewire-configuration (pipewire (replace-mesa pipewire)))))) (packages (append (map replace-mesa (list flatpak sway)) (list xorg-server-xwayland swayidle swaylock fuzzel foot grimshot wl-clipboard network-manager-applet ;; XDG and Flatpak dependency (list glib "bin") xdg-desktop-portal xdg-desktop-portal-gtk xdg-desktop-portal-wlr xdg-utils xdg-dbus-proxy shared-mime-info ;; virt-man virt-manager ;; Audio alsa-utils pavucontrol ;; gstreamer gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav ;; General openssh zip unzip))))) dom0-home-environment