summaryrefslogtreecommitdiff
path: root/dom0/home.scm
blob: 0b76b533dfd84daff59a270721a75dabdd9d595d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
(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 (guix gexp)
 #:export (dom0-home-environment))
 
 (use-package-modules compression gnome gnome-xyz video fonts freedesktop
		      linux package-management pulseaudio ssh 
		      terminals xdisorg xorg glib virtualization
		      wm messaging)
 
 (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/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)))

      (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

			      ;; Audio
 			      alsa-utils pavucontrol
	
			      ;; General
		     	      openssh zip unzip)))))