Merge pull request #138042 from astro/trenchbroom
trenchbroom, ericw-tools: init
This commit is contained in:
commit
3b66ca006c
3 changed files with 119 additions and 0 deletions
48
pkgs/applications/misc/ericw-tools/default.nix
Normal file
48
pkgs/applications/misc/ericw-tools/default.nix
Normal file
|
@ -0,0 +1,48 @@
|
|||
{ lib, stdenv, fetchFromGitHub
|
||||
, gtest, fmt
|
||||
, cmake, ninja, installShellFiles
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ericw-tools";
|
||||
version = "0.18.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "ericwa";
|
||||
repo = "ericw-tools";
|
||||
rev = "v${version}";
|
||||
sha256 = "11sap7qv0rlhw8q25azvhgjcwiql3zam09q0gim3i04cg6fkh0vp";
|
||||
};
|
||||
postUnpack = ''
|
||||
pushd source/3rdparty
|
||||
ln -s ${fmt.src} fmt
|
||||
ln -s ${gtest.src} googletest
|
||||
popd
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ cmake ninja installShellFiles ];
|
||||
|
||||
outputs = [ "out" "doc" "man" ];
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out/bin
|
||||
for TOOL in bspinfo bsputil light qbsp vis ; do
|
||||
cp -a $TOOL/$TOOL $out/bin/
|
||||
done
|
||||
|
||||
installManPage ../man/*.?
|
||||
|
||||
mkdir -p $doc/share/doc/ericw-tools
|
||||
cp -a ../README.md ../changelog.txt $doc/share/doc/ericw-tools/
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://ericwa.github.io/ericw-tools/";
|
||||
description = "Map compile tools for Quake and Hexen 2";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ astro ];
|
||||
};
|
||||
}
|
65
pkgs/applications/misc/trenchbroom/default.nix
Normal file
65
pkgs/applications/misc/trenchbroom/default.nix
Normal file
|
@ -0,0 +1,65 @@
|
|||
{ lib, stdenv, fetchFromGitHub
|
||||
, cmake, ninja, git, pandoc
|
||||
, libGL, libGLU, libXxf86vm, freeimage
|
||||
, qtbase, wrapQtAppsHook
|
||||
, copyDesktopItems, makeDesktopItem
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "TrenchBroom";
|
||||
version = "2021.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "TrenchBroom";
|
||||
repo = "TrenchBroom";
|
||||
rev = "v${version}";
|
||||
sha256 = "06j68kp7g57hclyp8ilh2wd4vr5w8r718cicdp1cap48fcxlqfxv";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
postPatch = ''
|
||||
substituteInPlace common/src/Version.h.in \
|
||||
--subst-var-by APP_VERSION_YEAR ${lib.versions.major version} \
|
||||
--subst-var-by APP_VERSION_NUMBER ${lib.versions.minor version} \
|
||||
--subst-var-by GIT_DESCRIBE v${version}
|
||||
'';
|
||||
|
||||
nativeBuildInputs = [ cmake git pandoc wrapQtAppsHook copyDesktopItems ];
|
||||
buildInputs = [ libGL libGLU libXxf86vm freeimage qtbase ];
|
||||
QT_PLUGIN_PATH = "${qtbase}/${qtbase.qtPluginPrefix}";
|
||||
QT_QPA_PLATFORM = "offscreen";
|
||||
ninjaFlags = [
|
||||
"TrenchBroom"
|
||||
];
|
||||
preBuild = "export HOME=$(mktemp -d)";
|
||||
|
||||
postInstall = ''
|
||||
pushd $out/share/TrenchBroom/icons
|
||||
|
||||
for F in icon_*.png; do
|
||||
SIZE=$(echo $F|sed -e s/icon_// -e s/.png//)
|
||||
DIR=$out/share/icons/hicolor/$SIZE"x"$SIZE/apps
|
||||
mkdir -p $DIR
|
||||
ln -s ../../../../TrenchBroom/icons/$F $DIR/trenchbroom.png
|
||||
done
|
||||
|
||||
popd
|
||||
'';
|
||||
|
||||
desktopItems = [
|
||||
(makeDesktopItem {
|
||||
name = "TrenchBroom";
|
||||
desktopName = "TrenchBroom level editor";
|
||||
icon = "trenchbroom";
|
||||
comment = meta.description;
|
||||
categories = "Development";
|
||||
exec = "trenchbroom";
|
||||
})
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://trenchbroom.github.io/";
|
||||
description = "Level editor for Quake-engine based games";
|
||||
license = licenses.gpl3Only;
|
||||
maintainers = with maintainers; [ astro ];
|
||||
};
|
||||
}
|
|
@ -4714,6 +4714,8 @@ with pkgs;
|
|||
|
||||
endlessh = callPackage ../servers/endlessh { };
|
||||
|
||||
ericw-tools = callPackage ../applications/misc/ericw-tools { };
|
||||
|
||||
cryfs = callPackage ../tools/filesystems/cryfs { };
|
||||
|
||||
encfs = callPackage ../tools/filesystems/encfs {
|
||||
|
@ -9712,6 +9714,10 @@ with pkgs;
|
|||
|
||||
trebleshot = libsForQt5.callPackage ../applications/networking/trebleshot { };
|
||||
|
||||
trenchbroom = libsForQt5.callPackage ../applications/misc/trenchbroom {
|
||||
inherit (xorg) libXxf86vm;
|
||||
};
|
||||
|
||||
trickle = callPackage ../tools/networking/trickle {};
|
||||
|
||||
inherit (nodePackages) triton;
|
||||
|
|
Loading…
Reference in a new issue