nixos/binfmt: mkDefault auto-detected interpreter

This commit is contained in:
arcnmx
2022-01-22 11:41:23 -08:00
committed by arcnmx
parent 873074ac60
commit 0e89c822af

View File

@@ -1,6 +1,6 @@
{ config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
let let
inherit (lib) mkOption types optionalString stringAfter; inherit (lib) mkOption mkDefault types optionalString stringAfter;
cfg = config.boot.binfmt; cfg = config.boot.binfmt;
@@ -293,11 +293,11 @@ in {
if preserveArgvZero then "${wrapper}/bin/${wrapperName}" if preserveArgvZero then "${wrapper}/bin/${wrapperName}"
else interpreter; else interpreter;
in ({ in ({
inherit preserveArgvZero; preserveArgvZero = mkDefault preserveArgvZero;
interpreter = interpreterReg; interpreter = mkDefault interpreterReg;
wrapInterpreterInShell = !preserveArgvZero; wrapInterpreterInShell = mkDefault (!config.preserveArgvZero);
interpreterSandboxPath = dirOf (dirOf config.interpreter); interpreterSandboxPath = mkDefault (dirOf (dirOf config.interpreter));
} // (magics.${system} or (throw "Cannot create binfmt registration for system ${system}"))); } // (magics.${system} or (throw "Cannot create binfmt registration for system ${system}")));
}) cfg.emulatedSystems); }) cfg.emulatedSystems);
nix.settings = lib.mkIf (cfg.emulatedSystems != []) { nix.settings = lib.mkIf (cfg.emulatedSystems != []) {