From a59a3ba880a671f8774f018db1559cf2cf83b08a Mon Sep 17 00:00:00 2001 From: Peter Rice Date: Thu, 9 Jul 2026 22:43:24 -0400 Subject: [PATCH] microvm: make share protocol globally configurable --- modules/nixos/microvm/guest.nix | 2 +- modules/nixos/microvm/host.nix | 9 +++++++++ modules/services/forgejo.nix | 2 +- modules/services/navidrome.nix | 2 +- 4 files changed, 12 insertions(+), 3 deletions(-) diff --git a/modules/nixos/microvm/guest.nix b/modules/nixos/microvm/guest.nix index db43765..d630b61 100644 --- a/modules/nixos/microvm/guest.nix +++ b/modules/nixos/microvm/guest.nix @@ -38,7 +38,7 @@ source = "/nix/store"; mountPoint = "/nix/.ro-store"; tag = "ro-store"; - proto = "virtiofs"; + inherit (config.microvm) proto; } ]; }; diff --git a/modules/nixos/microvm/host.nix b/modules/nixos/microvm/host.nix index 2de0116..8057eb2 100644 --- a/modules/nixos/microvm/host.nix +++ b/modules/nixos/microvm/host.nix @@ -1,5 +1,13 @@ { inputs, lib, ... }: { + flake.modules.nixos.base.options.microvm.proto = lib.mkOption { + type = lib.types.enum [ + "9p" + "virtiofs" + ]; + default = "virtiofs"; + }; + flake.modules.nixos.core = { config, ... }: let @@ -27,6 +35,7 @@ { networking.hostName = name; networking.domain = config.networking.fqdn; + microvm.proto = config.microvm.proto; } ]; }) vms; diff --git a/modules/services/forgejo.nix b/modules/services/forgejo.nix index 3308228..982bd1d 100644 --- a/modules/services/forgejo.nix +++ b/modules/services/forgejo.nix @@ -71,7 +71,7 @@ in source = "/var/lib/forgejo"; mountPoint = "/var/lib/forgejo"; tag = "forgejo"; - proto = "virtiofs"; + inherit (config.microvm) proto; } ]; diff --git a/modules/services/navidrome.nix b/modules/services/navidrome.nix index 4f0fea4..61eab83 100644 --- a/modules/services/navidrome.nix +++ b/modules/services/navidrome.nix @@ -25,7 +25,7 @@ in source = "/home/peter/annex"; mountPoint = "/var/lib/navidrome/annex"; tag = "music"; - proto = "virtiofs"; + inherit (config.microvm) proto; } ]; }; -- 2.51.2