wsl: enable binfmt

This commit is contained in:
NullBite 2024-03-13 22:19:25 +00:00
parent 211d9edaaa
commit 89f7debf17
Signed by: nullbite
GPG Key ID: 6C4D545385D4925A
2 changed files with 17 additions and 5 deletions

View File

@ -2,7 +2,12 @@
{ {
config = { config = {
networking.hostName = "nixos-wsl"; networking.hostName = "nixos-wsl";
nixfiles.profile.base.enable = true;
nixfiles = {
profile.base.enable = true;
binfmt.enable = true;
};
networking.networkmanager.enable = false; networking.networkmanager.enable = false;
programs.gnupg.agent = { programs.gnupg.agent = {
enable = true; enable = true;

View File

@ -1,4 +1,4 @@
{ pkgs, config, lib, ... }: { pkgs, config, lib, options, ... }:
let let
configForSystem = (system: configForSystem = (system:
@ -27,9 +27,16 @@ in
}; };
}; };
config = lib.mkMerge [ config = let
(lib.mkIf (cfg.enable && (builtins.length emulatedSystems) > 0) { enable = cfg.enable && (builtins.length emulatedSystems) > 0;
boot.binfmt = {inherit emulatedSystems;}; in lib.mkMerge [
(lib.mkIf enable {
boot.binfmt = {inherit emulatedSystems;};
})
# keep Windows binfmt registration on wsl
(lib.mkIf (cfg.enable && lib.hasAttrByPath [ "wsl" "interop" "register" ] options) {
wsl.interop.register = lib.mkDefault true;
}) })
]; ];
} }