mirror of
https://github.com/foo-dogsquared/nix-module-wrapper-manager-fds.git
synced 2025-02-12 06:19:04 +00:00
wrapper-manager-fds/lib: remove build-support subset
It isn't used much and the module environment has gone into a much more than a single wrapper-per-module config.
This commit is contained in:
parent
1c22e91176
commit
e74c82fccf
@ -1,66 +0,0 @@
|
|||||||
# Unless you're a third-party module author wanting to integrate
|
|
||||||
# wrapper-manager to whatever bespoke configuration environment, there is
|
|
||||||
# almost no reason to use the following functions, really.
|
|
||||||
{ pkgs, lib, self }:
|
|
||||||
|
|
||||||
{
|
|
||||||
/* The build function for making simple and single executable
|
|
||||||
wrappers similar to nixpkgs builders for various ecosystems (for example,
|
|
||||||
`buildGoPackage` and `buildRustPackage`).
|
|
||||||
*/
|
|
||||||
mkWrapper = {
|
|
||||||
arg0,
|
|
||||||
executableName ? arg0,
|
|
||||||
isBinary ? true,
|
|
||||||
|
|
||||||
makeWrapperArgs ? [ ],
|
|
||||||
nativeBuildInputs ? [ ],
|
|
||||||
passthru ? { },
|
|
||||||
}@args:
|
|
||||||
pkgs.runCommand "wrapper-manager-script-${executableName}" (
|
|
||||||
(builtins.removeAttrs args [ "executableName" "arg0" "isBinary" ])
|
|
||||||
// {
|
|
||||||
inherit makeWrapperArgs;
|
|
||||||
nativeBuildInputs = nativeBuildInputs ++
|
|
||||||
(if isBinary then [ pkgs.makeBinaryWrapper ] else [ pkgs.makeWrapper ]);
|
|
||||||
|
|
||||||
passthru = passthru // {
|
|
||||||
wrapperScript = { inherit arg0 executableName; };
|
|
||||||
};
|
|
||||||
}
|
|
||||||
) ''
|
|
||||||
mkdir -p $out/bin
|
|
||||||
makeWrapper "${arg0}" "$out/bin/${executableName}" ''${makeWrapperArgs[@]}
|
|
||||||
'';
|
|
||||||
|
|
||||||
/* Similar to `mkWrapper` but include the output of the given package. */
|
|
||||||
mkWrappedPackage = {
|
|
||||||
package,
|
|
||||||
executableName ? package.meta.mainProgram or package.pname,
|
|
||||||
arg0 ? executableName,
|
|
||||||
extraPackages ? [ ],
|
|
||||||
isBinary ? true,
|
|
||||||
|
|
||||||
postBuild ? "",
|
|
||||||
nativeBuildInputs ? [ ],
|
|
||||||
makeWrapperArgs ? [ ],
|
|
||||||
passthru ? { },
|
|
||||||
}@args:
|
|
||||||
pkgs.symlinkJoin (
|
|
||||||
(builtins.removeAttrs args [ "package" "executableName" "extraPackages" "isBinary" ])
|
|
||||||
// {
|
|
||||||
name = "wrapper-manager-wrapped-packages";
|
|
||||||
paths = [ package ] ++ extraPackages;
|
|
||||||
|
|
||||||
inherit makeWrapperArgs;
|
|
||||||
nativeBuildInputs = nativeBuildInputs ++
|
|
||||||
(if isBinary then [ pkgs.makeBinaryWrapper ] else [ pkgs.makeWrapper ]);
|
|
||||||
passthru = passthru // {
|
|
||||||
wrapperScript = { inherit executableName package; };
|
|
||||||
};
|
|
||||||
postBuild = ''
|
|
||||||
${postBuild}
|
|
||||||
makeWrapper "$out/bin/${arg0}" "$out/bin/${executableName}" ''${makeWrapperArgs[@]}
|
|
||||||
'';
|
|
||||||
});
|
|
||||||
}
|
|
@ -15,11 +15,9 @@ pkgs.lib.makeExtensible
|
|||||||
callLibs = file: import file { inherit (pkgs) lib; inherit pkgs self; };
|
callLibs = file: import file { inherit (pkgs) lib; inherit pkgs self; };
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
build-support = callLibs ./build-support.nix;
|
|
||||||
env = import ./env.nix;
|
env = import ./env.nix;
|
||||||
utils = callLibs ./utils.nix;
|
utils = callLibs ./utils.nix;
|
||||||
|
|
||||||
inherit (self.build-support) mkWrapper mkWrappedPackage;
|
|
||||||
inherit (self.env) build eval;
|
inherit (self.env) build eval;
|
||||||
inherit (self.utils) getBin getLibexec;
|
inherit (self.utils) getBin getLibexec;
|
||||||
})
|
})
|
||||||
|
Loading…
Reference in New Issue
Block a user