70 lines
2.0 KiB
Nix
70 lines
2.0 KiB
Nix
{stdenv, fetchFromGitHub, jdk6, mavenDep, modello, xpp3, xstream_0_5, surefire_1_1, junit_3_8_1, qdox, plexus_0_16,
|
|
wagon-api_0_9, classworlds, commons-cli_beta_2, plexus-i18n, ognl, plexus-compiler-api, plexus-compiler-javac,
|
|
surefire-booter_1_1}: stdenv.mkDerivation rec {
|
|
pname = "maven";
|
|
version = "2.0.0-SNAPSHOT";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "apache";
|
|
repo = pname;
|
|
rev = "d303a99fa58e2de2bfe8dff47c319f5f18b2feee";
|
|
hash = "sha256-TSCrOrbLrPxnWa3ojPFnINqwBNCL/yOSeFM8H+dAGi8=";
|
|
};
|
|
|
|
fake-poms = ./bootstrap-2-fake-poms;
|
|
|
|
patches = [./maven_2-bootstrap-2.patch];
|
|
|
|
settings = ./maven.properties;
|
|
|
|
nativeBuildInputs = [jdk6
|
|
(mavenDep modello {})
|
|
(mavenDep xpp3 {})
|
|
(mavenDep xstream_0_5 {})
|
|
(mavenDep surefire_1_1 {})
|
|
(mavenDep junit_3_8_1 {})
|
|
(mavenDep qdox {})
|
|
(mavenDep plexus_0_16 {})
|
|
(mavenDep wagon-api_0_9 {})
|
|
(mavenDep classworlds {})
|
|
(mavenDep commons-cli_beta_2 {})
|
|
(mavenDep plexus-i18n {})
|
|
(mavenDep ognl {})
|
|
(mavenDep plexus-compiler-api {})
|
|
(mavenDep plexus-compiler-javac {})
|
|
(mavenDep surefire-booter_1_1 {})];
|
|
|
|
env = {
|
|
JAVA_HOME="${jdk6}";
|
|
};
|
|
|
|
configurePhase = ''
|
|
ln -s ${settings} /build/maven.properties
|
|
'';
|
|
|
|
buildPhase = ''
|
|
chmod +x m2-bootstrap-all.sh
|
|
./m2-bootstrap-all.sh
|
|
'';
|
|
|
|
installPhase = ''
|
|
mkdir $out
|
|
cp -r /build/m2/* $out/
|
|
|
|
mkdir $out/nix-support
|
|
echo "ln -s ${settings} /build/maven.properties" >> $out/nix-support/setup-hook
|
|
|
|
mkdir $out/repository
|
|
cp -r /build/.maven/repository/* $out/repository/
|
|
cp -r ${fake-poms}/* $out/repository/
|
|
|
|
echo "mkdir -p /build/.maven/repository" >> $out/nix-support/setup-hook
|
|
echo "cp -r $out/repository/* /build/.maven/repository/" >> $out/nix-support/setup-hook
|
|
echo "chmod -R 777 /build/.maven/repository/" >> $out/nix-support/setup-hook
|
|
'';
|
|
|
|
meta = {
|
|
mainProgram = "m2";
|
|
};
|
|
}
|