0
0
Fork 0
mirror of https://github.com/NixOS/nixpkgs.git synced 2025-07-14 06:00:33 +03:00

nixos/nix-required-mounts: allow passing extra arguments to the hook

This commit is contained in:
Someone Serge 2023-11-21 16:03:58 +00:00
parent 6a6b6ac359
commit 927b15ed6d
2 changed files with 22 additions and 6 deletions

View file

@ -3,9 +3,6 @@
let let
cfg = config.programs.nix-required-mounts; cfg = config.programs.nix-required-mounts;
package = pkgs.nix-required-mounts; package = pkgs.nix-required-mounts;
overridenPackage = package.override {
inherit (cfg) allowedPatterns;
};
Mount = with lib; Mount = with lib;
types.submodule { types.submodule {
@ -86,9 +83,26 @@ in
example.require-ipfs.paths = [ "/ipfs" ]; example.require-ipfs.paths = [ "/ipfs" ];
example.require-ipfs.onFeatures = [ "ifps" ]; example.require-ipfs.onFeatures = [ "ifps" ];
}; };
extraWrapperArgs = lib.mkOption {
type = with lib.types; listOf str;
default = [ ];
description =
lib.mdDoc
"List of extra arguments (such as `--add-flags -v`) to pass to the hook's wrapper";
};
package = lib.mkOption {
type = lib.types.package;
default = package.override {
inherit (cfg)
allowedPatterns
extraWrapperArgs;
};
description = lib.mdDoc "The final package with the final config applied";
internal = true;
};
}; };
config = lib.mkIf cfg.enable (lib.mkMerge [ config = lib.mkIf cfg.enable (lib.mkMerge [
{ nix.settings.pre-build-hook = lib.getExe overridenPackage; } { nix.settings.pre-build-hook = lib.getExe cfg.package; }
(lib.mkIf cfg.presets.nvidia-gpu.enable { (lib.mkIf cfg.presets.nvidia-gpu.enable {
nix.settings.system-features = cfg.allowedPatterns.nvidia-gpu.onFeatures; nix.settings.system-features = cfg.allowedPatterns.nvidia-gpu.onFeatures;
programs.nix-required-mounts.allowedPatterns = { programs.nix-required-mounts.allowedPatterns = {

View file

@ -16,12 +16,13 @@
} }
, buildPackages , buildPackages
, callPackage , callPackage
, extraWrapperArgs ? [ ]
, formats , formats
, lib , lib
, makeWrapper
, nix , nix
, nixosTests , nixosTests
, python3Packages , python3Packages
, makeWrapper
, runCommand , runCommand
}: }:
@ -47,7 +48,8 @@ python3Packages.buildPythonApplication
postFixup = '' postFixup = ''
wrapProgram $out/bin/${pname} \ wrapProgram $out/bin/${pname} \
--add-flags "--patterns ${allowedPatternsPath}" \ --add-flags "--patterns ${allowedPatternsPath}" \
--add-flags "--nix-exe ${lib.getExe nix}" --add-flags "--nix-exe ${lib.getExe nix}" \
${builtins.concatStringsSep " " extraWrapperArgs}
''; '';
passthru = { passthru = {