From f8ce33f97829d023760c1969f92a2a255c93779a Mon Sep 17 00:00:00 2001 From: Gus <58223632+thegu5@users.noreply.github.com> Date: Mon, 23 Mar 2026 01:38:49 -0400 Subject: [PATCH] seanime: 3.5.0 -> 3.5.2, refactor --- .../default-disable-update-check.patch | 10 +-- pkgs/by-name/se/seanime/package.nix | 62 +++++++++---------- 2 files changed, 35 insertions(+), 37 deletions(-) diff --git a/pkgs/by-name/se/seanime/default-disable-update-check.patch b/pkgs/by-name/se/seanime/default-disable-update-check.patch index a7dbad448dd2..dd727ef8c54a 100644 --- a/pkgs/by-name/se/seanime/default-disable-update-check.patch +++ b/pkgs/by-name/se/seanime/default-disable-update-check.patch @@ -1,8 +1,8 @@ -diff --git a/src/lib/server/settings.ts b/src/lib/server/settings.ts -index c28f466..4555e90 100644 ---- a/src/lib/server/settings.ts -+++ b/src/lib/server/settings.ts -@@ -65,7 +65,7 @@ export const settingsSchema = z.object({ +diff --git a/seanime-web/src/lib/server/settings.ts b/seanime-web/src/lib/server/settings.ts +index 2d80eb8..9fcd986 100644 +--- a/seanime-web/src/lib/server/settings.ts ++++ b/seanime-web/src/lib/server/settings.ts +@@ -66,7 +66,7 @@ export const settingsSchema = z.object({ transmissionPassword: z.string().optional().default(""), hideAudienceScore: z.boolean().optional().default(false), autoUpdateProgress: z.boolean().optional().default(false), diff --git a/pkgs/by-name/se/seanime/package.nix b/pkgs/by-name/se/seanime/package.nix index 584aff3d7d66..0a20a6f5ba44 100644 --- a/pkgs/by-name/se/seanime/package.nix +++ b/pkgs/by-name/se/seanime/package.nix @@ -1,54 +1,49 @@ { lib, fetchFromGitHub, - buildGo126Module, - buildNpmPackage, + buildGoModule, ffmpeg, + nodejs, + npmHooks, + fetchNpmDeps, + nix-update-script, }: -let - version = "3.5.0"; +buildGoModule (finalAttrs: { + pname = "seanime"; + version = "3.5.2"; + src = fetchFromGitHub { owner = "5rahim"; repo = "seanime"; - rev = "v${version}"; - hash = "sha256-5A2gg0ZFy9JP42I6fh9dcVUkS7P+0aH7arT4gdjAYHM="; + tag = "v${finalAttrs.version}"; + hash = "sha256-ejXWQPUROIzu6RlUJIaKaiJfPb59kupQDhqWU83EqP4="; }; - seanime-web = buildNpmPackage { - pname = "seanime-web"; + nativeBuildInputs = [ + nodejs + npmHooks.npmConfigHook + ]; - inherit src version; - - sourceRoot = "${src.name}/seanime-web"; - - patches = [ ./default-disable-update-check.patch ]; - - npmDepsHash = "sha256-kO5k4B5mKoIfhhujNM0jw+/ErVwxm9/nZ5eBTWnA7HQ="; - - installPhase = '' - runHook preInstall - - mkdir -p $out - cp -r out $out/web - - runHook postInstall - ''; + env = { + npmRoot = "seanime-web"; + npmDeps = fetchNpmDeps { + src = "${finalAttrs.src}/seanime-web"; + hash = "sha256-fWlK2h0RQF9GnEogXW3bwM01RCCDVij/9S2sn2BA3S4="; + }; }; -in -buildGo126Module { - pname = "seanime"; - inherit src version; - - vendorHash = "sha256-jdGkrU4WGgqkWN0FIaxVhtYfFnS+/ZnAY6dWB+gOmNQ="; + patches = [ ./default-disable-update-check.patch ]; preBuild = '' - cp -r ${seanime-web}/web . + npm run build --prefix seanime-web + cp -r seanime-web/out web # .github scripts redeclare main rm -rf .github ''; + vendorHash = "sha256-TN9shH4B7XVDIa541+7MHTNQs1IKPRJW1dn8tmES5jg="; + subPackages = [ "." ]; doCheck = false; # broken in clean environments @@ -58,6 +53,7 @@ buildGo126Module { "-w" ]; + # for transcoding makeWrapperArgs = [ "--prefix PATH : ${ lib.makeBinPath [ @@ -66,6 +62,8 @@ buildGo126Module { }" ]; + passthru.updateScript = nix-update-script { }; + meta = { description = "Open-source media server for anime and manga"; homepage = "https://seanime.app"; @@ -74,4 +72,4 @@ buildGo126Module { license = lib.licenses.gpl3; maintainers = with lib.maintainers; [ thegu5 ]; }; -} +})