summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorc0co.channel <c0co.channel@braincrime.com>2025-09-10 18:14:22 +0100
committerc0co.channel <c0co.channel@braincrime.com>2025-09-10 18:14:22 +0100
commitb58749efa6889c66016e73d6bbb7c239a991fb38 (patch)
tree94436cd9b947856bcc7b18f9533511660bf99dc2
parent763668339c9c2b5c677ccbc0674c1777258681c8 (diff)
parentcd080424127bb8e91ba4df7f36aa7b541d35752b (diff)
Merge remote-tracking branch 'origin/corpo-nonefi'
-rw-r--r--dom0/files/misc-config/sway-config6
-rw-r--r--dom0/home-laptop.scm89
-rw-r--r--dom0/home.scm50
-rw-r--r--dom0/system-laptop.scm16
-rw-r--r--dom0/system.scm11
-rw-r--r--patches/libvirt-qemu-caps.patch73
-rw-r--r--vmstore/corpo/corpo-system.scm68
-rw-r--r--vmstore/corpo/files/nonguix-signing-key.pub6
-rw-r--r--vmstore/corpo/home.scm32
9 files changed, 259 insertions, 92 deletions
diff --git a/dom0/files/misc-config/sway-config b/dom0/files/misc-config/sway-config
index e654cea..60e6eed 100644
--- a/dom0/files/misc-config/sway-config
+++ b/dom0/files/misc-config/sway-config
@@ -26,9 +26,9 @@ output * bg $HOME/.config/guix-config/dom0/files/wallpapers/taclnc.png fill
# Example configuration:
#
# output HDMI-A-1 resolution 1920x1080 position 1920,0
-output * resolution 1920x1080 position 1920,0
+output * resolution 1920x1080
exec dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY
-exec spice-vdagent
+# exec spice-vdagent
# You can get the names of your outputs by running: swaymsg -t get_outputs
### Idle configuration
@@ -222,7 +222,7 @@ bar {
# When the status_command prints a new line to stdout, swaybar updates.
# The default just shows the current date and time.
- status_command while date +'%Y-%m-%d %X'; do sleep 1; done
+ status_command while (echo "! ! WARNING ! ! THIS IS Dom0 ! ! $(date +'%Y-%m-%d %X')"); do sleep 1; done
colors {
statusline #ffffff
diff --git a/dom0/home-laptop.scm b/dom0/home-laptop.scm
new file mode 100644
index 0000000..f1146b7
--- /dev/null
+++ b/dom0/home-laptop.scm
@@ -0,0 +1,89 @@
+(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 (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 (list xorg-server-xwayland
+ sway swayidle swaylock fuzzel foot
+ grimshot wl-clipboard network-manager-applet
+ xdg-desktop-portal xdg-desktop-portal-gtk
+ xdg-desktop-portal-wlr xdg-utils xdg-dbus-proxy shared-mime-info
+
+ ;; Flatpak and XDG
+ flatpak (list glib "bin") ; flatpak dependency
+ 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))))
diff --git a/dom0/home.scm b/dom0/home.scm
index ee1028d..0b76b53 100644
--- a/dom0/home.scm
+++ b/dom0/home.scm
@@ -10,13 +10,14 @@
#: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 fonts freedesktop
+ (use-package-modules compression gnome gnome-xyz video fonts freedesktop
linux package-management pulseaudio ssh
terminals xdisorg xorg glib virtualization
- wm)
+ wm messaging)
(define dom0-home-environment
(home-environment
@@ -40,12 +41,24 @@
("CLUTTER_BACKEND" . "wayland")
("ELM_ENGINE" . "wayland_egl")
("ECORE_EVAS_ENGINE" . "wayland-egl")
- ("QT_QPA_PLATFORM" . "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")))
+ (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"))))
@@ -55,20 +68,23 @@
(pinentry-program
(file-append pinentry "/bin/pinentry"))
(ssh-support? #t)))
+
(service home-dbus-service-type)
(service home-pipewire-service-type)))
- (packages (list xorg-server-xwayland
- sway swayidle swaylock fuzzel foot
- grimshot wl-clipboard network-manager-applet
- xdg-desktop-portal xdg-desktop-portal-gtk
- xdg-desktop-portal-wlr xdg-utils xdg-dbus-proxy shared-mime-info
-
- ;; Flatpak
- flatpak (list glib "bin")
+ (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
- virt-manager openssh zip unzip))))
+ ;; Audio
+ alsa-utils pavucontrol
+
+ ;; General
+ openssh zip unzip)))))
diff --git a/dom0/system-laptop.scm b/dom0/system-laptop.scm
index d7f9ba5..20bdc89 100644
--- a/dom0/system-laptop.scm
+++ b/dom0/system-laptop.scm
@@ -26,13 +26,13 @@
;; Users ('root' is implicit).
(users (cons* (user-account
- (name "dom0")
- (comment "dom0")
- (group "users")
- (home-directory "/home/dom0")
- (supplementary-groups '("wheel" "libvirt" "kvm"
+ (name "dom0")
+ (comment "dom0")
+ (group "users")
+ (home-directory "/home/dom0")
+ (supplementary-groups '("wheel" "libvirt" "kvm"
"netdev" "audio" "video")))
- %base-user-accounts))
+ %base-user-accounts))
(bootloader (bootloader-configuration
(bootloader grub-efi-bootloader)
@@ -94,8 +94,7 @@
(list
;; NVIDIA
(service nvidia-service-type)
- ;(service kernel-module-loader-service-type
- ;'("nvidia"))
+
;; systemd dependencies
(service elogind-service-type)
@@ -171,5 +170,6 @@
(packages (cons* vim
git
cryptsetup
+ virt-manager
strace
%base-packages)))
diff --git a/dom0/system.scm b/dom0/system.scm
index 4a0cae9..72039a1 100644
--- a/dom0/system.scm
+++ b/dom0/system.scm
@@ -42,11 +42,11 @@
;; replace post-install
(swap-devices (list (swap-space
(target (uuid
- "c7e7ee28-23ba-4ec1-b206-19a4e6297083")))))
+ "c7e7ee28-23ba-4ec1-b206-19a4e6297083")))))
;; luks setup - uncomment post-install
;; and provide source UUID once known
(mapped-devices (list (mapped-device
- (source (uuid "61e732e5-97ca-41d8-a1cf-3672eb97e6f8")
+ (source (uuid "61e732e5-97ca-41d8-a1cf-3672eb97e6f8"))
(target "system-root")
(type luks-device-mapping))))
@@ -94,8 +94,7 @@
(list
;; NVIDIA
(service nvidia-service-type)
- ;(service kernel-module-loader-service-type
- ;'("nvidia"))
+
;; systemd dependencies
(service elogind-service-type)
@@ -157,7 +156,8 @@
;; Virtualization
(service libvirt-service-type
(libvirt-configuration
- (libvirt (patch-libvirt libvirt))))
+ (libvirt (patch-libvirt libvirt))
+ (qemu (replace-mesa qemu))))
(service virtlog-service-type)
;; udev
@@ -170,6 +170,7 @@
;; Packages (system-wide)
(packages (cons* vim
git
+ (replace-mesa virt-manager)
cryptsetup
strace
%base-packages)))
diff --git a/patches/libvirt-qemu-caps.patch b/patches/libvirt-qemu-caps.patch
new file mode 100644
index 0000000..dd110a6
--- /dev/null
+++ b/patches/libvirt-qemu-caps.patch
@@ -0,0 +1,73 @@
+From e7239c619fcaf35b8b605ce07c5d5b15351b3a62 Mon Sep 17 00:00:00 2001
+From: anonymix007 <48598263+anonymix007@users.noreply.github.com>
+Date: Wed, 4 Jun 2025 12:05:23 +0300
+Subject: [PATCH] qemu: capabilities: Check if cpuModels is not NULL before
+ trying to dereference it
+
+accel->cpuModels field might be NULL if QEMU does not return CPU models.
+The following backtrace is observed in such cases:
+0 virQEMUCapsProbeQMPCPUDefinitions (qemuCaps=qemuCaps@entry=0x7f1890003ae0, accel=accel@entry=0x7f1890003c10, mon=mon@entry=0x7f1890005270)
+ at ../src/qemu/qemu_capabilities.c:3091
+1 0x00007f18b42fa7b1 in virQEMUCapsInitQMPMonitor (qemuCaps=qemuCaps@entry=0x7f1890003ae0, mon=0x7f1890005270) at ../src/qemu/qemu_capabilities.c:5746
+2 0x00007f18b42fafaf in virQEMUCapsInitQMPSingle (qemuCaps=qemuCaps@entry=0x7f1890003ae0, libDir=libDir@entry=0x7f186c1e70f0 "/var/lib/libvirt/qemu",
+ runUid=runUid@entry=955, runGid=runGid@entry=955, onlyTCG=onlyTCG@entry=false) at ../src/qemu/qemu_capabilities.c:5832
+3 0x00007f18b42fb1a5 in virQEMUCapsInitQMP (qemuCaps=0x7f1890003ae0, libDir=0x7f186c1e70f0 "/var/lib/libvirt/qemu", runUid=955, runGid=955)
+ at ../src/qemu/qemu_capabilities.c:5848
+4 virQEMUCapsNewForBinaryInternal (hostArch=VIR_ARCH_X86_64, binary=binary@entry=0x7f1868002fc0 "/usr/bin/qemu-system-alpha",
+ libDir=0x7f186c1e70f0 "/var/lib/libvirt/qemu", runUid=955, runGid=955,
+ hostCPUSignature=0x7f186c1e9f20 "AuthenticAMD, AMD Ryzen 9 7950X 16-Core Processor, family: 25, model: 97, stepping: 2", microcodeVersion=174068233,
+ kernelVersion=0x7f186c194200 "6.14.9-arch1-1 #1 SMP PREEMPT_DYNAMIC Thu, 29 May 2025 21:42:15 +0000", cpuData=0x7f186c1ea490)
+ at ../src/qemu/qemu_capabilities.c:5907
+5 0x00007f18b42fb4c9 in virQEMUCapsNewData (binary=0x7f1868002fc0 "/usr/bin/qemu-system-alpha", privData=0x7f186c194280)
+ at ../src/qemu/qemu_capabilities.c:5942
+6 0x00007f18bd42d302 in virFileCacheNewData (cache=0x7f186c193730, name=0x7f1868002fc0 "/usr/bin/qemu-system-alpha") at ../src/util/virfilecache.c:206
+7 virFileCacheValidate (cache=cache@entry=0x7f186c193730, name=name@entry=0x7f1868002fc0 "/usr/bin/qemu-system-alpha", data=data@entry=0x7f18b67c37c0)
+ at ../src/util/virfilecache.c:269
+8 0x00007f18bd42d5b8 in virFileCacheLookup (cache=cache@entry=0x7f186c193730, name=name@entry=0x7f1868002fc0 "/usr/bin/qemu-system-alpha")
+ at ../src/util/virfilecache.c:301
+9 0x00007f18b42fb679 in virQEMUCapsCacheLookup (cache=cache@entry=0x7f186c193730, binary=binary@entry=0x7f1868002fc0 "/usr/bin/qemu-system-alpha")
+ at ../src/qemu/qemu_capabilities.c:6036
+10 0x00007f18b42fb785 in virQEMUCapsInitGuest (caps=<optimized out>, cache=<optimized out>, hostarch=VIR_ARCH_X86_64, guestarch=VIR_ARCH_ALPHA)
+ at ../src/qemu/qemu_capabilities.c:1037
+11 virQEMUCapsInit (cache=0x7f186c193730) at ../src/qemu/qemu_capabilities.c:1229
+12 0x00007f18b431d311 in virQEMUDriverCreateCapabilities (driver=driver@entry=0x7f186c01f410) at ../src/qemu/qemu_conf.c:1553
+13 0x00007f18b431d663 in virQEMUDriverGetCapabilities (driver=0x7f186c01f410, refresh=<optimized out>) at ../src/qemu/qemu_conf.c:1623
+14 0x00007f18b435e3e4 in qemuConnectGetVersion (conn=<optimized out>, version=0x7f18b67c39b0) at ../src/qemu/qemu_driver.c:1492
+15 0x00007f18bd69c5e8 in virConnectGetVersion (conn=0x55bc5f4cda20, hvVer=hvVer@entry=0x7f18b67c39b0) at ../src/libvirt-host.c:201
+16 0x000055bc34ef3627 in remoteDispatchConnectGetVersion (server=0x55bc5f4b93f0, msg=0x55bc5f4cdf60, client=0x55bc5f4c66d0, rerr=0x7f18b67c3a80,
+ ret=0x55bc5f4b8670) at src/remote/remote_daemon_dispatch_stubs.h:1265
+17 remoteDispatchConnectGetVersionHelper (server=0x55bc5f4b93f0, client=0x55bc5f4c66d0, msg=0x55bc5f4cdf60, rerr=0x7f18b67c3a80, args=0x0, ret=0x55bc5f4b8670)
+ at src/remote/remote_daemon_dispatch_stubs.h:1247
+18 0x00007f18bd5506da in virNetServerProgramDispatchCall (prog=0x55bc5f4cae90, server=0x55bc5f4b93f0, client=0x55bc5f4c66d0, msg=0x55bc5f4cdf60)
+ at ../src/rpc/virnetserverprogram.c:423
+19 virNetServerProgramDispatch (prog=0x55bc5f4cae90, server=server@entry=0x55bc5f4b93f0, client=0x55bc5f4c66d0, msg=0x55bc5f4cdf60)
+ at ../src/rpc/virnetserverprogram.c:299
+20 0x00007f18bd556c32 in virNetServerProcessMsg (srv=srv@entry=0x55bc5f4b93f0, client=<optimized out>, prog=<optimized out>, msg=<optimized out>)
+ at ../src/rpc/virnetserver.c:135
+21 0x00007f18bd556f77 in virNetServerHandleJob (jobOpaque=0x55bc5f4d2bb0, opaque=0x55bc5f4b93f0) at ../src/rpc/virnetserver.c:155
+22 0x00007f18bd47dd19 in virThreadPoolWorker (opaque=<optimized out>) at ../src/util/virthreadpool.c:164
+23 0x00007f18bd47d253 in virThreadHelper (data=0x55bc5f4b7810) at ../src/util/virthread.c:256
+24 0x00007f18bce117eb in start_thread (arg=<optimized out>) at pthread_create.c:448
+25 0x00007f18bce9518c in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
+
+Signed-off-by: anonymix007 <anonymix007@users.noreply.github.com>
+---
+ src/qemu/qemu_capabilities.c | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
+index 3cbdf3de82..8ba528fc07 100644
+--- a/src/qemu/qemu_capabilities.c
++++ b/src/qemu/qemu_capabilities.c
+@@ -3087,6 +3087,9 @@ virQEMUCapsProbeQMPCPUDefinitions(virQEMUCaps *qemuCaps,
+ if (virQEMUCapsFetchCPUDefinitions(mon, qemuCaps->arch, &accel->cpuModels) < 0)
+ return -1;
+
++ if (!accel->cpuModels)
++ return 0;
++
+ defs = accel->cpuModels;
+ for (i = 0; i < defs->ncpus; i++) {
+ if (STREQ_NULLABLE(defs->cpus[i].name, "max")) {
+--
+2.51.0
diff --git a/vmstore/corpo/corpo-system.scm b/vmstore/corpo/corpo-system.scm
index 8f84c0e..930990f 100644
--- a/vmstore/corpo/corpo-system.scm
+++ b/vmstore/corpo/corpo-system.scm
@@ -11,7 +11,7 @@
(use-service-modules linux guix desktop pm audio
networking dbus xorg avahi spice)
(use-package-modules linux audio libusb wm fonts
- freedesktop vim cryptsetup)
+ freedesktop vim security-token cryptsetup)
(operating-system
(locale "en_GB.utf8")
@@ -26,44 +26,23 @@
(password (crypt "worker" "$6$abc"))
(group "users")
(home-directory "/home/corpo")
- (supplementary-groups '("wheel" "netdev" "audio" "video")))
+ (supplementary-groups '("wheel" "plugdev" "netdev" "audio" "video")))
%base-user-accounts))
(bootloader (bootloader-configuration
- (bootloader grub-efi-bootloader)
- (targets (list "/boot/efi"))
- (keyboard-layout keyboard-layout)))
-
- ;; replace post-install
- (swap-devices (list (swap-space
- (target (uuid
- "7a22a333-6a5d-41fe-93a2-e5781031cfd6")))))
- ;; luks setup - uncomment post-install
- ;; and provide source UUID once known
- (mapped-devices (list (mapped-device
- (source (uuid "0c5d284e-e0c7-4dc3-bbca-f82ee6bb82e3"))
- (target "system-root")
- (type luks-device-mapping))))
-
-
- ;; List of file systems to mount
- ;; Run 'blkid' for UUIDs.
- ;; Will change after install
- (file-systems (cons* (file-system
- (mount-point "/boot/efi")
- (device (uuid "6919-B0C9"
- 'fat32))
- (type "vfat"))
- (file-system
- (device (file-system-label "system-root"))
- (mount-point "/")
- (type "ext4")
- (dependencies mapped-devices))
- %base-file-systems))
+ (bootloader grub-bootloader)
+ (targets '("/dev/vda"))
+ (terminal-outputs '(console))))
+
+ (file-systems (cons (file-system
+ (mount-point "/")
+ (device "/dev/vda1")
+ (type "ext4"))
+ %base-file-systems))
;; Non-free
(kernel linux)
- (kernel-arguments '("modprobe.blacklist=noveau"
+ (kernel-arguments '("modprobe.blacklist=nouveau"
;"nvidia_drm.modeset=1"
"quiet"))
(firmware (list linux-firmware))
@@ -89,8 +68,7 @@
(list
;; NVIDIA
;(service nvidia-service-type)
- ;(service kernel-module-loader-service-type
- ;'("nvidia"))
+
;; systemd dependencies
(service elogind-service-type)
@@ -124,19 +102,9 @@
(using-setuid? #t)))
;; Networking
- ;(service network-manager-service-type)
+ (service network-manager-service-type)
(service wpa-supplicant-service-type)
- (service static-networking-service-type
- (list (static-networking
- (addresses
- (list (network-address
- (device "eth0")
- (value "10.0.2.15/24"))))
- (routes
- (list (network-route
- (destination "default")
- (gateway "10.0.2.2"))))
- (name-servers '("208.67.222.222")))))
+
;; dbus
(service avahi-service-type)
(service udisks-service-type)
@@ -145,7 +113,7 @@
(service polkit-service-type)
(service dbus-root-service-type)
- ;; Cleanup stayle font cache
+ ;; Cleanup stale font cache
fontconfig-file-system-service
;; Power and thermals
@@ -158,9 +126,9 @@
;; Time
(service ntp-service-type)
- ;; udev
+ ;; udev including yubikey
(udev-rules-service 'pipewire-add-udev-rules pipewire)
-
+ (udev-rules-service 'fido2 libfido2 #:groups '("plugdev"))
;; corpo home
(service guix-home-service-type
`(("worker" ,corpo-home-environment))))))
diff --git a/vmstore/corpo/files/nonguix-signing-key.pub b/vmstore/corpo/files/nonguix-signing-key.pub
new file mode 100644
index 0000000..56ee811
--- /dev/null
+++ b/vmstore/corpo/files/nonguix-signing-key.pub
@@ -0,0 +1,6 @@
+(public-key
+ (ecc
+ (curve Ed25519)
+ (q #C1FD53E5D4CE971933EC50C9F307AE2171A2D3B52C804642A7A35F84F3A4EA98#)
+ )
+ )
diff --git a/vmstore/corpo/home.scm b/vmstore/corpo/home.scm
index 5211c57..a627839 100644
--- a/vmstore/corpo/home.scm
+++ b/vmstore/corpo/home.scm
@@ -13,9 +13,9 @@
#:use-module (guix gexp)
#:export (corpo-home-environment))
- (use-package-modules compression gnome fonts freedesktop
+ (use-package-modules compression gnome gnome-xyz video fonts freedesktop
linux package-management pulseaudio
- terminals xdisorg xorg glib wm)
+ terminals xdisorg xorg glib wm messaging)
(define corpo-home-environment
(home-environment
@@ -39,12 +39,26 @@
("CLUTTER_BACKEND" . "wayland")
("ELM_ENGINE" . "wayland_egl")
("ECORE_EVAS_ENGINE" . "wayland-egl")
- ("QT_QPA_PLATFORM" . "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")))))
-
+ (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")))))
+
+
+ (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"))))
@@ -54,11 +68,11 @@
(packages (list xorg-server-xwayland
sway swayidle swaylock fuzzel foot
grimshot wl-clipboard network-manager-applet
- xdg-desktop-portal xdg-desktop-portal-gtk
- xdg-desktop-portal-wlr xdg-utils xdg-dbus-proxy shared-mime-info
- ;; Flatpak
- flatpak (list glib "bin") ; flatpak dependency
+ ;; XDG and Flatpak dependency
+ flatpak (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