treewide: make LOVE games support darwin or fixed on darwin (#501873)

This commit is contained in:
Marcin Serwin
2026-03-27 15:34:24 +00:00
committed by GitHub
10 changed files with 33 additions and 29 deletions

View File

@@ -70,7 +70,7 @@ stdenv.mkDerivation rec {
installPhase = ''
runHook preInstall
install -Dm444 90secondportraits.love $out/share/games/lovegames/90secondportraits.love
makeWrapper ${love}/bin/love $out/bin/90secondportraits \
makeWrapper ${lib.getExe love} $out/bin/90secondportraits \
--add-flags $out/share/games/lovegames/90secondportraits.love
runHook postInstall
'';
@@ -78,7 +78,7 @@ stdenv.mkDerivation rec {
meta = {
description = "Silly speed painting game";
mainProgram = "90secondportraits";
platforms = lib.platforms.linux;
platforms = love.meta.platforms;
license = with lib.licenses; [
zlib
cc-by-sa-40

View File

@@ -65,7 +65,7 @@ stdenv.mkDerivation rec {
cp -v duckmarines.love $out/share/games/lovegames/duckmarines.love
makeWrapper ${love}/bin/love $out/bin/duckmarines --add-flags $out/share/games/lovegames/duckmarines.love
makeWrapper ${lib.getExe love} $out/bin/duckmarines --add-flags $out/share/games/lovegames/duckmarines.love
chmod +x $out/bin/duckmarines
mkdir -p $out/share/applications
@@ -74,7 +74,7 @@ stdenv.mkDerivation rec {
meta = {
description = "Duck-themed action puzzle video game";
platforms = lib.platforms.linux;
platforms = love.meta.platforms;
hydraPlatforms = [ ];
license = with lib.licenses; [
# code

View File

@@ -27,10 +27,12 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-m8dyCoudTJDfP0KGcoA0Xj5LmRwN/8YOfEwiwCa8sOE=";
fetchSubmodules = true;
}).overrideAttrs
(_: {
GIT_CONFIG_COUNT = 1;
GIT_CONFIG_KEY_0 = "url.https://github.com/.insteadOf";
GIT_CONFIG_VALUE_0 = "git@github.com:";
(oldAttrs: {
env = oldAttrs.env or { } // {
GIT_CONFIG_COUNT = 1;
GIT_CONFIG_KEY_0 = "url.https://github.com/.insteadOf";
GIT_CONFIG_VALUE_0 = "git@github.com:";
};
});
patches = [
@@ -75,7 +77,7 @@ stdenv.mkDerivation (finalAttrs: {
zip -9 -r honey-home.love ./*
strip-nondeterminism --type zip honey-home.love
install -Dm444 -t $out/share/games/lovegames/ honey-home.love
makeWrapper ${love}/bin/love $out/bin/honey-home \
makeWrapper ${lib.getExe love} $out/bin/honey-home \
--add-flags $out/share/games/lovegames/honey-home.love
runHook postInstall
'';

View File

@@ -44,7 +44,7 @@ stdenv.mkDerivation {
zip -9 -r mari0.love ./*
strip-nondeterminism --type zip mari0.love
install -Dm444 -t $out/share/games/lovegames/ mari0.love
makeWrapper ${love}/bin/love $out/bin/mari0 \
makeWrapper ${lib.getExe love} $out/bin/mari0 \
--add-flags $out/share/games/lovegames/mari0.love
runHook postInstall
'';
@@ -52,7 +52,7 @@ stdenv.mkDerivation {
meta = {
description = "Crossover between Super Mario Bros. and Portal";
mainProgram = "mari0";
platforms = lib.platforms.linux;
platforms = love.meta.platforms;
license = lib.licenses.mit;
downloadPage = "https://stabyourself.net/mari0/";
};

View File

@@ -61,7 +61,7 @@ stdenv.mkDerivation {
cp -v mrrescue.love $out/share/games/lovegames/mrrescue.love
makeWrapper ${love}/bin/love $out/bin/mrrescue --add-flags $out/share/games/lovegames/mrrescue.love
makeWrapper ${lib.getExe love} $out/bin/mrrescue --add-flags $out/share/games/lovegames/mrrescue.love
chmod +x $out/bin/mrrescue
mkdir -p $out/share/applications
@@ -72,7 +72,7 @@ stdenv.mkDerivation {
description = "Arcade-style fire fighting game";
mainProgram = "mrrescue";
maintainers = [ ];
platforms = lib.platforms.linux;
platforms = love.meta.platforms;
license = lib.licenses.zlib;
downloadPage = "http://tangramgames.dk/games/mrrescue";
};

View File

@@ -25,7 +25,7 @@ stdenv.mkDerivation (finalAttrs: {
src = fetchFromGitHub {
owner = "Stabyourself";
repo = "orthorobot";
rev = "v${finalAttrs.version}";
tag = "v${finalAttrs.version}";
sha256 = "1ca6hvd890kxmamsmsfiqzw15ngsvb4lkihjb6kabgmss61a6s5p";
};
@@ -72,7 +72,7 @@ stdenv.mkDerivation (finalAttrs: {
installPhase = ''
runHook preInstall
install -Dm444 -t $out/share/games/lovegames/ orthorobot.love
makeWrapper ${love}/bin/love $out/bin/orthorobot \
makeWrapper ${lib.getExe love} $out/bin/orthorobot \
--add-flags $out/share/games/lovegames/orthorobot.love
runHook postInstall
'';
@@ -80,7 +80,7 @@ stdenv.mkDerivation (finalAttrs: {
meta = {
description = "Recharge the robot";
mainProgram = "orthorobot";
platforms = lib.platforms.linux;
platforms = love.meta.platforms;
license = lib.licenses.wtfpl;
downloadPage = "https://stabyourself.net/orthorobot/";
};

View File

@@ -13,19 +13,19 @@ stdenv.mkDerivation rec {
version = "1.0d";
src = fetchurl {
url = "https://github.com/SimonLarsen/${pname}/releases/download/v${version}/${pname}-${version}.love";
sha256 = "sha256-1bFjhN7jL/PMYMJH1ete6uyHTYsTGgoP60sf/sJTLlU=";
url = "https://github.com/SimonLarsen/sienna/releases/download/v${version}/sienna-${version}.love";
hash = "sha256-1bFjhN7jL/PMYMJH1ete6uyHTYsTGgoP60sf/sJTLlU=";
};
icon = fetchurl {
url = "http://tangramgames.dk/img/thumb/sienna.png";
sha256 = "12q2rhk39dmb6ir50zafn8dylaad5gns8z3y21mfjabc5l5g02nn";
hash = "sha256-1grwCi1sKelqEH58pO0rTSnqG7JOfVByNKu2NCbMAos=";
};
desktopItems = [
(makeDesktopItem {
name = "sienna";
exec = pname;
exec = "sienna";
icon = icon;
comment = "Fast-paced one button platformer";
desktopName = "Sienna";
@@ -46,9 +46,9 @@ stdenv.mkDerivation rec {
mkdir -p $out/bin
mkdir -p $out/share/games/lovegames
cp -v $src $out/share/games/lovegames/${pname}.love
cp -v $src $out/share/games/lovegames/sienna.love
makeWrapper ${love}/bin/love $out/bin/${pname} --add-flags $out/share/games/lovegames/${pname}.love
makeWrapper ${lib.getExe love} $out/bin/sienna --add-flags $out/share/games/lovegames/sienna.love
runHook postInstall
'';
@@ -56,8 +56,9 @@ stdenv.mkDerivation rec {
description = "Fast-paced one button platformer";
mainProgram = "sienna";
homepage = "https://tangramgames.dk/games/sienna";
platforms = lib.platforms.linux;
license = lib.licenses.free;
platforms = love.meta.platforms;
license = lib.licenses.zlib;
maintainers = [ ];
};
}

View File

@@ -17,7 +17,7 @@ stdenvNoCC.mkDerivation rec {
src = fetchFromGitLab {
owner = "stone-kingdoms";
repo = "stone-kingdoms";
rev = version;
tag = version;
hash = "sha256-W2hzJg22O857Kh7CJVVHV5qu8QKjXCwW3hmgKBc0n2g=";
};
@@ -46,7 +46,7 @@ stdenvNoCC.mkDerivation rec {
strip-nondeterminism --type zip stone-kingdoms.love
install -Dm755 -t $out/share/games/lovegames/ stone-kingdoms.love
install -Dm644 assets/other/icon.png $out/share/icons/hicolor/256x256/apps/stone-kingdoms.png
makeWrapper ${love}/bin/love $out/bin/stone-kingdoms \
makeWrapper ${lib.getExe love} $out/bin/stone-kingdoms \
--add-flags $out/share/games/lovegames/stone-kingdoms.love
runHook postInstall
'';
@@ -54,7 +54,7 @@ stdenvNoCC.mkDerivation rec {
meta = {
description = "Real-time strategy game made with LÖVE based on the original Stronghold by Firefly studios";
homepage = "https://gitlab.com/stone-kingdoms/stone-kingdoms";
platforms = lib.platforms.linux;
platforms = love.meta.platforms;
license = with lib.licenses; [
asl20 # engine
unfree # game assets

View File

@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
buildPhase = ''
runHook preBuild
gcc -shared cold_clear_wrapper.c -lcold_clear -lluajit-${luajit.luaversion} -o CCLoader.so
$CC -shared cold_clear_wrapper.c -o CCLoader.so -lcold_clear -lluajit-${luajit.luaversion}
runHook postBuild
'';

View File

@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
cp $src $out/share/games/lovegames/techmino.love
mkdir -p $out/bin
makeWrapper ${love}/bin/love $out/bin/techmino \
makeWrapper ${lib.getExe love} $out/bin/techmino \
--add-flags $out/share/games/lovegames/techmino.love \
--suffix LUA_CPATH : ${ccloader}/lib/lua/${luajit.luaversion}/CCLoader.so
@@ -76,6 +76,7 @@ stdenv.mkDerivation rec {
downloadPage = "https://github.com/26F-Studio/Techmino/releases";
homepage = "https://github.com/26F-Studio/Techmino/";
license = lib.licenses.lgpl3;
platforms = love.meta.platforms;
mainProgram = "techmino";
maintainers = with lib.maintainers; [ chayleaf ];
};