From 226eb9b4706a3b0b57594aaf0e14e88c7d65f3b3 Mon Sep 17 00:00:00 2001 From: William Brockhus Date: Wed, 17 Sep 2025 11:36:33 +1000 Subject: [PATCH 1/2] maintainers: add YodaDaCoda --- maintainers/maintainer-list.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 09ca05897dba..fdfb328f01f2 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -28498,6 +28498,12 @@ githubId = 40352765; name = "Yoctocell"; }; + YodaDaCoda = { + email = "pickeringw@gmail.com"; + github = "YodaDaCoda"; + githubId = 365349; + name = "William Brockhus"; + }; yogansh = { email = "yogansh@yogansh.tech"; github = "YoganshSharma"; From 639cede29296912499f5cab2942ab8abf60773c9 Mon Sep 17 00:00:00 2001 From: William Brockhus Date: Wed, 17 Sep 2025 10:43:18 +1000 Subject: [PATCH 2/2] thorium-reader: init at v3.2.2 --- pkgs/by-name/th/thorium-reader/package.nix | 78 ++++++++++++++++++++++ 1 file changed, 78 insertions(+) create mode 100644 pkgs/by-name/th/thorium-reader/package.nix diff --git a/pkgs/by-name/th/thorium-reader/package.nix b/pkgs/by-name/th/thorium-reader/package.nix new file mode 100644 index 000000000000..c50d24dc2e69 --- /dev/null +++ b/pkgs/by-name/th/thorium-reader/package.nix @@ -0,0 +1,78 @@ +{ + lib, + buildNpmPackage, + fetchFromGitHub, + nodejs_24, + makeWrapper, + electron, + copyDesktopItems, + makeDesktopItem, +}: + +buildNpmPackage (finalAttrs: { + pname = "thorium-reader"; + version = "3.2.2"; + nodejs = nodejs_24; + npmDepsHash = "sha256-T70Oxn97oDyFSxkJ55nlM2ET0UEWpo8ahnipkUwgTcM="; + makeCacheWritable = true; + + src = fetchFromGitHub { + owner = "edrlab"; + repo = "thorium-reader"; + tag = "v${finalAttrs.version}"; + hash = "sha256-+1cc8UxcLaqC6Yrc4RYAKDZ4hzoz0eX31HaiUtp/znE="; + }; + + env.ELECTRON_SKIP_BINARY_DOWNLOAD = "1"; + + nativeBuildInputs = [ + makeWrapper + copyDesktopItems + ]; + + postInstall = '' + install -Dpm644 resources/icon.png $out/share/icons/hicolor/1024x1024/apps/thorium-reader.png + + cp -r dist/* $out/lib/node_modules/EDRLab.ThoriumReader/ + + makeWrapper '${lib.getExe electron}' "$out/bin/thorium-reader" \ + --add-flags $out/lib/node_modules/EDRLab.ThoriumReader \ + --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true}}" \ + --set-default ELECTRON_IS_DEV 0 \ + --inherit-argv0 + ''; + + desktopItems = [ + (makeDesktopItem { + name = "thorium-reader"; + desktopName = "Thorium"; + exec = "thorium-reader %u"; + terminal = false; + type = "Application"; + icon = "thorium-reader"; + startupWMClass = "thorium-reader"; + mimeTypes = [ + "application/epub+zip" + "application/daisy+zip" + "application/vnd.readium.lcp.license.v1.0+json" + "application/audiobook+zip" + "application/webpub+zip" + "application/audiobook+lcp" + "application/pdf+lcp" + "x-scheme-handler/thorium" + "x-scheme-handler/opds" + ]; + comment = "Desktop application to read ebooks"; + categories = [ "Office" ]; + }) + ]; + + meta = { + description = "EPUB reader"; + homepage = "https://www.edrlab.org/software/thorium-reader/"; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ YodaDaCoda ]; + platforms = lib.platforms.all; + mainProgram = "thorium-reader"; + }; +})