From b910f531faae777cdcd63af3b7395612fa91b0db Mon Sep 17 00:00:00 2001 From: Antoine Cotten Date: Sat, 4 Jul 2026 11:59:07 +0200 Subject: [PATCH 1/6] maintainers: add antoineco --- maintainers/maintainer-list.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 30952dd7302a..d1ad59414d05 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -1997,6 +1997,12 @@ githubId = 14838767; name = "Jacopo Scannella"; }; + antoineco = { + email = "hello@acotten.com"; + github = "antoineco"; + githubId = 3299086; + name = "Antoine Cotten"; + }; anton-4 = { name = "Anton"; github = "Anton-4"; From 4ccd659f26bebfb21702562f2d6a91a917932714 Mon Sep 17 00:00:00 2001 From: Antoine Cotten Date: Sat, 4 Jul 2026 12:54:10 +0200 Subject: [PATCH 2/6] cider-2: add antoineco as maintainer --- pkgs/by-name/ci/cider-2/package.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/by-name/ci/cider-2/package.nix b/pkgs/by-name/ci/cider-2/package.nix index 1d8db2f568f6..ed47a5ee9d1a 100644 --- a/pkgs/by-name/ci/cider-2/package.nix +++ b/pkgs/by-name/ci/cider-2/package.nix @@ -95,6 +95,7 @@ stdenv.mkDerivation rec { mainProgram = "cider-2"; maintainers = with lib.maintainers; [ amadejkastelic + antoineco l0r3v ]; platforms = [ "x86_64-linux" ]; From 1dfba633c54e2713022a878e8f49eb6a118541f8 Mon Sep 17 00:00:00 2001 From: Antoine Cotten Date: Sat, 4 Jul 2026 13:03:20 +0200 Subject: [PATCH 3/6] cider-2: remove deps on widevine and asar Cider 4 is a Widevine capable build; it does not need WidevineCdm to be symlinked. Cider fetches it from Google's CDN either way, and playback works out of the box. The asar extract/repack is a left over from commit 4d94729 which was mistakenly left behind in commit 99eafc4; it is now a no-op. --- pkgs/by-name/ci/cider-2/package.nix | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/pkgs/by-name/ci/cider-2/package.nix b/pkgs/by-name/ci/cider-2/package.nix index ed47a5ee9d1a..d12bfd4ca490 100644 --- a/pkgs/by-name/ci/cider-2/package.nix +++ b/pkgs/by-name/ci/cider-2/package.nix @@ -8,13 +8,11 @@ # Required dependencies for autoPatchelfHook alsa-lib, - asar, gtk3, libgbm, libGL, nspr, nss, - widevine-cdm, }: stdenv.mkDerivation rec { pname = "cider-2"; @@ -26,7 +24,6 @@ stdenv.mkDerivation rec { }; nativeBuildInputs = [ - asar dpkg autoPatchelfHook makeWrapper @@ -59,16 +56,6 @@ stdenv.mkDerivation rec { runHook postInstall ''; - postInstall = '' - ${lib.getExe asar} extract $out/lib/cider/resources/app.asar ./cider-build - - ${lib.getExe asar} pack ./cider-build $out/lib/cider/resources/app.asar - rm -rf ./cider-build - - # Install Widevine CDM for DRM support - ln -sf ${widevine-cdm}/share/google/chrome/WidevineCdm $out/lib/cider/ - ''; - postFixup = '' makeWrapper $out/lib/cider/Cider $out/bin/${pname} \ --add-flags "\$\{NIXOS_OZONE_WL:+\$\{WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true\}\}" \ From 0d7b51ad6994d57302ad431aede88d9b40a38c19 Mon Sep 17 00:00:00 2001 From: Antoine Cotten Date: Fri, 3 Jul 2026 23:51:32 +0200 Subject: [PATCH 4/6] cider-2: allow reading gsettings Cider 4 throws a warning on startup: (cider-2:915399): GLib-GIO-CRITICAL **: g_settings_schema_source_lookup: assertion 'source != NULL' failed wrapGAppsHook3[1] solves the problem transparently by prepending - prepending gtk3 + gsettings-desktop-schemas to XDG_DATA_DIRS - prepending dconf libs to GIO_EXTRA_MODULES - setting the path to GTK's pixbuf loader cache as GDK_PIXBUF_MODULE_FILE We emulate its behavior manually here to avoid a double-wrapping of the cider-2 executable. (strace reveals that all these paths are effectively opened on startup.) [1]: https://nixos.org/manual/nixpkgs/stable/#ssec-gnome-hooks --- pkgs/by-name/ci/cider-2/package.nix | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/pkgs/by-name/ci/cider-2/package.nix b/pkgs/by-name/ci/cider-2/package.nix index d12bfd4ca490..6ded6b4a5738 100644 --- a/pkgs/by-name/ci/cider-2/package.nix +++ b/pkgs/by-name/ci/cider-2/package.nix @@ -5,6 +5,8 @@ dpkg, autoPatchelfHook, makeWrapper, + gsettings-desktop-schemas, + dconf, # Required dependencies for autoPatchelfHook alsa-lib, @@ -53,15 +55,21 @@ stdenv.mkDerivation rec { chmod +x $out/lib/cider/Cider + # The prefixes that follow LD_LIBRARY_PATH are typically injected via wrapGAppsHook3. + # We append them manually instead to avoid a double-wrapping. + makeWrapper $out/lib/cider/Cider $out/bin/${pname} \ + --add-flags "\$\{NIXOS_OZONE_WL:+\$\{WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true\}\}" \ + --add-flags "--no-sandbox --disable-gpu-sandbox" \ + --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ libGL ]}" \ + --prefix XDG_DATA_DIRS : "${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}" \ + --prefix XDG_DATA_DIRS : "${gtk3}/share/gsettings-schemas/${gtk3.name}" \ + --prefix GIO_EXTRA_MODULES : "${dconf.lib}/lib/gio/modules" \ + --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" + runHook postInstall ''; postFixup = '' - makeWrapper $out/lib/cider/Cider $out/bin/${pname} \ - --add-flags "\$\{NIXOS_OZONE_WL:+\$\{WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true\}\}" \ - --add-flags "--no-sandbox --disable-gpu-sandbox" \ - --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ libGL ]}" - mv $out/share/applications/cider.desktop $out/share/applications/${pname}.desktop substituteInPlace $out/share/applications/${pname}.desktop \ --replace-warn 'Exec=cider' 'Exec=${pname}' \ @@ -70,7 +78,7 @@ stdenv.mkDerivation rec { install -Dm444 $out/share/pixmaps/cider.png \ $out/share/icons/hicolor/256x256/apps/cider.png - rm -r $out/share/pixmaps + rm -r $out/share/{pixmaps,lintian} ''; passthru.updateScript = ./updater.sh; From d25d5184a03dc17ce9d3dd42c21ebaffafd7e3ae Mon Sep 17 00:00:00 2001 From: Antoine Cotten Date: Sat, 4 Jul 2026 11:43:21 +0200 Subject: [PATCH 5/6] cider-2: suppress substituteInPlace replace warning Suppresses the warning pattern Exec=/usr/lib/cider/Cider doesn't match anything in file Use an absolute path as Exec replacement. Be strict and fail the build on error. --- pkgs/by-name/ci/cider-2/package.nix | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/pkgs/by-name/ci/cider-2/package.nix b/pkgs/by-name/ci/cider-2/package.nix index 6ded6b4a5738..22a038fa3a53 100644 --- a/pkgs/by-name/ci/cider-2/package.nix +++ b/pkgs/by-name/ci/cider-2/package.nix @@ -72,8 +72,7 @@ stdenv.mkDerivation rec { postFixup = '' mv $out/share/applications/cider.desktop $out/share/applications/${pname}.desktop substituteInPlace $out/share/applications/${pname}.desktop \ - --replace-warn 'Exec=cider' 'Exec=${pname}' \ - --replace-warn 'Exec=/usr/lib/cider/Cider' 'Exec=${pname}' + --replace-fail Exec=cider Exec=${pname} install -Dm444 $out/share/pixmaps/cider.png \ $out/share/icons/hicolor/256x256/apps/cider.png From 5d35a9225ddb45b2cf42506214cf810a2aac80b0 Mon Sep 17 00:00:00 2001 From: Antoine Cotten Date: Mon, 6 Jul 2026 00:11:37 +0200 Subject: [PATCH 6/6] cider-2: remove superfluous use of pname NixOS/nixpkgs#277994 --- pkgs/by-name/ci/cider-2/package.nix | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/pkgs/by-name/ci/cider-2/package.nix b/pkgs/by-name/ci/cider-2/package.nix index 22a038fa3a53..501fd5abebf6 100644 --- a/pkgs/by-name/ci/cider-2/package.nix +++ b/pkgs/by-name/ci/cider-2/package.nix @@ -16,12 +16,12 @@ nspr, nss, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "cider-2"; version = "4.0.9.1"; src = fetchurl { - url = "https://repo.cider.sh/apt/pool/main/cider-v${version}-linux-x64.deb"; + url = "https://repo.cider.sh/apt/pool/main/cider-v${finalAttrs.version}-linux-x64.deb"; hash = "sha256-MsA6lK3PsyOEx938FgJFx8l9oqwoM3FzIK5goF73lTs="; }; @@ -57,7 +57,7 @@ stdenv.mkDerivation rec { # The prefixes that follow LD_LIBRARY_PATH are typically injected via wrapGAppsHook3. # We append them manually instead to avoid a double-wrapping. - makeWrapper $out/lib/cider/Cider $out/bin/${pname} \ + makeWrapper $out/lib/cider/Cider $out/bin/cider-2 \ --add-flags "\$\{NIXOS_OZONE_WL:+\$\{WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true\}\}" \ --add-flags "--no-sandbox --disable-gpu-sandbox" \ --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ libGL ]}" \ @@ -70,9 +70,9 @@ stdenv.mkDerivation rec { ''; postFixup = '' - mv $out/share/applications/cider.desktop $out/share/applications/${pname}.desktop - substituteInPlace $out/share/applications/${pname}.desktop \ - --replace-fail Exec=cider Exec=${pname} + mv $out/share/applications/cider.desktop $out/share/applications/cider-2.desktop + substituteInPlace $out/share/applications/cider-2.desktop \ + --replace-fail Exec=cider Exec=cider-2 install -Dm444 $out/share/pixmaps/cider.png \ $out/share/icons/hicolor/256x256/apps/cider.png @@ -94,4 +94,4 @@ stdenv.mkDerivation rec { ]; platforms = [ "x86_64-linux" ]; }; -} +})