Updating the script of loading myEnv environments, for something close to what I was using.

It sets a fixed PS1, maybe breaking someone's taste, though. But I find it easier to use.


svn path=/nixpkgs/trunk/; revision=33304
This commit is contained in:
Lluís Batlle i Rossell 2012-03-20 18:49:44 +00:00
parent 49fabfacab
commit fc3ac31540
2 changed files with 19 additions and 7 deletions

View file

@ -53,9 +53,10 @@
# $ load-nix-env
# The result using that command should be:
# env-nix loaded
and show you a shell with a prefixed prompt.
*/
{ mkDerivation, substituteAll, pkgs } : { stdenv ? pkgs.stdenv, name, buildInputs ? [], cTags ? [], extraCmds ? ""} :
{ mkDerivation, substituteAll, pkgs } : { stdenv ? pkgs.stdenv, name, buildInputs ? [], cTags ? [], extraCmds ? "", shell ? "${pkgs.bashInteractive}/bin/bash"} :
mkDerivation {
# The setup.sh script from stdenv will expect the native build inputs in
# the buildNativeInputs environment variable.
@ -126,11 +127,9 @@ mkDerivation {
echo $name loaded
EOF
cat >> "$out/bin/load-''${name/env-/}-env" << EOF
#!/bin/sh
source "$out/dev-envs/''${name/env-/}"
EOF
chmod +x "$out/bin/load-''${name/env-/}-env"
mkdir -p $out/bin
sed -e s,@shell@,${shell}, -e s,@myenvpath@,$out/dev-envs/${name}, \
-e s,@name@,${name}, ${./loadenv.sh} > $out/bin/load-${name}-env
chmod +x $out/bin/load-${name}-env
'';
}

View file

@ -0,0 +1,13 @@
#!/bin/sh
OLDPATH="$PATH"
OLDTZ="$TZ"
source @myenvpath@
PATH="$PATH:$OLDPATH"
export PS1="\n@name@:[\u@\h:\w]\$ "
export buildInputs
export NIX_STRIP_DEBUG=0
export TZ="$OLDTZ"
exec @shell@ --norc