From be45b9fff3c435689ed21f4ec8fc32803b5858c1 Mon Sep 17 00:00:00 2001 From: Alissa Istleyeva Date: Wed, 10 Sep 2025 00:16:51 +0500 Subject: Change bootloader to non-efi GRUB --- vmstore/corpo/corpo-system.scm | 39 +++++++---------------------- vmstore/corpo/files/nonguix-signing-key.pub | 6 +++++ 2 files changed, 15 insertions(+), 30 deletions(-) create mode 100644 vmstore/corpo/files/nonguix-signing-key.pub diff --git a/vmstore/corpo/corpo-system.scm b/vmstore/corpo/corpo-system.scm index 8f84c0e..3544847 100644 --- a/vmstore/corpo/corpo-system.scm +++ b/vmstore/corpo/corpo-system.scm @@ -30,36 +30,15 @@ %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) 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#) + ) + ) -- cgit v1.2.3 From 32c943e19323b7be2a15aa18d575e03074a7e6c4 Mon Sep 17 00:00:00 2001 From: "c0co.channel" Date: Wed, 10 Sep 2025 01:32:17 +0100 Subject: Tidy .scms, more XDG env vars, virtman to syswide --- dom0/files/misc-config/sway-config | 4 +-- dom0/home.scm | 31 +++++++++++----- dom0/system-laptop.scm | 16 ++++----- dom0/system.scm | 1 + patches/libvirt-qemu-caps.patch | 73 ++++++++++++++++++++++++++++++++++++++ vmstore/corpo/corpo-system.scm | 29 +++++---------- vmstore/corpo/home.scm | 26 +++++++++++--- 7 files changed, 137 insertions(+), 43 deletions(-) create mode 100644 patches/libvirt-qemu-caps.patch diff --git a/dom0/files/misc-config/sway-config b/dom0/files/misc-config/sway-config index e654cea..fd4e37f 100644 --- a/dom0/files/misc-config/sway-config +++ b/dom0/files/misc-config/sway-config @@ -26,7 +26,7 @@ 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 # You can get the names of your outputs by running: swaymsg -t get_outputs @@ -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.scm b/dom0/home.scm index ee1028d..16bec95 100644 --- a/dom0/home.scm +++ b/dom0/home.scm @@ -13,10 +13,10 @@ #: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 +40,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") + ("flatpak -u remote-add --if-not-exists flathub https://flathub.org/repo/flathub.pakrepo")) (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 +67,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 + grimshot wl-clipboard wl-paste 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 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 - virt-manager openssh zip unzip)))) + 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 4b5b03c..6cd02c5 100644 --- a/dom0/system.scm +++ b/dom0/system.scm @@ -170,6 +170,7 @@ ;; Packages (system-wide) (packages (cons* vim git + 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=, cache=, 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=) at ../src/qemu/qemu_conf.c:1623 +14 0x00007f18b435e3e4 in qemuConnectGetVersion (conn=, 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=, prog=, msg=) + 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=) at ../src/util/virthreadpool.c:164 +23 0x00007f18bd47d253 in virThreadHelper (data=0x55bc5f4b7810) at ../src/util/virthread.c:256 +24 0x00007f18bce117eb in start_thread (arg=) at pthread_create.c:448 +25 0x00007f18bce9518c in __GI___clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78 + +Signed-off-by: anonymix007 +--- + 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 3544847..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,7 +26,7 @@ (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 @@ -42,7 +42,7 @@ ;; Non-free (kernel linux) - (kernel-arguments '("modprobe.blacklist=noveau" + (kernel-arguments '("modprobe.blacklist=nouveau" ;"nvidia_drm.modeset=1" "quiet")) (firmware (list linux-firmware)) @@ -68,8 +68,7 @@ (list ;; NVIDIA ;(service nvidia-service-type) - ;(service kernel-module-loader-service-type - ;'("nvidia")) + ;; systemd dependencies (service elogind-service-type) @@ -103,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) @@ -124,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 @@ -137,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/home.scm b/vmstore/corpo/home.scm index 5211c57..eaf1a7c 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 @@ -40,11 +40,25 @@ ("ELM_ENGINE" . "wayland_egl") ("ECORE_EVAS_ENGINE" . "wayland-egl") ("QT_QPA_PLATFORM" . "wayland-egl"))) + + ;; JAVA + ("_JAVA_AWT_WM_NONREPARENTING") + + ;; env-vars for Flatpak visibility + ("XDG_DATA_DIRS". "$XDG_DATA_DIRS:$HOME/.local/share/flatpak/exports/share" #t) + (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") + ("flatpak -u remote-add --if-not-exists flathub https://flathub.org/repo/flathub.pakrepo"))))) + + + (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")))) @@ -53,12 +67,14 @@ (packages (list xorg-server-xwayland sway swayidle swaylock fuzzel foot - grimshot wl-clipboard network-manager-applet + grimshot wl-clipboard wl-paste 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-desktop-portal xdg-desktop-portal-gtk xdg-desktop-portal-wlr + xdg-utils xdg-bus-proxy shared-mime-info ;; Audio alsa-utils pavucontrol -- cgit v1.2.3 From cd080424127bb8e91ba4df7f36aa7b541d35752b Mon Sep 17 00:00:00 2001 From: "c0co.channel" Date: Wed, 10 Sep 2025 17:50:26 +0100 Subject: Rework for dekstop and nvidia display src --- dom0/files/misc-config/sway-config | 4 +- dom0/files/scripts/sway-login | 2 +- dom0/files/scripts/sway-login-laptop | 3 ++ dom0/home-laptop.scm | 89 ++++++++++++++++++++++++++++++++++++ dom0/home.scm | 33 ++++++------- dom0/system.scm | 14 +++--- vmstore/corpo/home.scm | 20 ++++---- 7 files changed, 128 insertions(+), 37 deletions(-) create mode 100644 dom0/files/scripts/sway-login-laptop create mode 100644 dom0/home-laptop.scm diff --git a/dom0/files/misc-config/sway-config b/dom0/files/misc-config/sway-config index fd4e37f..60e6eed 100644 --- a/dom0/files/misc-config/sway-config +++ b/dom0/files/misc-config/sway-config @@ -28,7 +28,7 @@ output * bg $HOME/.config/guix-config/dom0/files/wallpapers/taclnc.png fill # output HDMI-A-1 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 (echo "!! WARNING !! THIS IS Dom0 !! $(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/files/scripts/sway-login b/dom0/files/scripts/sway-login index 3792a85..2711786 100644 --- a/dom0/files/scripts/sway-login +++ b/dom0/files/scripts/sway-login @@ -1,3 +1,3 @@ if [ -z "$WAYLAND_DISPLAY" ] && [ "$XDG_VTNR" -eq 1 ]; then - exec sway; + exec sway --unsupported-gpu; fi diff --git a/dom0/files/scripts/sway-login-laptop b/dom0/files/scripts/sway-login-laptop new file mode 100644 index 0000000..3792a85 --- /dev/null +++ b/dom0/files/scripts/sway-login-laptop @@ -0,0 +1,3 @@ +if [ -z "$WAYLAND_DISPLAY" ] && [ "$XDG_VTNR" -eq 1 ]; then + exec sway; +fi 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 16bec95..0b76b53 100644 --- a/dom0/home.scm +++ b/dom0/home.scm @@ -10,6 +10,7 @@ #: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)) @@ -51,7 +52,7 @@ (service home-bash-service-type (home-bash-configuration (bash-profile (list (local-file "files/scripts/sway-login") - ("flatpak -u remote-add --if-not-exists flathub https://flathub.org/repo/flathub.pakrepo")) + (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 @@ -71,19 +72,19 @@ (service home-dbus-service-type) (service home-pipewire-service-type))) - (packages (list xorg-server-xwayland - sway swayidle swaylock fuzzel foot - grimshot wl-clipboard wl-paste 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 + (packages (append (map replace-mesa (list flatpak sway)) + (list xorg-server-xwayland + swayidle swaylock fuzzel foot + grimshot wl-clipboard network-manager-applet - ;; Audio - alsa-utils pavucontrol - - ;; General - openssh zip unzip)))) + ;; 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))))) diff --git a/dom0/system.scm b/dom0/system.scm index 6cd02c5..72039a1 100644 --- a/dom0/system.scm +++ b/dom0/system.scm @@ -42,11 +42,11 @@ ;; replace post-install (swap-devices (list (swap-space (target (uuid - "7a22a333-6a5d-41fe-93a2-e5781031cfd6"))))) + "c7e7ee28-23ba-4ec1-b206-19a4e6297083"))))) ;; luks setup - uncomment post-install ;; and provide source UUID once known (mapped-devices (list (mapped-device - (source (uuid "0c5d284e-e0c7-4dc3-bbca-f82ee6bb82e3")) + (source (uuid "61e732e5-97ca-41d8-a1cf-3672eb97e6f8")) (target "system-root") (type luks-device-mapping)))) @@ -56,7 +56,7 @@ ;; Will change after install (file-systems (cons* (file-system (mount-point "/boot/efi") - (device (uuid "6919-B0C9" + (device (uuid "3BC7-90B1" 'fat32)) (type "vfat")) (file-system @@ -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,7 +170,7 @@ ;; Packages (system-wide) (packages (cons* vim git - virt-manager + (replace-mesa virt-manager) cryptsetup strace %base-packages))) diff --git a/vmstore/corpo/home.scm b/vmstore/corpo/home.scm index eaf1a7c..a627839 100644 --- a/vmstore/corpo/home.scm +++ b/vmstore/corpo/home.scm @@ -39,25 +39,25 @@ ("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") + ("_JAVA_AWT_WM_NONREPARENTING" . #t) ;; env-vars for Flatpak visibility - ("XDG_DATA_DIRS". "$XDG_DATA_DIRS:$HOME/.local/share/flatpak/exports/share" #t) + ("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") - ("flatpak -u remote-add --if-not-exists flathub https://flathub.org/repo/flathub.pakrepo"))))) + (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")))) + (download "$HOME/Downloads"))) (service home-xdg-configuration-files-service-type `(("sway/config" ,(local-file "./files/misc-config/sway-config")))) @@ -67,14 +67,12 @@ (packages (list xorg-server-xwayland sway swayidle swaylock fuzzel foot - grimshot wl-clipboard wl-paste network-manager-applet - xdg-desktop-portal xdg-desktop-portal-gtk - xdg-desktop-portal-wlr xdg-utils xdg-dbus-proxy shared-mime-info + grimshot wl-clipboard network-manager-applet - ;; 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-bus-proxy shared-mime-info + xdg-utils xdg-dbus-proxy shared-mime-info ;; Audio alsa-utils pavucontrol -- cgit v1.2.3