arrow: init at 3.0.0 (#406732)
This commit is contained in:
@@ -0,0 +1,102 @@
|
||||
{
|
||||
stdenv,
|
||||
lib,
|
||||
fetchFromGitHub,
|
||||
godot_4_4,
|
||||
alsa-lib,
|
||||
libGL,
|
||||
libpulseaudio,
|
||||
libX11,
|
||||
libXcursor,
|
||||
libXext,
|
||||
libXi,
|
||||
libXrandr,
|
||||
udev,
|
||||
vulkan-loader,
|
||||
autoPatchelfHook,
|
||||
writableTmpDirAsHomeHook,
|
||||
makeDesktopItem,
|
||||
copyDesktopItems,
|
||||
nix-update-script,
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "arrow";
|
||||
version = "3.0.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "mhgolkar";
|
||||
repo = "Arrow";
|
||||
tag = "v${finalAttrs.version}";
|
||||
hash = "sha256-oodW6XvesBWic0yK1Se/tycjqblE4qUSuAk+3MY3x8I=";
|
||||
};
|
||||
|
||||
desktopItems = [
|
||||
(makeDesktopItem {
|
||||
type = "Application";
|
||||
name = "Arrow";
|
||||
exec = "Arrow";
|
||||
icon = "Arrow";
|
||||
terminal = false;
|
||||
comment = "Game Narrative Design Tool";
|
||||
desktopName = "Arrow";
|
||||
categories = [ "Application" ];
|
||||
})
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
autoPatchelfHook
|
||||
writableTmpDirAsHomeHook
|
||||
godot_4_4
|
||||
copyDesktopItems
|
||||
];
|
||||
|
||||
runtimeDependencies = map lib.getLib [
|
||||
alsa-lib
|
||||
libGL
|
||||
libpulseaudio
|
||||
libX11
|
||||
libXcursor
|
||||
libXext
|
||||
libXi
|
||||
libXrandr
|
||||
udev
|
||||
vulkan-loader
|
||||
];
|
||||
|
||||
passthru.updateScript = nix-update-script { };
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
ln -s "${godot_4_4.export-templates-bin}" $HOME/.local
|
||||
|
||||
mkdir -p build
|
||||
godot4 --headless --export-release Linux ./build/Arrow
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
install -D -m 755 -t $out/libexec ./build/Arrow
|
||||
install -D -m 644 -t $out/libexec ./build/Arrow.pck
|
||||
|
||||
install -d -m 755 $out/bin
|
||||
ln -s $out/libexec/Arrow $out/bin/Arrow
|
||||
|
||||
install -vD icon.svg $out/share/icons/hicolor/scalable/apps/Arrow.svg
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = "https://mhgolkar.github.io/Arrow/";
|
||||
description = "Game Narrative Design Tool";
|
||||
license = lib.licenses.mit;
|
||||
mainProgram = "Arrow";
|
||||
maintainers = with lib.maintainers; [ miampf ];
|
||||
platforms = lib.platforms.linux;
|
||||
};
|
||||
})
|
||||
Reference in New Issue
Block a user