mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-01 23:22:37 +00:00
* makeWrapper: new function that transparently takes care of creating
a wrapper script. E.g. wrapProgram $out/bin/prog --set FOO bar will create a wrapper around "prog" so that the environment variable FOO is set to bar. The original program is renamed to $out/bin/.wrapped-prog. * Function makeSetupHook to convert a script into a setup hook which can be included in buildInputs. This makes it easier to use scripts like makeWrapper. * Added Bazaar, yet another distributed version management system. svn path=/nixpkgs/trunk/; revision=10211
This commit is contained in:
parent
432c157293
commit
b00839299f
22
pkgs/applications/version-management/bazaar/default.nix
Normal file
22
pkgs/applications/version-management/bazaar/default.nix
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
{stdenv, fetchurl, python, makeWrapper}:
|
||||||
|
|
||||||
|
stdenv.mkDerivation {
|
||||||
|
name = "bazaar-1.1";
|
||||||
|
|
||||||
|
src = fetchurl {
|
||||||
|
url = file:///home/eelco/Downloads/bzr-1.1.tar.gz;
|
||||||
|
sha256 = "1qpkw580r22yxybdghx2ha0kyk22brbhd1kg9wwjh209dqy2gqzc";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = [python makeWrapper];
|
||||||
|
|
||||||
|
installPhase = ''
|
||||||
|
python setup.py install --prefix=$out
|
||||||
|
wrapProgram $out/bin/bzr --prefix PYTHONPATH : "$(toPythonPath $out)"
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
homepage = http://bazaar-vcs.org/;
|
||||||
|
description = "A distributed version control system that Just Works";
|
||||||
|
};
|
||||||
|
}
|
@ -72,3 +72,11 @@ filterExisting() {
|
|||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Syntax: wrapProgram <PROGRAM> <MAKE-WRAPPER FLAGS...>
|
||||||
|
wrapProgram() {
|
||||||
|
local prog="$1"
|
||||||
|
local hidden="$(dirname "$prog")/.wrapped-$(basename "$prog")"
|
||||||
|
mv $prog $hidden
|
||||||
|
makeWrapper $hidden $prog "$@"
|
||||||
|
}
|
||||||
|
@ -288,8 +288,15 @@ rec {
|
|||||||
inherit stdenv curl;
|
inherit stdenv curl;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
makeSetupHook = script: runCommand "hook" {} ''
|
||||||
|
ensureDir $out/nix-support
|
||||||
|
cp ${script} $out/nix-support/setup-hook
|
||||||
|
'';
|
||||||
|
|
||||||
makeWrapper = ../build-support/make-wrapper/make-wrapper.sh;
|
makeWrapper = ../build-support/make-wrapper/make-wrapper.sh;
|
||||||
|
|
||||||
|
makeWrapperNew = makeSetupHook ../build-support/make-wrapper/make-wrapper.sh;
|
||||||
|
|
||||||
# Run the shell command `buildCommand' to produce a store object
|
# Run the shell command `buildCommand' to produce a store object
|
||||||
# named `name'. The attributes in `env' are added to the
|
# named `name'. The attributes in `env' are added to the
|
||||||
# environment prior to running the command.
|
# environment prior to running the command.
|
||||||
@ -3807,6 +3814,11 @@ rec {
|
|||||||
inherit fetchurl stdenv unzip;
|
inherit fetchurl stdenv unzip;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
bazaar = import ../applications/version-management/bazaar {
|
||||||
|
inherit fetchurl stdenv python;
|
||||||
|
makeWrapper = makeWrapperNew;
|
||||||
|
};
|
||||||
|
|
||||||
# commented out because it's using the new configuration style proposal which is unstable
|
# commented out because it's using the new configuration style proposal which is unstable
|
||||||
#biew = import ../applications/misc/biew {
|
#biew = import ../applications/misc/biew {
|
||||||
# inherit lib stdenv fetchurl ncurses;
|
# inherit lib stdenv fetchurl ncurses;
|
||||||
|
Loading…
Reference in New Issue
Block a user