create setup hook
This commit is contained in:
parent
40c4e7fe5b
commit
e6f9574bb8
3 changed files with 29 additions and 10 deletions
20
default.nix
20
default.nix
|
|
@ -32,16 +32,16 @@ stdenv.mkDerivation {
|
|||
++ packages;
|
||||
|
||||
buildCommand = ''
|
||||
# unset all nix-related variables
|
||||
# unset all nix-related and generic session variables
|
||||
unset SHELL configureFlags mesonFlags shell depsHostHost STRINGS depsTargetTarget stdenv \
|
||||
builder PWD SOURCE_DATE_EPOCH enableParallelInstalling CXX TEMPDIR system HOST_PATH \
|
||||
enableParallelBuilding doInstallCheck buildCommandPath enableParallelChecking LS_COLORS \
|
||||
depsTargetTargetPropagated cmakeFlakes outputs TMPDIR LD READELF doCheck \
|
||||
depsBuildBuild SIZE propagatedNativeBuildInputs strictDeps AR AS TEMP SHLVL NM \
|
||||
patches passAsFile buildInputs SSL_CERT_FILE depsBuildTarget OBJCOPY STRIP TMP OBJDUMP propagatedBuildInputs \
|
||||
CC __ETC_PROFILE_SOURCED depsBuildTargetPropagated depsBuildBuildPropagated CONFIG_SHELL __structuredAttrs \
|
||||
RANLIB nativeBuildInputs name depsHostHostPropagated TEST TZ HOME GZIP_NO_TIMESTAMPS \
|
||||
cmakeFlags TERM buildCommand preferLocalBuild _
|
||||
builder PWD SOURCE_DATE_EPOCH enableParallelInstalling CXX TEMPDIR system HOST_PATH \
|
||||
enableParallelBuilding doInstallCheck buildCommandPath enableParallelChecking LS_COLORS \
|
||||
depsTargetTargetPropagated cmakeFlakes outputs TMPDIR LD READELF doCheck \
|
||||
depsBuildBuild SIZE propagatedNativeBuildInputs strictDeps AR AS TEMP SHLVL NM \
|
||||
patches passAsFile buildInputs SSL_CERT_FILE depsBuildTarget OBJCOPY STRIP TMP OBJDUMP propagatedBuildInputs \
|
||||
CC __ETC_PROFILE_SOURCED depsBuildTargetPropagated depsBuildBuildPropagated CONFIG_SHELL __structuredAttrs \
|
||||
RANLIB nativeBuildInputs name depsHostHostPropagated TEST TZ HOME GZIP_NO_TIMESTAMPS \
|
||||
cmakeFlags TERM buildCommand preferLocalBuild
|
||||
unset "''${!NIX_@}"
|
||||
# create export commands for the rest
|
||||
envs="$(env | sed 's/^/export /' -)"
|
||||
|
|
@ -49,7 +49,7 @@ stdenv.mkDerivation {
|
|||
printf '${script}' > $out
|
||||
echo "$envs" >> $out
|
||||
echo 'exec $SHELL' >> $out
|
||||
# required here
|
||||
# only required here
|
||||
sed -i 's/^export out=.*$//' $out
|
||||
# inserted by env cmd
|
||||
sed -i 's/^export _=.*$//' $out
|
||||
|
|
|
|||
|
|
@ -3,5 +3,6 @@
|
|||
{ self }:
|
||||
{
|
||||
mkShell = { pkgs, ... }@vars: import ./default.nix vars;
|
||||
hook = ./unset-nix-env.sh;
|
||||
};
|
||||
}
|
||||
|
|
|
|||
18
unset-nix-env.sh
Normal file
18
unset-nix-env.sh
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
unsetNixEnv () {
|
||||
# unset all nix-related and generic session variables
|
||||
unset SHELL configureFlags mesonFlags shell depsHostHost STRINGS depsTargetTarget stdenv \
|
||||
builder PWD SOURCE_DATE_EPOCH enableParallelInstalling CXX TEMPDIR system HOST_PATH \
|
||||
enableParallelBuilding doInstallCheck buildCommandPath enableParallelChecking LS_COLORS \
|
||||
depsTargetTargetPropagated cmakeFlakes TMPDIR LD READELF doCheck \
|
||||
depsBuildBuild SIZE propagatedNativeBuildInputs strictDeps AR AS TEMP SHLVL NM \
|
||||
patches passAsFile buildInputs SSL_CERT_FILE depsBuildTarget OBJCOPY STRIP TMP OBJDUMP propagatedBuildInputs \
|
||||
CC __ETC_PROFILE_SOURCED depsBuildTargetPropagated depsBuildBuildPropagated CONFIG_SHELL __structuredAttrs \
|
||||
RANLIB nativeBuildInputs name depsHostHostPropagated TEST TZ HOME GZIP_NO_TIMESTAMPS \
|
||||
cmakeFlags TERM buildCommand preferLocalBuild buildPhase phases shellHook NIX_CC \
|
||||
NIX_STORE NIX_LDFLAGS NIX_BINTOOLS NIX_CFLAGS_COMPILE NIX_ENFORCE_NO_NATIVE NIX_HARDENING_ENABLE \
|
||||
NIX_BUILD_CORES
|
||||
unset "''${!NIX_BINTOOLS@}"
|
||||
unset "''${!NIX_CC@}"
|
||||
}
|
||||
|
||||
postHooks+=(unsetNixEnv)
|
||||
Loading…
Add table
Add a link
Reference in a new issue