Merge pull request #285907 from eclairevoyant/liberation-circuit

liberation-circuit: fix wrapper for non-gnome environments
This commit is contained in:
superherointj 2024-04-17 11:01:14 -03:00 committed by GitHub
commit 6868b2d9a8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 20 additions and 11 deletions

View File

@ -1,26 +1,27 @@
{ stdenv, lib, fetchFromGitHub, fetchurl, pkg-config, makeWrapper, allegro5, libGL }:
{ stdenv, lib, fetchFromGitHub, fetchurl, pkg-config, allegro5, libGL, wrapGAppsHook }:
stdenv.mkDerivation rec {
pname = "liberation-circuit";
version = "unstable-2022-01-02";
version = "1.3-unstable-2022-01-02";
src = fetchFromGitHub {
owner = "linleyh";
repo = pname;
repo = "liberation-circuit";
rev = "19e3363547793e931fd9419b61ebc2cd8e257714";
sha256 = "zIwjh4CBSmKz7pF7GM5af+VslWho5jHOLsulbW4C8TY=";
hash = "sha256-zIwjh4CBSmKz7pF7GM5af+VslWho5jHOLsulbW4C8TY=";
};
nativeBuildInputs = [ pkg-config makeWrapper ];
nativeBuildInputs = [ pkg-config wrapGAppsHook ];
buildInputs = [ allegro5 libGL ];
dontWrapGApps = true;
installPhase = ''
runHook preInstall
mkdir -p $out/opt
cp -r bin $out/opt/liberation-circuit
chmod +x $out/opt/liberation-circuit/launcher.sh
makeWrapper $out/opt/liberation-circuit/launcher.sh $out/bin/liberation-circuit
install -D linux-packaging/liberation-circuit.desktop $out/share/applications/liberation-circuit.desktop
install -D linux-packaging/liberation-circuit.appdata.xml $out/share/metainfo/liberation-circuit.appdata.xml
@ -29,15 +30,23 @@ stdenv.mkDerivation rec {
runHook postInstall
'';
meta = with lib; {
postFixup = ''
makeWrapper $out/opt/liberation-circuit/launcher.sh $out/bin/liberation-circuit \
"''${gappsWrapperArgs[@]}"
'';
meta = {
description = "Real-time strategy game with programmable units";
mainProgram = "liberation-circuit";
longDescription = ''
Escape from a hostile computer system! Harvest data to create an armada of battle-processes to aid your escape! Take command directly and play the game as an RTS, or use the game's built-in editor and compiler to write your own unit AI in a simplified version of C.
Escape from a hostile computer system!
Harvest data to create an armada of battle-processes to aid your escape!
Take command directly and play the game as an RTS, or use the game's built-in
editor and compiler to write your own unit AI in a simplified version of C.
'';
homepage = "https://linleyh.itch.io/liberation-circuit";
maintainers = with maintainers; [ emilytrau ];
license = licenses.gpl3Only;
platforms = platforms.linux;
maintainers = with lib.maintainers; [ emilytrau ];
license = lib.licenses.gpl3Only;
platforms = lib.platforms.linux;
};
}