From 5e5192e6c12a630e592e38b2a119933463b8b8cb Mon Sep 17 00:00:00 2001 From: Gliczy <129636582+Gliczy@users.noreply.github.com> Date: Mon, 4 Nov 2024 18:19:24 +0100 Subject: [PATCH 1/5] taisei: move to pkgs/by-name --- pkgs/{games => by-name/ta}/taisei/0001-lto-fix.patch | 0 .../{games/taisei/default.nix => by-name/ta/taisei/package.nix} | 0 pkgs/top-level/all-packages.nix | 2 -- 3 files changed, 2 deletions(-) rename pkgs/{games => by-name/ta}/taisei/0001-lto-fix.patch (100%) rename pkgs/{games/taisei/default.nix => by-name/ta/taisei/package.nix} (100%) diff --git a/pkgs/games/taisei/0001-lto-fix.patch b/pkgs/by-name/ta/taisei/0001-lto-fix.patch similarity index 100% rename from pkgs/games/taisei/0001-lto-fix.patch rename to pkgs/by-name/ta/taisei/0001-lto-fix.patch diff --git a/pkgs/games/taisei/default.nix b/pkgs/by-name/ta/taisei/package.nix similarity index 100% rename from pkgs/games/taisei/default.nix rename to pkgs/by-name/ta/taisei/package.nix diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 062a4d288373..2a8a82cba2f3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -34980,8 +34980,6 @@ with pkgs; t4kcommon = callPackage ../games/t4kcommon { }; - taisei = callPackage ../games/taisei { }; - tcl2048 = callPackage ../games/tcl2048 { }; the-powder-toy = callPackage ../by-name/th/the-powder-toy/package.nix { From daf3bcfbd363375a492442d0e57c1e8318594302 Mon Sep 17 00:00:00 2001 From: Gliczy <129636582+Gliczy@users.noreply.github.com> Date: Mon, 4 Nov 2024 18:21:06 +0100 Subject: [PATCH 2/5] taisei: format with nixfmt --- pkgs/by-name/ta/taisei/package.nix | 48 +++++++++++++++++++++++------- 1 file changed, 38 insertions(+), 10 deletions(-) diff --git a/pkgs/by-name/ta/taisei/package.nix b/pkgs/by-name/ta/taisei/package.nix index ee5712f7b7f6..fc3b99db6e0a 100644 --- a/pkgs/by-name/ta/taisei/package.nix +++ b/pkgs/by-name/ta/taisei/package.nix @@ -1,9 +1,23 @@ -{ lib, stdenv, fetchurl -# Build depends -, docutils, meson, ninja, pkg-config, python3 -# Runtime depends -, glfw, SDL2, SDL2_mixer -, cglm, freetype, libpng, libwebp, libzip, zlib +{ + lib, + stdenv, + fetchurl, + # Build depends + docutils, + meson, + ninja, + pkg-config, + python3, + # Runtime depends + glfw, + SDL2, + SDL2_mixer, + cglm, + freetype, + libpng, + libwebp, + libzip, + zlib, }: stdenv.mkDerivation rec { @@ -16,12 +30,23 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ - docutils meson ninja pkg-config python3 + docutils + meson + ninja + pkg-config + python3 ]; buildInputs = [ - glfw SDL2 SDL2_mixer - cglm freetype libpng libwebp libzip zlib + glfw + SDL2 + SDL2_mixer + cglm + freetype + libpng + libwebp + libzip + zlib ]; patches = [ ./0001-lto-fix.patch ]; @@ -40,7 +65,10 @@ stdenv.mkDerivation rec { folklore. ''; homepage = "https://taisei-project.org/"; - license = [ licenses.mit licenses.cc-by-40 ]; + license = [ + licenses.mit + licenses.cc-by-40 + ]; maintainers = [ maintainers.lambda-11235 ]; platforms = platforms.all; }; From 1ffa3b644df17a5ec4fa18bfeac36022c7e2e970 Mon Sep 17 00:00:00 2001 From: Gliczy <129636582+Gliczy@users.noreply.github.com> Date: Mon, 4 Nov 2024 18:40:26 +0100 Subject: [PATCH 3/5] taisei: refactor --- pkgs/by-name/ta/taisei/0001-lto-fix.patch | 13 ------------- pkgs/by-name/ta/taisei/package.nix | 14 +++++++------- 2 files changed, 7 insertions(+), 20 deletions(-) delete mode 100644 pkgs/by-name/ta/taisei/0001-lto-fix.patch diff --git a/pkgs/by-name/ta/taisei/0001-lto-fix.patch b/pkgs/by-name/ta/taisei/0001-lto-fix.patch deleted file mode 100644 index eed7b845f53c..000000000000 --- a/pkgs/by-name/ta/taisei/0001-lto-fix.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/meson.build b/meson.build -index 80aa58d..c7e9d0a 100644 ---- a/meson.build -+++ b/meson.build -@@ -17,7 +17,7 @@ project('taisei', 'c', - # You may want to change these for a debug build dir - 'buildtype=release', - 'strip=true', -- 'b_lto=true', -+ 'b_lto=false', - 'b_ndebug=if-release', - ] - ) diff --git a/pkgs/by-name/ta/taisei/package.nix b/pkgs/by-name/ta/taisei/package.nix index fc3b99db6e0a..0a48f6e4db8f 100644 --- a/pkgs/by-name/ta/taisei/package.nix +++ b/pkgs/by-name/ta/taisei/package.nix @@ -49,13 +49,13 @@ stdenv.mkDerivation rec { zlib ]; - patches = [ ./0001-lto-fix.patch ]; + mesonFlags = [ "-Db_lto=false" ]; preConfigure = '' patchShebangs . ''; - meta = with lib; { + meta = { broken = stdenv.hostPlatform.isDarwin; description = "Free and open-source Touhou Project clone and fangame"; mainProgram = "taisei"; @@ -65,11 +65,11 @@ stdenv.mkDerivation rec { folklore. ''; homepage = "https://taisei-project.org/"; - license = [ - licenses.mit - licenses.cc-by-40 + license = with lib.licenses; [ + mit + cc-by-40 ]; - maintainers = [ maintainers.lambda-11235 ]; - platforms = platforms.all; + maintainers = with lib.maintainers; [ lambda-11235 ]; + platforms = lib.platforms.all; }; } From fb3821722e9cb3311cdcff40e6d89595c7e9c90b Mon Sep 17 00:00:00 2001 From: Gliczy <129636582+Gliczy@users.noreply.github.com> Date: Mon, 4 Nov 2024 18:41:01 +0100 Subject: [PATCH 4/5] taisei: add Gliczy as maintainer --- pkgs/by-name/ta/taisei/package.nix | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pkgs/by-name/ta/taisei/package.nix b/pkgs/by-name/ta/taisei/package.nix index 0a48f6e4db8f..e49ddb851ed7 100644 --- a/pkgs/by-name/ta/taisei/package.nix +++ b/pkgs/by-name/ta/taisei/package.nix @@ -69,7 +69,10 @@ stdenv.mkDerivation rec { mit cc-by-40 ]; - maintainers = with lib.maintainers; [ lambda-11235 ]; + maintainers = with lib.maintainers; [ + lambda-11235 + Gliczy + ]; platforms = lib.platforms.all; }; } From 23fd859f452bc1e6050b88084b5203d5ab33c96f Mon Sep 17 00:00:00 2001 From: Gliczy <129636582+Gliczy@users.noreply.github.com> Date: Mon, 4 Nov 2024 20:30:13 +0100 Subject: [PATCH 5/5] taisei: 1.3.2 -> 1.4.2 --- pkgs/by-name/ta/taisei/package.nix | 50 +++++++++++++++++++++++------- 1 file changed, 38 insertions(+), 12 deletions(-) diff --git a/pkgs/by-name/ta/taisei/package.nix b/pkgs/by-name/ta/taisei/package.nix index e49ddb851ed7..452fbf04d0db 100644 --- a/pkgs/by-name/ta/taisei/package.nix +++ b/pkgs/by-name/ta/taisei/package.nix @@ -1,13 +1,18 @@ { lib, stdenv, - fetchurl, + fetchFromGitHub, # Build depends docutils, meson, ninja, pkg-config, - python3, + python3Packages, + opusfile, + openssl, + gamemode, + shaderc, + ensureNewerSourcesForZipFilesHook, # Runtime depends glfw, SDL2, @@ -18,15 +23,22 @@ libwebp, libzip, zlib, + zstd, + spirv-cross, + + gamemodeSupport ? stdenv.hostPlatform.isLinux, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "taisei"; - version = "1.3.2"; + version = "1.4.2"; - src = fetchurl { - url = "https://github.com/taisei-project/${pname}/releases/download/v${version}/${pname}-v${version}.tar.xz"; - sha256 = "1g53fcyrlzmvlsb40pw90gaglysv6n1w42hk263iv61ibhdmzh6v"; + src = fetchFromGitHub { + owner = "taisei-project"; + repo = "taisei"; + rev = "v${finalAttrs.version}"; + hash = "sha256-rThLz8o6IYhIBUc0b1sAQi2aF28btajcM1ScTv+qn6c="; + fetchSubmodules = true; }; nativeBuildInputs = [ @@ -34,7 +46,10 @@ stdenv.mkDerivation rec { meson ninja pkg-config - python3 + python3Packages.python + python3Packages.zstandard + ensureNewerSourcesForZipFilesHook + shaderc ]; buildInputs = [ @@ -47,16 +62,27 @@ stdenv.mkDerivation rec { libwebp libzip zlib - ]; + zstd + opusfile + openssl + spirv-cross + ] ++ lib.optional gamemodeSupport gamemode; - mesonFlags = [ "-Db_lto=false" ]; + mesonFlags = [ + (lib.mesonBool "b_lto" false) + (lib.mesonEnable "install_macos_bundle" false) + (lib.mesonEnable "install_relocatable" false) + (lib.mesonEnable "shader_transpiler" false) + (lib.mesonEnable "gamemode" gamemodeSupport) + ]; preConfigure = '' patchShebangs . ''; + strictDeps = true; + meta = { - broken = stdenv.hostPlatform.isDarwin; description = "Free and open-source Touhou Project clone and fangame"; mainProgram = "taisei"; longDescription = '' @@ -75,4 +101,4 @@ stdenv.mkDerivation rec { ]; platforms = lib.platforms.all; }; -} +})