fa6b7a742c
svn path=/nixpkgs/trunk/; revision=13122
54 lines
1.8 KiB
Nix
54 lines
1.8 KiB
Nix
# Note, if you want to install plugins using the update manager you should
|
|
# copy the store path to a local directory and chown -R $USER yourcopy
|
|
# Then start your local copy
|
|
|
|
args: with args;
|
|
let arch = if stdenv.system == "x86_64-linux" then "x86_64"
|
|
else if stdenv.system == "i686-linux" then "x86"
|
|
else throw "not supported system";
|
|
in
|
|
args.stdenv.mkDerivation rec {
|
|
name = "eclipse-classic-3.3.1.1";
|
|
|
|
unpackPhase = "unzip \$src; set -x ";
|
|
buildInputs = [ unzip jdk gtk glib libXtst ant makeWrapper];
|
|
|
|
|
|
patches=./build-with-jdk-compiler.patch;
|
|
|
|
buildPhase = "./build -os linux -ws gtk -arch ${arch}";
|
|
|
|
libraries = [gtk glib libXtst];
|
|
|
|
installPhase = "
|
|
t=\$out/share/${name}
|
|
ensureDir \$t \$out/bin
|
|
cd result
|
|
tar xfz linux-gtk-*.tar.gz
|
|
mv eclipse \$out
|
|
"
|
|
#copied from other eclipse expressions
|
|
+" rpath=
|
|
for i in \$libraries; do
|
|
rpath=\$rpath\${rpath:+:}\$i/lib
|
|
done
|
|
find \$out \\( -type f -a -perm +0100 \\) \\
|
|
-print \\
|
|
-exec patchelf --interpreter \"$(cat \$NIX_GCC/nix-support/dynamic-linker)\" \\
|
|
--set-rpath \"\$rpath\" {} \\;
|
|
|
|
# Make a wrapper script so that the proper JDK is found.
|
|
makeWrapper \$out/eclipse/eclipse \$out/bin/eclipse \\
|
|
--prefix PATH \":\" \"\$jdk/bin\" \\
|
|
--prefix LD_LIBRARY_PATH \":\" \"\$rpath\"
|
|
sed -e 's=exec.*=exec \$(dirname $0)/../eclipse/eclipse $@=' -i \$out/bin/eclipse
|
|
";
|
|
# using dirname so that eclipse still runs after copying the whole store
|
|
# directory somewhere else (so that you can use the update manager
|
|
|
|
src = args.fetchurl {
|
|
url = http://mawercer.de/~nix/iyyx4hs1mgh1b1wa78j07pgq9k882m2k-eclipse-sourceBuild-srcIncluded-3.3.1.1.zip;
|
|
sha256 = "0n56i7ml816f839704qlkgs5ahl0iqgwc80kjq7n7g5rl9a4vhp4";
|
|
};
|
|
}
|