Files
nixpkgs/pkgs/by-name/ga/gargoyle/package.nix
Dark Steveneq 646b892680
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s
push sheeet
2025-10-09 14:15:47 +02:00

89 lines
1.9 KiB
Nix

{
lib,
stdenv,
fetchFromGitHub,
fetchDebianPatch,
cmake,
pkg-config,
fluidsynth,
fmt,
freetype,
libjpeg,
libopenmpt,
libpng,
libsndfile,
libvorbis,
mpg123,
qt6,
}:
stdenv.mkDerivation rec {
pname = "gargoyle";
version = "2023.1";
src = fetchFromGitHub {
owner = "garglk";
repo = "garglk";
tag = version;
hash = "sha256-XsN5FXWJb3DSOjipxr/HW9R7QS+7iEaITERTrbGEMwA=";
};
patches = [
(fetchDebianPatch {
pname = "gargoyle-free";
version = "2023.1+dfsg";
debianRevision = "4";
patch = "ftbfs_gcc14.patch";
hash = "sha256-eMx/RlUpq5Ez+1L8VZo40Y3h2ZKkqiQEmKTlkZRMXnI=";
})
];
postPatch = ''
substituteInPlace garglk/garglk.pc.in \
--replace "\''${prefix}/@CMAKE_INSTALL_LIBDIR@" "@CMAKE_INSTALL_FULL_LIBDIR@" \
--replace "\''${prefix}/@CMAKE_INSTALL_INCLUDEDIR@" "@CMAKE_INSTALL_FULL_INCLUDEDIR@"
'';
nativeBuildInputs = [
cmake
pkg-config
qt6.wrapQtAppsHook
];
buildInputs = [
fluidsynth
fmt
freetype
libjpeg
libopenmpt
libpng
libsndfile
libvorbis
mpg123
qt6.qtbase
qt6.qtmultimedia
]
++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
qt6.qtwayland
];
cmakeFlags = [
(lib.cmakeFeature "INTERFACE" "QT")
(lib.cmakeFeature "SOUND" "QT")
(lib.cmakeBool "WITH_QT6" true)
# fatal error: 'macglk_startup.h' file not found
(lib.cmakeBool "WITH_AGILITY" (!stdenv.hostPlatform.isDarwin))
(lib.cmakeBool "WITH_LEVEL9" (!stdenv.hostPlatform.isDarwin))
(lib.cmakeBool "WITH_MAGNETIC" (!stdenv.hostPlatform.isDarwin))
];
meta = with lib; {
homepage = "http://ccxvii.net/gargoyle/";
license = licenses.gpl2Plus;
description = "Interactive fiction interpreter GUI";
mainProgram = "gargoyle";
platforms = platforms.unix;
maintainers = with maintainers; [ orivej ];
};
}