diff options
Diffstat (limited to 'pkgs/tools/games/ajour/default.nix')
-rw-r--r-- | pkgs/tools/games/ajour/default.nix | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/pkgs/tools/games/ajour/default.nix b/pkgs/tools/games/ajour/default.nix new file mode 100644 index 00000000000..1e102a950b9 --- /dev/null +++ b/pkgs/tools/games/ajour/default.nix @@ -0,0 +1,81 @@ +{ lib +, fetchFromGitHub +, rustPlatform +, autoPatchelfHook +, cmake +, makeWrapper +, pkg-config +, python3 +, expat +, freetype +, kdialog +, zenity +, openssl +, libX11 +, libxcb +, libXcursor +, libXi +, libxkbcommon +, libXrandr +, vulkan-loader +, wayland +}: + +let + rpathLibs = [ + libXcursor + libXi + libxkbcommon + libXrandr + libX11 + vulkan-loader + wayland + ]; + +in rustPlatform.buildRustPackage rec { + pname = "Ajour"; + version = "1.2.1"; + + src = fetchFromGitHub { + owner = "casperstorm"; + repo = "ajour"; + rev = version; + sha256 = "sha256-arb6wPoDlNdBxSQ+G0KyN4Pbd0nPhb+DbvRlbPaPtPI="; + }; + + cargoSha256 = "sha256-1hK6C10oM5b8anX+EofekR686AZR5LcpXyhVkmHcSwA="; + + nativeBuildInputs = [ + autoPatchelfHook + cmake + makeWrapper + pkg-config + python3 + ]; + + buildInputs = [ + expat + freetype + openssl + libxcb + libX11 + ]; + + fixupPhase = '' + patchelf --set-rpath "${lib.makeLibraryPath rpathLibs}:$(patchelf --print-rpath $out/bin/ajour)" $out/bin/ajour + wrapProgram $out/bin/ajour --prefix PATH ":" ${lib.makeBinPath [ zenity kdialog ]} + ''; + + meta = with lib; { + description = "World of Warcraft addon manager written in Rust"; + longDescription = '' + Ajour is a World of Warcraft addon manager written in Rust with a + strong focus on performance and simplicity. The project is + completely advertisement free, privacy respecting and open source. + ''; + homepage = "https://github.com/casperstorm/ajour"; + changelog = "https://github.com/casperstorm/ajour/blob/master/CHANGELOG.md"; + license = licenses.mit; + maintainers = with maintainers; [ hexa ]; + }; +} |