diff --git a/flake.lock b/flake.lock index 391f49d..b3d8ad0 100644 --- a/flake.lock +++ b/flake.lock @@ -70,11 +70,11 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1751211869, - "narHash": "sha256-1Cu92i1KSPbhPCKxoiVG5qnoRiKTgR5CcGSRyLpOd7Y=", + "lastModified": 1751479989, + "narHash": "sha256-M5KgdpVBVcW4HRVq9/OSRbrxlwsQ1ogEKqnvzsClDqU=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b43c397f6c213918d6cfe6e3550abfe79b5d1c51", + "rev": "34627c90f062da515ea358360f448da57769236e", "type": "github" }, "original": { diff --git a/machines/congenital-optimist/configuration.nix b/machines/congenital-optimist/configuration.nix index 709d234..c63d5e5 100644 --- a/machines/congenital-optimist/configuration.nix +++ b/machines/congenital-optimist/configuration.nix @@ -46,7 +46,7 @@ ../../modules/users/sma.nix # Virtualization configuration - ../../modules/virtualization/incus.nix + ../../modules/virtualization/incus.nix # Re-enabled with LTS version ../../modules/virtualization/libvirt.nix ../../modules/virtualization/podman.nix ]; diff --git a/modules/desktop/common.nix b/modules/desktop/common.nix index b9f1123..fb92519 100644 --- a/modules/desktop/common.nix +++ b/modules/desktop/common.nix @@ -12,8 +12,12 @@ # XDG Portal configuration for Wayland/X11 compatibility xdg.portal = { enable = true; - wlr.enable = true; - extraPortals = [pkgs.xdg-desktop-portal-gtk]; + extraPortals = [ + pkgs.xdg-desktop-portal-wlr + pkgs.xdg-desktop-portal-gtk + ]; + config.common.default = "*"; + config.niri.default = ["wlr" "gtk"]; }; # Display manager and session management diff --git a/modules/virtualization/incus.nix b/modules/virtualization/incus.nix index 25f07d9..06f81f0 100644 --- a/modules/virtualization/incus.nix +++ b/modules/virtualization/incus.nix @@ -3,12 +3,12 @@ virtualisation.incus = { enable = true; ui.enable = true; - package = pkgs.incus; + package = pkgs.incus-lts; # Use LTS version to avoid cowsql build issues }; - environment.systemPackages = with pkgs; [ - incus - lxc + environment.systemPackages = [ + pkgs.incus-lts + pkgs.lxc ]; networking.firewall.allowedTCPPorts = [ 8443 ]; diff --git a/packages/lab-tool/main.scm b/packages/lab-tool/main.scm index 3b15de6..15803b6 100755 --- a/packages/lab-tool/main.scm +++ b/packages/lab-tool/main.scm @@ -114,15 +114,7 @@ Home lab root: ~a (define (cmd-deploy machine-name . args) "Deploy configuration to machine using deploy-rs" - (let* ((base-options (parse-deploy-options args)) - ;; Auto-skip checks for local machines to speed up deployment - (local-machines '("little-rascal")) - (should-skip-checks (member machine-name local-machines)) - (options (if should-skip-checks - (cons '(skip-checks . #t) base-options) - base-options))) - (when should-skip-checks - (log-info "Auto-skipping checks for local machine: ~a" machine-name)) + (let* ((options (parse-deploy-options args))) (log-info "Deploying to machine: ~a using deploy-rs" machine-name) (if (validate-machine-name machine-name) (let ((result (deploy-machine machine-name "default" options))) diff --git a/packages/lab-tool/utils/config.scm b/packages/lab-tool/utils/config.scm index c8838a0..51abd04 100644 --- a/packages/lab-tool/utils/config.scm +++ b/packages/lab-tool/utils/config.scm @@ -20,8 +20,9 @@ (define default-config `((homelab-root . "/home/geir/Home-lab") (machines . ((congenital-optimist - (type . local) - (hostname . "localhost") + (type . remote) + (hostname . "congenital-optimist.tail807ea.ts.net") + (ssh-alias . "congenital-optimist.tail807ea.ts.net") (ssh-user . "sma") (services . (workstation development))) (sleeper-service diff --git a/packages/lab-tool/utils/ssh.scm b/packages/lab-tool/utils/ssh.scm index 1f9a56d..f6be303 100644 --- a/packages/lab-tool/utils/ssh.scm +++ b/packages/lab-tool/utils/ssh.scm @@ -82,7 +82,10 @@ (port (open-pipe* OPEN_READ "/bin/sh" "-c" ssh-cmd)) (output (get-string-all port)) (status (close-pipe port))) - (values (zero? status) output))))))) + (values (zero? status) output))) + (lambda (key . args) + (log-error "SSH command failed for ~a: ~a ~a" machine-name key args) + (values #f "")))))))))) ;; Copy file to remote machine using scp (define (copy-file-to-remote machine-name local-path remote-path)