diff options
author | Peder Bergebakken Sundt <pbsds@hotmail.com> | 2023-11-22 16:59:46 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-11-22 16:59:46 +0100 |
commit | 01b6d8bd71495595ca79f22a7376faa41f3738d5 (patch) | |
tree | 26ec75457598f875e828de9ef70abcf7774663af /pkgs/by-name | |
parent | b7deed0c08ec730957c643cc1372dc56e55dd4ac (diff) | |
parent | 80aced8d5cb1612e18f4d3d943810c654f1ba921 (diff) | |
download | nixlib-01b6d8bd71495595ca79f22a7376faa41f3738d5.tar nixlib-01b6d8bd71495595ca79f22a7376faa41f3738d5.tar.gz nixlib-01b6d8bd71495595ca79f22a7376faa41f3738d5.tar.bz2 nixlib-01b6d8bd71495595ca79f22a7376faa41f3738d5.tar.lz nixlib-01b6d8bd71495595ca79f22a7376faa41f3738d5.tar.xz nixlib-01b6d8bd71495595ca79f22a7376faa41f3738d5.tar.zst nixlib-01b6d8bd71495595ca79f22a7376faa41f3738d5.zip |
Merge pull request #259774 from surfaceflinger/jazz2-finalattrs
jazz2: switch to finalAttrs, use runCommandLocal for content, migrate to by-name
Diffstat (limited to 'pkgs/by-name')
-rw-r--r-- | pkgs/by-name/ja/jazz2-content/package.nix | 16 | ||||
-rw-r--r-- | pkgs/by-name/ja/jazz2/nocontent.patch | 12 | ||||
-rw-r--r-- | pkgs/by-name/ja/jazz2/package.nix | 55 |
3 files changed, 83 insertions, 0 deletions
diff --git a/pkgs/by-name/ja/jazz2-content/package.nix b/pkgs/by-name/ja/jazz2-content/package.nix new file mode 100644 index 000000000000..d30f6a771b23 --- /dev/null +++ b/pkgs/by-name/ja/jazz2-content/package.nix @@ -0,0 +1,16 @@ +{ jazz2 +, lib +, runCommandLocal +}: + +runCommandLocal "jazz2-content" +{ + inherit (jazz2) version src; + + meta = (builtins.removeAttrs jazz2.meta ["mainProgram"]) // { + description = "Assets needed for jazz2"; + platforms = lib.platforms.all; + }; +} '' + cp -r $src/Content $out +'' diff --git a/pkgs/by-name/ja/jazz2/nocontent.patch b/pkgs/by-name/ja/jazz2/nocontent.patch new file mode 100644 index 000000000000..28ced9426b49 --- /dev/null +++ b/pkgs/by-name/ja/jazz2/nocontent.patch @@ -0,0 +1,12 @@ +diff --git a/cmake/ncine_installation.cmake b/cmake/ncine_installation.cmake +index 9ccb707..89c350f 100644 +--- a/cmake/ncine_installation.cmake ++++ b/cmake/ncine_installation.cmake +@@ -195,7 +195,6 @@ endif() + #endif() + + if(NOT EMSCRIPTEN) +- install(DIRECTORY "${NCINE_ROOT}/Content/" DESTINATION ${DATA_INSTALL_DESTINATION}) + else() + install(FILES "${CMAKE_BINARY_DIR}/${CPACK_EXECUTABLE_NAME}.html" DESTINATION ".") + install(FILES "${CMAKE_BINARY_DIR}/${CPACK_EXECUTABLE_NAME}.data" DESTINATION ".") diff --git a/pkgs/by-name/ja/jazz2/package.nix b/pkgs/by-name/ja/jazz2/package.nix new file mode 100644 index 000000000000..5b95bb8c1875 --- /dev/null +++ b/pkgs/by-name/ja/jazz2/package.nix @@ -0,0 +1,55 @@ +{ cmake +, fetchFromGitHub +, glfw +, jazz2-content +, lib +, libopenmpt +, libvorbis +, openal +, SDL2 +, stdenv +, testers +, zlib +, graphicsLibrary ? "GLFW" +}: + +assert lib.assertOneOf "graphicsLibrary" graphicsLibrary [ "SDL2" "GLFW" ]; +stdenv.mkDerivation (finalAttrs: { + pname = "jazz2"; + version = "2.2.2"; + + src = fetchFromGitHub { + owner = "deathkiller"; + repo = "jazz2-native"; + rev = finalAttrs.version; + hash = "sha256-1psMeuMV8GjS+uNlgtCvKpHgV9XW+vjviQTHBPjA4Lc="; + }; + + patches = [ ./nocontent.patch ]; + + nativeBuildInputs = [ cmake ]; + buildInputs = [ libopenmpt libvorbis openal zlib ] + ++ lib.optionals (graphicsLibrary == "GLFW") [ glfw ] + ++ lib.optionals (graphicsLibrary == "SDL2") [ SDL2 ]; + + cmakeFlags = [ + "-DLIBOPENMPT_INCLUDE_DIR=${lib.getDev libopenmpt}/include/libopenmpt" + "-DNCINE_DOWNLOAD_DEPENDENCIES=OFF" + "-DNCINE_OVERRIDE_CONTENT_PATH=${jazz2-content}" + ] ++ lib.optionals (graphicsLibrary == "GLFW") [ + "-DGLFW_INCLUDE_DIR=${glfw}/include/GLFW" + ]; + + passthru.tests.version = testers.testVersion { + package = finalAttrs.finalPackage; + }; + + meta = with lib; { + description = "Open-source Jazz Jackrabbit 2 reimplementation"; + homepage = "https://github.com/deathkiller/jazz2-native"; + license = licenses.gpl3Only; + mainProgram = "jazz2"; + maintainers = with maintainers; [ surfaceflinger ]; + platforms = platforms.linux; + }; +}) |