nixpkgs/pkgs/games/airshipper/default.nix

86 lines
1.8 KiB
Nix
Raw Normal View History

2021-09-11 17:21:05 +00:00
{ lib
, rustPlatform
, fetchFromGitLab
, fetchpatch
2021-09-11 17:21:05 +00:00
, openssl
, libGL
2021-09-11 17:21:05 +00:00
, vulkan-loader
, wayland
, wayland-protocols
, libxkbcommon
, libX11
, libXrandr
, libXi
, libXcursor
, pkg-config
, makeWrapper
}:
rustPlatform.buildRustPackage rec {
pname = "airshipper";
2022-03-13 01:10:15 +00:00
version = "0.7.0";
2021-09-11 17:21:05 +00:00
src = fetchFromGitLab {
owner = "Veloren";
repo = "airshipper";
rev = "v${version}";
2022-03-13 01:10:15 +00:00
sha256 = "sha256-nOE9ZNHxLEAnMkuBSpxmeq3DxkRIlcoase6AxU+eFug=";
2021-09-11 17:21:05 +00:00
};
patches = [
# this *should* be merged in time for the release following 0.7.0
(fetchpatch {
url = "https://github.com/veloren/Airshipper/commit/97fc986ab4cbf59f2c764f647710f19db86031b4.patch";
hash = "sha256-Sg5et+yP6Z44wV/t9zqKLpg1C0cq6rV+3WrzAH4Za3U=";
})
];
2022-03-13 01:10:15 +00:00
cargoSha256 = "sha256-s3seKVEhXyOVlt3a8cubzRWoB4SVQpdCmq12y0FpDUw=";
2021-09-11 17:21:05 +00:00
buildInputs = [
openssl
wayland
wayland-protocols
libxkbcommon
libX11
libXrandr
libXi
libXcursor
];
nativeBuildInputs = [ pkg-config makeWrapper ];
postInstall = ''
install -Dm444 -t "$out/share/applications" "client/assets/net.veloren.airshipper.desktop"
install -Dm444 "client/assets/logo.ico" "$out/share/icons/net.veloren.airshipper.ico"
2021-09-11 17:21:05 +00:00
'';
postFixup =
let
libPath = lib.makeLibraryPath [
libGL
2021-09-11 17:21:05 +00:00
vulkan-loader
wayland
wayland-protocols
libxkbcommon
libX11
libXrandr
libXi
libXcursor
];
in
''
2021-09-11 17:21:05 +00:00
patchelf --set-rpath "${libPath}" "$out/bin/airshipper"
'';
doCheck = false;
cargoBuildFlags = [ "--package" "airshipper" ];
cargoTestFlags = [ "--package" "airshipper" ];
meta = with lib; {
description = "Provides automatic updates for the voxel RPG Veloren.";
homepage = "https://www.veloren.net";
license = licenses.gpl3;
maintainers = with maintainers; [ yusdacra ];
};
}