* Removed a lot of old Eclipse versions.
* Cleaned up the Eclipse classic expression a bit (e.g. use makeWrapper). Also fall back to GTK 2.16 to fix some GUI glitches. svn path=/nixpkgs/trunk/; revision=18485
This commit is contained in:
parent
853bfbd0b6
commit
e0491358eb
@ -1,24 +1,24 @@
|
||||
{ stdenv, fetchurl, patchelf, makeDesktopItem
|
||||
, freetype, fontconfig, libX11, libXext, libXrender
|
||||
, glib, gtk, libXtst
|
||||
, jre
|
||||
{ stdenv, fetchurl, patchelf, makeDesktopItem, makeWrapper
|
||||
, freetype, fontconfig, libX11, libXext, libXrender, zlib
|
||||
, glib, gtk, libXtst, jre
|
||||
}:
|
||||
|
||||
assert stdenv ? glibc;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "eclipse-3.5.1";
|
||||
src = if stdenv.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = http://ftp.ing.umu.se/mirror/eclipse/eclipse/downloads/drops/R-3.5.1-200909170800/eclipse-SDK-3.5.1-linux-gtk-x86_64.tar.gz;
|
||||
sha256 = "132zd7q9q29h978wnlsfbrlszc85r1wj30yqs2aqbv3l5xgny1kk";
|
||||
}
|
||||
|
||||
src =
|
||||
if stdenv.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = http://ftp.ing.umu.se/mirror/eclipse/eclipse/downloads/drops/R-3.5.1-200909170800/eclipse-SDK-3.5.1-linux-gtk-x86_64.tar.gz;
|
||||
sha256 = "132zd7q9q29h978wnlsfbrlszc85r1wj30yqs2aqbv3l5xgny1kk";
|
||||
}
|
||||
else
|
||||
fetchurl {
|
||||
url = http://mirrors.linux-bg.org/eclipse/eclipse/downloads/drops/R-3.5.1-200909170800/eclipse-SDK-3.5.1-linux-gtk.tar.gz;
|
||||
sha256 = "0a0lpa7gxg91zswpahi6fvg3csl4csvlym4z2ad5cc1d4yvicp56";
|
||||
}
|
||||
;
|
||||
fetchurl {
|
||||
url = http://mirrors.linux-bg.org/eclipse/eclipse/downloads/drops/R-3.5.1-200909170800/eclipse-SDK-3.5.1-linux-gtk.tar.gz;
|
||||
sha256 = "0a0lpa7gxg91zswpahi6fvg3csl4csvlym4z2ad5cc1d4yvicp56";
|
||||
};
|
||||
|
||||
desktopItem = makeDesktopItem {
|
||||
name = "Eclipse";
|
||||
@ -30,39 +30,24 @@ stdenv.mkDerivation rec {
|
||||
categories = "Application;Development;";
|
||||
};
|
||||
|
||||
buildInputs = [ patchelf ];
|
||||
buildInputs = [ makeWrapper patchelf ];
|
||||
|
||||
buildCommand = ''
|
||||
# Unpack tarball
|
||||
|
||||
tar xfvz $src
|
||||
ensureDir $out
|
||||
tar xfvz $src -C $out
|
||||
|
||||
# Patch binaries
|
||||
cd eclipse
|
||||
${if stdenv.system == "x86_64-linux" then
|
||||
"patchelf --set-interpreter ${stdenv.glibc}/lib/ld-linux-x86-64.so.2 ./eclipse"
|
||||
else
|
||||
"patchelf --set-interpreter ${stdenv.glibc}/lib/ld-linux.so.2 ./eclipse"
|
||||
}
|
||||
patchelf --set-rpath ${freetype}/lib:${fontconfig}/lib:${libX11}/lib:${libXext}/lib:${libXrender}/lib ./libcairo-swt.so
|
||||
interpreter=$(echo ${stdenv.glibc}/lib/ld-linux*.so.2)
|
||||
patchelf --set-interpreter $interpreter $out/eclipse/eclipse
|
||||
patchelf --set-rpath ${freetype}/lib:${fontconfig}/lib:${libX11}/lib:${libXrender}/lib:${zlib}/lib $out/eclipse/libcairo-swt.so
|
||||
|
||||
# Create wrapper script
|
||||
cd ..
|
||||
ensureDir $out/bin
|
||||
cp -av eclipse $out
|
||||
|
||||
cat > $out/bin/eclipse <<EOF
|
||||
#!/bin/sh
|
||||
|
||||
export PATH=${jre}/bin
|
||||
export LD_LIBRARY_PATH=${glib}/lib:${gtk}/lib:${libXtst}/lib
|
||||
|
||||
$out/eclipse/eclipse "\$@"
|
||||
EOF
|
||||
|
||||
chmod 755 $out/bin/eclipse
|
||||
makeWrapper $out/eclipse/eclipse $out/bin/eclipse \
|
||||
--prefix PATH : ${jre}/bin \
|
||||
--prefix LD_LIBRARY_PATH : ${glib}/lib:${gtk}/lib:${libXtst}/lib
|
||||
|
||||
# Create desktop item
|
||||
|
||||
ensureDir $out/share/applications
|
||||
cp ${desktopItem}/share/applications/* $out/share/applications
|
||||
'';
|
||||
|
@ -1,96 +0,0 @@
|
||||
args: with args; let
|
||||
|
||||
# hint: eclipse -data <dir to save global eclipse settings>
|
||||
|
||||
eclipsePlugin = name : src : stdenv.mkDerivation {
|
||||
inherit src;
|
||||
name = "${name}-eclipse-plugin";
|
||||
phases = "unpackPhase";
|
||||
buildInputs = [ args.unzip ];
|
||||
unpackPhase = ''
|
||||
mkdir tmp; cd tmp
|
||||
unpackFile "$src"
|
||||
[ -d ./eclipse ] || { # if plugin doesn't contain the eclipse directory itself create it (eg viPlugin)
|
||||
mkdir "$TMP/eclipse"
|
||||
mv * "$TMP/eclipse"
|
||||
cd "$TMP"
|
||||
}
|
||||
ensureDir $out;
|
||||
mv eclipse "$out"
|
||||
'';
|
||||
};
|
||||
|
||||
eclipseEnv = {name, eclipse, links}: runCommand name { inherit links eclipse; } ''
|
||||
ensureDir $out/eclipse/links;
|
||||
cp -r "$eclipse/bin" "$out/bin"
|
||||
for f in $eclipse/eclipse/*; do
|
||||
# using ln eclipse doesn't take the correct link folder :-( (TODO)
|
||||
# ln -s "$f" "$out/eclipse/$(basename "$f")"
|
||||
cp -r "$f" "$out/eclipse/$(basename "$f")"
|
||||
done
|
||||
# create links
|
||||
for link in $links; do
|
||||
echo "path=$link" >> "$out/eclipse/links/$(basename "$link").link"
|
||||
done
|
||||
'';
|
||||
|
||||
# mmh, this derivation is superfluous. We could also create them directly
|
||||
# instead of symlinking them into the final env build by buildEnv
|
||||
linkFile = deriv : writeTextFile {
|
||||
name = "${deriv.name}-eclipse-feature-link";
|
||||
destination = "/eclipse/links/${deriv.name}.link";
|
||||
};
|
||||
|
||||
attr = rec {
|
||||
eclipse = import ( ../eclipse-new + "/${version}/eclipse.nix") args; # without any additional plugins, why can't I use ./ instead of ../eclipse-new ?
|
||||
|
||||
plugins = rec {
|
||||
|
||||
viPlugin = { # see its license!
|
||||
plugin = eclipsePlugin "viPlugin_1.15.6" (fetchurl {
|
||||
url = http://www.satokar.com/viplugin/files/viPlugin_1.15.6.zip;
|
||||
sha256 = "0p53q45a754j143pnnp51rjwj7lzawcxfy9xzpjasdic4a2l0f96";
|
||||
# license = "Other/Proprietary License with Free Trial";
|
||||
});
|
||||
};
|
||||
|
||||
# PHP developement
|
||||
emfSdoXsdSDK232 = {
|
||||
plugin = eclipsePlugin "emf-sdo-xsd-SDK-2.3.2" (fetchurl {
|
||||
url = http://eclipsemirror.yoxos.com/eclipse.org/modeling/emf/emf/downloads/drops/2.3.2/R200802051830/emf-sdo-xsd-SDK-2.3.2.zip;
|
||||
sha256 = "1k20fn47x1giwhc80rzkqaw3mn0p3861sjp7aw39842lv2hjwn1c";
|
||||
});
|
||||
};
|
||||
gefSDK332 = {
|
||||
plugin = eclipsePlugin "GEF-SDK-3.3.2" (fetchurl {
|
||||
url = http://ftp-stud.fht-esslingen.de/pub/Mirrors/eclipse/tools/gef/downloads/drops/3.3.2/R200802211602/GEF-SDK-3.3.2.zip;
|
||||
sha256 = "1pk5qlwk0iyvs85s966y96ks8vq1g81fivvbf4lh43155rg0z037";
|
||||
});
|
||||
};
|
||||
wtpSdkR202X = {
|
||||
plugin = eclipsePlugin "wtp-sdk-R-2.0.2-20080223205547" (fetchurl {
|
||||
url = http://ftp.wh2.tu-dresden.de/pub/mirrors/eclipse/webtools/downloads/drops/R2.0/R-2.0.2-20080223205547/wtp-sdk-R-2.0.2-20080223205547.zip;
|
||||
sha256 = "0hmmmqzcd67jir2gmjd0xri5w2434xb2dk21hpgcv2qp0h9hhx0f";
|
||||
});
|
||||
};
|
||||
pdt = {
|
||||
deps = [ wtpSdkR202X gefSDK332 emfSdoXsdSDK232 ];
|
||||
plugin = eclipsePlugin "pdt-runtime-1.0.3" (fetchurl {
|
||||
url = http://sunsite.informatik.rwth-aachen.de:3080/eclipse/tools/pdt/downloads/drops/1.0.3/R200806030000/pdt-runtime-1.0.3.zip;
|
||||
sha256 = "0wd2vc9bqrk5mqj5al2ichm8lxlf7gwifsb9lzv1d896j04ilm96";
|
||||
});
|
||||
};
|
||||
};
|
||||
};
|
||||
pluginToList = a : [ a.plugin ] ++ lib.optionals (a ? deps ) (lib.concatMap pluginToList a.deps);
|
||||
in
|
||||
eclipseEnv {
|
||||
name = "eclipse-${version}-with-plugins";
|
||||
inherit (attr) eclipse;
|
||||
links =
|
||||
# example custom config: eclipse = { plugins = {eclipse, version, plugins } : let p = plugins; in [p.pdt]; };
|
||||
let userChosenPlugins = (getConfig [ "eclipse" "plugins" ] ( {eclipse, version, plugins} : [] ))
|
||||
{ inherit (attr) eclipse plugins; inherit version; };
|
||||
in # concatenate plugins and plugin dependencies
|
||||
(lib.uniqList { inputList = lib.concatMap pluginToList userChosenPlugins; });
|
||||
}
|
@ -1,22 +0,0 @@
|
||||
--- a/build.xml 2008-03-02 14:34:05.000000000 +0100
|
||||
+++ b/build.xml 2008-03-02 14:34:57.000000000 +0100
|
||||
@@ -291,19 +291,6 @@
|
||||
</condition>
|
||||
<property name="bootclasspath" refid="default.bootclasspath" />
|
||||
|
||||
- <!--set the compiler and compiler arguments-->
|
||||
- <!--the default compiler is set to the one used by eclipse rel. eng. -->
|
||||
- <condition property="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter">
|
||||
- <available file="${basedir}/ecj.jar" />
|
||||
- </condition>
|
||||
- <fail message="The Eclipse compiler (ecj.jar) cannot be found.">
|
||||
- <condition>
|
||||
- <not>
|
||||
- <equals arg1="${build.compiler}" arg2="org.eclipse.jdt.core.JDTCompilerAdapter" />
|
||||
- </not>
|
||||
- </condition>
|
||||
- </fail>
|
||||
-
|
||||
<property name="compilerArg" value="-enableJavadoc -encoding ISO-8859-1" />
|
||||
<property name="javacSource" value="1.6" />
|
||||
<property name="javacTarget" value="1.6" />
|
@ -1,53 +0,0 @@
|
||||
# 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";
|
||||
};
|
||||
}
|
@ -1,22 +0,0 @@
|
||||
--- a/build.xml 2008-03-02 14:34:05.000000000 +0100
|
||||
+++ b/build.xml 2008-03-02 14:34:57.000000000 +0100
|
||||
@@ -291,19 +291,6 @@
|
||||
</condition>
|
||||
<property name="bootclasspath" refid="default.bootclasspath" />
|
||||
|
||||
- <!--set the compiler and compiler arguments-->
|
||||
- <!--the default compiler is set to the one used by eclipse rel. eng. -->
|
||||
- <condition property="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter">
|
||||
- <available file="${basedir}/ecj.jar" />
|
||||
- </condition>
|
||||
- <fail message="The Eclipse compiler (ecj.jar) cannot be found.">
|
||||
- <condition>
|
||||
- <not>
|
||||
- <equals arg1="${build.compiler}" arg2="org.eclipse.jdt.core.JDTCompilerAdapter" />
|
||||
- </not>
|
||||
- </condition>
|
||||
- </fail>
|
||||
-
|
||||
<property name="compilerArg" value="-enableJavadoc -encoding ISO-8859-1" />
|
||||
<property name="javacSource" value="1.6" />
|
||||
<property name="javacTarget" value="1.6" />
|
@ -1,40 +0,0 @@
|
||||
source $stdenv/setup
|
||||
|
||||
unpackFile $src
|
||||
ensureDir $out
|
||||
mv eclipse $out/
|
||||
|
||||
# Set the dynamic linker and RPATH.
|
||||
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.
|
||||
# don't use makeWrapper in order to change the last line.
|
||||
|
||||
ensureDir $out/bin
|
||||
cat >> $out/bin/eclipse << EOF
|
||||
#! /bin/sh -e
|
||||
export PATH=${jdk}/bin\${PATH:+:}\$PATH
|
||||
export LD_LIBRARY_PATH=$rpath\${LD_LIBRARY_PATH:+:}\$LD_LIBRARY_PATH
|
||||
exec \$(dirname \$0)/../eclipse/eclipse $@
|
||||
EOF
|
||||
chmod +x $out/bin/eclipse
|
||||
|
||||
ensureDir plugin-working-dir
|
||||
workingdir="$(pwd)/plugin-working-dir"
|
||||
for plugin in $plugins; do
|
||||
if test -e $plugin/install; then
|
||||
cd $workingdir
|
||||
$plugin/install "$out/eclipse"
|
||||
rm -rf $workingdir/*
|
||||
else
|
||||
# assume that it is a file
|
||||
cp $plugin $out/eclipse/plugins
|
||||
fi
|
||||
done
|
@ -1,37 +0,0 @@
|
||||
# recommended installation:
|
||||
# nix-build -A eclipsesdk
|
||||
# then cp -r $store-path ~/my-eclipse; chmod -R 777 ~/my-eclipse # ugh! I'm to lazy to assign permissions properly
|
||||
# maybe also using a wrapper such as this (lower values should suffice for most needs)
|
||||
# eclipseWrapper () {
|
||||
# "$@" -vmargs -Xms2048m -Xmx2048m -XX:MaxPermSize=2048m
|
||||
# }
|
||||
#
|
||||
# Why use a local copy? This way it's easier to use the update manager to get plugins :-)
|
||||
|
||||
|
||||
{fetchurl, stdenv, jdk, gtk, glib, libXtst, makeOverridable, plugins ? [], unzip}:
|
||||
|
||||
let eclipseFun =
|
||||
makeOverridable ({name, bindist} :
|
||||
stdenv.mkDerivation {
|
||||
inherit name;
|
||||
builder = ./builder.sh;
|
||||
src = bindist;
|
||||
buildInputs = [ unzip /* unzip required by eclipseCDT */ ];
|
||||
inherit jdk plugins;
|
||||
libraries = [gtk glib libXtst];
|
||||
}); in
|
||||
|
||||
eclipseFun {
|
||||
# you can override these settings usnig .override {...}
|
||||
name = "eclipse-sdk-3.5M6";
|
||||
|
||||
bindist =
|
||||
if (stdenv.system == "x86_64-linux") then fetchurl {
|
||||
url = ftp://sunsite.informatik.rwth-aachen.de/pub/mirror/eclipse/S-3.5M6-200903130100/eclipse-SDK-3.5M6-linux-gtk-x86_64.tar.gz;
|
||||
sha256 = "10p4idp5rcdf7xqwfk3kvmjxhi8x1v835m0y4pn9q4nhfb5643pi";
|
||||
} else fetchurl {
|
||||
url = ftp://mirror.micromata.de/eclipse/eclipse/downloads/drops/S-3.5M6-200903130100/eclipse-SDK-3.5M6-linux-gtk.tar.gz;
|
||||
sha256 = "1z8j26b632ydhqrmwgbcqgiq7f1a542jam06z2h62mcbqazrcyah";
|
||||
};
|
||||
}
|
@ -1,18 +0,0 @@
|
||||
{fetchurl, stdenv, makeWrapper, jdk, gtk, glib, libXtst, plugins ? []}:
|
||||
|
||||
let {
|
||||
body =
|
||||
stdenv.mkDerivation {
|
||||
name = "eclipse-sdk-3.1.2";
|
||||
builder = ./builder.sh;
|
||||
src = bindist;
|
||||
inherit makeWrapper jdk plugins;
|
||||
libraries = [gtk glib libXtst];
|
||||
};
|
||||
|
||||
bindist =
|
||||
fetchurl {
|
||||
url = http://archive.eclipse.org/eclipse/downloads/drops/R-3.1.2-200601181600/eclipse-SDK-3.1.2-linux-gtk.tar.gz;
|
||||
md5 = "ece50ed4d6d48dac839bfe8fa719fcff";
|
||||
};
|
||||
}
|
@ -1,18 +0,0 @@
|
||||
{fetchurl, stdenv, makeWrapper, jdk, gtk, glib, libXtst}:
|
||||
|
||||
let {
|
||||
body =
|
||||
stdenv.mkDerivation {
|
||||
name = "eclipse-sdk-3.1";
|
||||
builder = ./builder.sh;
|
||||
src = bindist;
|
||||
inherit makeWrapper jdk;
|
||||
libraries = [gtk glib libXtst];
|
||||
};
|
||||
|
||||
bindist =
|
||||
fetchurl {
|
||||
url = http://sunsite.informatik.rwth-aachen.de/eclipse/downloads/drops/R-3.1-200506271435/eclipse-SDK-3.1-linux-gtk.tar.gz;
|
||||
md5 = "0441c11cc5af1e84ed3be322929899e8";
|
||||
};
|
||||
}
|
@ -1,21 +0,0 @@
|
||||
source $stdenv/setup
|
||||
|
||||
ensureDir $out
|
||||
cat >> $out/install <<EOF
|
||||
#! /bin/sh
|
||||
|
||||
PLUGIN=$plugin
|
||||
UNZIP=$unzip/bin/unzip
|
||||
ECLIPSE=\$1
|
||||
|
||||
\$UNZIP \$PLUGIN
|
||||
|
||||
if test -e plugins; then
|
||||
cp -prd * \$ECLIPSE
|
||||
else
|
||||
cd *
|
||||
cp -prd * \$ECLIPSE
|
||||
fi
|
||||
EOF
|
||||
|
||||
chmod u+x $out/install
|
@ -1,10 +0,0 @@
|
||||
{stdenv, unzip, plugin}:
|
||||
|
||||
let {
|
||||
body =
|
||||
stdenv.mkDerivation {
|
||||
name = "eclipse-zip-plugin-installer";
|
||||
builder = ./builder.sh;
|
||||
inherit plugin unzip;
|
||||
};
|
||||
}
|
@ -1,6 +0,0 @@
|
||||
{stdenv, fetchurl}:
|
||||
|
||||
fetchurl {
|
||||
url = http://www.ii.uib.no/~karltk/spoofax/plugins/org.spoofax.editor_0.3.0.jar;
|
||||
md5 = "ff66d229c774f840ec8285f64c0f95bc";
|
||||
}
|
@ -1,6 +0,0 @@
|
||||
{stdenv, fetchurl}:
|
||||
|
||||
fetchurl {
|
||||
url = http://nixos.org/tarballs/org.spoofax.editor_0.3.10.jar;
|
||||
md5 = "ff77853e750e19a9b8d380c17ea27f3d";
|
||||
}
|
@ -1,32 +0,0 @@
|
||||
args: with args;
|
||||
stdenv.mkDerivation {
|
||||
name = "nix-eclipse-runner-script";
|
||||
|
||||
phases = "installPhase";
|
||||
installPhase = ''
|
||||
ensureDir $out/bin
|
||||
target=$out/bin/nix-run-eclipse
|
||||
cat > $target << EOF
|
||||
#!/bin/sh
|
||||
export PATH=${jre}/bin:$PATH
|
||||
export LD_LIBRARY_PATH=${glib}/lib:${gtk}/lib:${libXtst}/lib
|
||||
# If you run out of XX space try these? -vmargs -Xms512m -Xmx2048m -XX:MaxPermSize=256m
|
||||
exec "\$@"
|
||||
EOF
|
||||
chmod +x $target
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "provide environment to run Eclipse";
|
||||
longDescription = ''
|
||||
Is there one distribution providing support for up to date Eclipse installations?
|
||||
There are various reasons why not.
|
||||
Installing binaries just works. Get Eclipse binaries form eclipse.org/downloads
|
||||
install this wrapper then run Eclipse like this:
|
||||
nix-run-eclipse $PATH_TO_ECLIPSE/eclipse/eclipse
|
||||
and be happy. Everything works including update sites.
|
||||
'';
|
||||
maintainers = [args.lib.maintainers.marcweber];
|
||||
platforms = args.lib.platforms.linux;
|
||||
};
|
||||
}
|
@ -6466,66 +6466,14 @@ let
|
||||
inherit (xlibs) libX11;
|
||||
};
|
||||
|
||||
eclipseRunner = import ../applications/editors/eclipse/runner.nix {
|
||||
inherit stdenv lib jre;
|
||||
inherit (gtkLibs) gtk glib;
|
||||
inherit (xlibs) libXtst;
|
||||
};
|
||||
|
||||
eclipseNewer = import ../applications/editors/eclipse-classic {
|
||||
inherit stdenv fetchurl patchelf makeDesktopItem freetype fontconfig jre;
|
||||
inherit (gtkLibs) glib gtk;
|
||||
eclipse = import ../applications/editors/eclipse-classic {
|
||||
inherit stdenv fetchurl patchelf makeDesktopItem makeWrapper freetype fontconfig jre zlib;
|
||||
# GTK 2.18 gives glitches such as mouse clicks on buttons not
|
||||
# working correctly.
|
||||
inherit (gtkLibs216) glib gtk;
|
||||
inherit (xlibs) libX11 libXext libXrender libXtst;
|
||||
};
|
||||
|
||||
/* commenting out eclipse - Have a look at eclipseRunner - Marc Weber
|
||||
|
||||
Reason: You can get Eclipse in many prepacked variations on eclipse.org
|
||||
No need to duplicate efforts.
|
||||
To make Equinox p2 work you have to create a local copy of Eclipse anyway (AFAIK).
|
||||
Maybe there is a solution. I don't have time to investigate. I want to prevent
|
||||
people from using old crappy Eclipse versions.
|
||||
|
||||
# put something like this into your ~/.nixpkgs/config.nix file
|
||||
#eclipse = {
|
||||
# plugins = {eclipse, version, plugins } : let p = plugins; in
|
||||
# [ p.pdt # PHP developement
|
||||
# p.viPlugin # vim keybindings (see license)
|
||||
# ];
|
||||
#};
|
||||
eclipseNew = import ../applications/editors/eclipse-new/3.3.1.1.nix {
|
||||
# outdated, but 3.3.1.1 does already compile on nix, feel free to work 3.4
|
||||
inherit fetchurl stdenv makeWrapper jdk unzip ant buildEnv
|
||||
getConfig lib zip writeTextFile runCommand;
|
||||
inherit (gtkLibs) gtk glib;
|
||||
inherit (xlibs) libXtst;
|
||||
};
|
||||
|
||||
|
||||
eclipse = plugins:
|
||||
import ../applications/editors/eclipse {
|
||||
inherit fetchurl stdenv jdk;
|
||||
inherit (gtkLibs) gtk glib;
|
||||
inherit (xlibs) libXtst;
|
||||
inherit plugins makeOverridable unzip;
|
||||
};
|
||||
|
||||
eclipsesdk = eclipse [];
|
||||
|
||||
# eclipseSpoofax = lowPrio (appendToName "with-spoofax" (eclipse [eclipsePlugins.spoofax]));
|
||||
# eclipseCDT = import ../applications/editors/eclipse/eclipse-cdt.nix {
|
||||
# inherit fetchurl stdenv eclipse;
|
||||
# };
|
||||
# # quinox p2 installer
|
||||
# eclipseMinimal = import ../applications/editors/eclipse/eclipse-p2-installer.nix {
|
||||
# inherit fetchurl stdenv eclipse;
|
||||
# };
|
||||
#
|
||||
# eclipsePlugins = import ../applications/editors/eclipse/plugins.nix {
|
||||
# inherit fetchurl stdenv;
|
||||
# };
|
||||
*/
|
||||
|
||||
ed = import ../applications/editors/ed {
|
||||
inherit fetchurl stdenv;
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user