diff options
author | Katharina Fey <kookie@spacekookie.de> | 2019-10-05 22:09:49 +0000 |
---|---|---|
committer | Katharina Fey <kookie@spacekookie.de> | 2019-10-05 22:09:49 +0000 |
commit | c04d9504fa2ae8f447ef05a1e7ddb3b21ed06af9 (patch) | |
tree | 4dcadc971cabf2f96f5ef832a5664ae31c052051 /modules/workstation/devel/java | |
parent | 0a6d1447db7d1f52517a4a4c47d4198451fd223e (diff) |
Adding workstation module
Diffstat (limited to 'modules/workstation/devel/java')
-rw-r--r-- | modules/workstation/devel/java/default.nix | 7 | ||||
-rw-r--r-- | modules/workstation/devel/java/gdx.nix | 32 | ||||
-rw-r--r-- | modules/workstation/devel/java/lwjgl.nix | 33 |
3 files changed, 72 insertions, 0 deletions
diff --git a/modules/workstation/devel/java/default.nix b/modules/workstation/devel/java/default.nix new file mode 100644 index 00000000000..aa2cf8d7264 --- /dev/null +++ b/modules/workstation/devel/java/default.nix @@ -0,0 +1,7 @@ +/* JAVA DEVELOPMENT MODE + * + * FIXME: Integrate building libgdx/ lwjgl with nix + */ +{ pkgs, ... }: { + home.packages = with pkgs; [ eclipses.eclipse-java lombok ]; +} diff --git a/modules/workstation/devel/java/gdx.nix b/modules/workstation/devel/java/gdx.nix new file mode 100644 index 00000000000..2e1649fb2a9 --- /dev/null +++ b/modules/workstation/devel/java/gdx.nix @@ -0,0 +1,32 @@ +{ stdenv, pkgs, ... }: + +with pkgs; +stdenv.mkDerivation rec { + name = "libgdx-${version}"; + version = "1.9.6"; + + src = fetchurl { + url = "https://github.com/libgdx/libgdx/archive/${version}.tar.gz"; + sha256 = "1lxky0cz4qjpw4x06cf2kpa00cj0n0jp3vfsp67jy1d42dqyshgb"; + }; + + buildInputs = [ ant openjdk gcc ]; + + buildPhase = "find . -name '*.so' -delete && cd gdx/jni && ant -f build-linux64.xml && cd ../../extensions/gdx-box2d/gdx-box2d/jni && ant -f build-linux64.xml && cd ../../../../"; + + installPhase = '' + mkdir -p $out/lib + cp gdx/libs/linux64/*.so $out/lib + cp extensions/gdx-box2d/gdx-box2d/libs/linux64/*.so $out/lib + ''; + + meta = with stdenv.lib; { + description = "Desktop/Android/BlackBerry/iOS/HTML5 Java game development framework"; + longDescription = ''''; + homepage = http://libgdx.badlogicgames.com/; + license = licenses.asl20; + maintainers = with maintainers; [ pmiddend ]; + platforms = platforms.linux; + }; +} + diff --git a/modules/workstation/devel/java/lwjgl.nix b/modules/workstation/devel/java/lwjgl.nix new file mode 100644 index 00000000000..77ab765f207 --- /dev/null +++ b/modules/workstation/devel/java/lwjgl.nix @@ -0,0 +1,33 @@ +{ stdenv, pkgs, ... }: + +with pkgs; +stdenv.mkDerivation rec { + name = "lwjgl-${version}"; + version = "2.9.2"; + + src = fetchurl { + url = "https://github.com/LWJGL/lwjgl/archive/lwjgl${version}.tar.gz"; + sha256 = "1m396ply3kspym3r00s1rbk77irn2f9vgr76xsy7272k649y3wky"; + }; + + buildInputs = with xorg; [ ant openjdk gcc libX11 libXt libXcursor + libXxf86vm libXrandr libXext ]; + + buildPhase = "mkdir -p bin && ant generate-all && ant compile && ant compile_native"; + + installPhase = '' + mkdir -p $out/lib + cp bin/lwjgl/*.so $out/lib + ''; + + meta = with stdenv.lib; { + description = "The Lightweight Java Game Library"; + longDescription = '' + LWJGL is a Java library that enables cross-platform access to popular native APIs useful in the development of graphics (OpenGL), audio (OpenAL) and parallel computing (OpenCL) applications. This access is direct and high-performance, yet also wrapped in a type-safe and user-friendly layer, appropriate for the Java ecosystem. + ''; + homepage = http://legacy.lwjgl.org/; + license = licenses.bsd3; + maintainers = with maintainers; [ pmiddend ]; + platforms = platforms.linux; + }; +} |