direnv: Make lines shorter
This commit is contained in:
parent
bc52cdd579
commit
3bfaacf461
|
@ -134,21 +134,33 @@ in {
|
||||||
mkAfter ''
|
mkAfter ''
|
||||||
$env.config = ($env.config? | default {})
|
$env.config = ($env.config? | default {})
|
||||||
$env.config.hooks = ($env.config.hooks? | default {})
|
$env.config.hooks = ($env.config.hooks? | default {})
|
||||||
$env.config.hooks.pre_prompt = ($env.config.hooks.pre_prompt? | default [] | append {||
|
$env.config.hooks.pre_prompt = (
|
||||||
let direnv = (${
|
$env.config.hooks.pre_prompt?
|
||||||
getExe cfg.package
|
| default []
|
||||||
} export json | from json | default {})
|
| append {||
|
||||||
if ($direnv | is-empty) {
|
let direnv = (${getExe cfg.package} export json
|
||||||
return
|
| from json
|
||||||
}
|
| default {})
|
||||||
$direnv
|
if ($direnv | is-empty) {
|
||||||
| items {|key, value|
|
return
|
||||||
{
|
|
||||||
key: $key
|
|
||||||
value: (do ($env.ENV_CONVERSIONS? | default {} | get -i $key | get -i from_string | default {|x| $x}) $value)
|
|
||||||
}
|
}
|
||||||
} | transpose -ird | load-env
|
$direnv
|
||||||
})
|
| items {|key, value|
|
||||||
|
{
|
||||||
|
key: $key
|
||||||
|
value: (do (
|
||||||
|
$env.env_conversions?
|
||||||
|
| default {}
|
||||||
|
| get -i $key
|
||||||
|
| get -i from_string
|
||||||
|
| default {|x| $x}
|
||||||
|
) $value)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
| transpose -ird
|
||||||
|
| load-env
|
||||||
|
}
|
||||||
|
)
|
||||||
'');
|
'');
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,6 +14,6 @@
|
||||||
in ''
|
in ''
|
||||||
assertFileExists "${configFile}"
|
assertFileExists "${configFile}"
|
||||||
assertFileRegex "${configFile}" \
|
assertFileRegex "${configFile}" \
|
||||||
'let direnv = (/nix/store/.*direnv.*/bin/direnv export json \| from json | default {})'
|
'^\s*let direnv = (/nix/store/.*direnv.*/bin/direnv export json$'
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue