From a87c659a354fae022e1b1693b4e6c8f2251ea91c Mon Sep 17 00:00:00 2001 From: whispers Date: Mon, 10 Aug 2026 19:45:25 -0400 Subject: [PATCH 1/5] libgpod: drop monoSupport libgpod's mono support requires gtk-sharp-2_0, which is being removed as part of the gtk 2 removal in Nixpkgs. thus, we remove it. --- pkgs/by-name/li/libgpod/package.nix | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/pkgs/by-name/li/libgpod/package.nix b/pkgs/by-name/li/libgpod/package.nix index 86d1dded32f0..59b2c368a501 100644 --- a/pkgs/by-name/li/libgpod/package.nix +++ b/pkgs/by-name/li/libgpod/package.nix @@ -15,10 +15,7 @@ gdk-pixbuf, taglib, libimobiledevice, - monoSupport ? false, - mono, udevCheckHook, - gtk-sharp-2_0, }: stdenv.mkDerivation (finalAttrs: { @@ -57,10 +54,7 @@ stdenv.mkDerivation (finalAttrs: { "--without-hal" "--enable-udev" "--with-udev-dir=${placeholder "out"}/lib/udev" - ] - ++ lib.optionals monoSupport [ "--with-mono" ]; - - dontStrip = monoSupport; + ]; nativeBuildInputs = [ autoreconfHook @@ -72,16 +66,14 @@ stdenv.mkDerivation (finalAttrs: { ++ (with perlPackages; [ perl XMLParser - ]) - ++ lib.optional monoSupport mono; + ]); buildInputs = [ libxml2 sg3_utils sqlite taglib - ] - ++ lib.optional monoSupport gtk-sharp-2_0; + ]; propagatedBuildInputs = [ gdk-pixbuf From bdb3b8ef47c5cb67e26e04ea8a37490b574b5757 Mon Sep 17 00:00:00 2001 From: whispers Date: Mon, 10 Aug 2026 19:49:45 -0400 Subject: [PATCH 2/5] smuxi: drop guiSupport smuxi's gui requires gtk-sharp-2_0, which is being removed as part of the gtk 2 removal in nixpkgs. accordingly, we drop the gui support while keeping around the rest of the package. --- pkgs/by-name/sm/smuxi/package.nix | 29 +---------------------------- 1 file changed, 1 insertion(+), 28 deletions(-) diff --git a/pkgs/by-name/sm/smuxi/package.nix b/pkgs/by-name/sm/smuxi/package.nix index bda6517471dd..d4685e451cd9 100644 --- a/pkgs/by-name/sm/smuxi/package.nix +++ b/pkgs/by-name/sm/smuxi/package.nix @@ -13,10 +13,6 @@ stfl, makeWrapper, lib, - guiSupport ? true, - gtk-sharp-2_0, - gdk-pixbuf, - pango, }: stdenv.mkDerivation rec { @@ -46,12 +42,6 @@ stdenv.mkDerivation rec { gettext mono stfl - ] - ++ lib.optionals guiSupport [ - gtk-sharp-2_0 - # loaded at runtime by GTK# - gdk-pixbuf - pango ]; preConfigure = '' @@ -61,8 +51,7 @@ stdenv.mkDerivation rec { configureFlags = [ "--disable-frontend-gnome" "--enable-frontend-stfl" - ] - ++ lib.optional guiSupport "--enable-frontend-gnome"; + ]; postInstall = '' makeWrapper "${mono}/bin/mono" "$out/bin/smuxi-message-buffer" \ @@ -95,16 +84,11 @@ stdenv.mkDerivation rec { makeWrapper "${mono}/bin/mono" "$out/bin/smuxi-frontend-gnome" \ --add-flags "$out/lib/smuxi/smuxi-frontend-gnome.exe" \ - --prefix MONO_GAC_PREFIX : ${if guiSupport then gtk-sharp-2_0 else ""} \ --prefix ${runtimeLoaderEnvVariableName} : ${ lib.makeLibraryPath [ gettext glib sqlite - gtk-sharp-2_0 - gtk-sharp-2_0.gtk - gdk-pixbuf - pango ] } @@ -112,17 +96,6 @@ stdenv.mkDerivation rec { mkdir -p $out/lib/smuxi/ cp -a lib/log4net.dll $out/lib/smuxi/ cp -a lib/Nini.dll $out/lib/smuxi/ - - # install GTK+ icon theme on Darwin - ${ - if guiSupport && stdenv.hostPlatform.isDarwin then - " - mkdir -p $out/lib/smuxi/icons/ - cp -a images/Smuxi-Symbolic $out/lib/smuxi/icons/ - " - else - "" - } ''; meta = { From db99cdbe2b9170c6ed9f22d476ef1be9768c6ceb Mon Sep 17 00:00:00 2001 From: whispers Date: Mon, 10 Aug 2026 19:53:11 -0400 Subject: [PATCH 3/5] gtk-sharp-beans: drop gtk-sharp-beans provides extra functionality for gtk# 2, which is being removed from nixpkgs. according to its readme, it is ostensibly obsoleted by gtk# 3. additionally, it has been archived upstream since february 2018 and is unused in nixpkgs. --- pkgs/by-name/gt/gtk-sharp-beans/package.nix | 44 --------------------- pkgs/top-level/aliases.nix | 1 + 2 files changed, 1 insertion(+), 44 deletions(-) delete mode 100644 pkgs/by-name/gt/gtk-sharp-beans/package.nix diff --git a/pkgs/by-name/gt/gtk-sharp-beans/package.nix b/pkgs/by-name/gt/gtk-sharp-beans/package.nix deleted file mode 100644 index a7d4d16bdeba..000000000000 --- a/pkgs/by-name/gt/gtk-sharp-beans/package.nix +++ /dev/null @@ -1,44 +0,0 @@ -{ - lib, - stdenv, - fetchFromGitHub, - autoreconfHook, - which, - pkg-config, - mono, - gtk-sharp-2_0, - gio-sharp, -}: - -stdenv.mkDerivation (finalAttrs: { - pname = "gtk-sharp-beans"; - version = "2.14.0"; - - src = fetchFromGitHub { - owner = "mono"; - repo = "gtk-sharp-beans"; - - rev = finalAttrs.version; - sha256 = "04sylwdllb6gazzs2m4jjfn14mil9l3cny2q0xf0zkhczzih6ah1"; - }; - - nativeBuildInputs = [ - pkg-config - autoreconfHook - which - ]; - buildInputs = [ - mono - gtk-sharp-2_0 - gio-sharp - ]; - - dontStrip = true; - - meta = { - description = "Binds some API from GTK that isn't in GTK# 2.12.x"; - homepage = "https://github.com/mono/gtk-sharp-beans"; - platforms = lib.platforms.linux; - license = lib.licenses.lgpl21; - }; -}) diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 779d828ae3bb..74a2b4ab704f 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1058,6 +1058,7 @@ mapAliases { gssdp = throw "'gssdp' (version 1.4) has been removed as it was unmaintained upstream and depended on libsoup 2.4. Consider using `gssdp_1_6` instead"; # Added 2026-06-07 gtdialog = throw "'gtdialog' has been removed, as it depended on GTK 2. Consider using 'yad' or 'zenity' instead."; # Added 2026-05-22 gtk-engine-murrine = throw "'gtk-engine-murrine' has been removed, as it depended on GTK2."; # Added 2026-07-22 + gtk-sharp-beans = throw "'gtk-sharp-beans' has been removed as it depended on the deprecated GTK 2 engine via Gtk# 2."; # Added 2026-08-10 gtk_engines = throw "'gtk_engines' has been removed as it was archived upstream and depends on the deprecated GTK2 engine."; # Added 2026-07-30 gtkcord4 = throw "'gtkcord4' has been renamed to/replaced by 'dissent'"; # Converted to throw 2025-10-27 gtkextra = throw "'gtkextra' has been removed due to lack of maintenance upstream."; # Added 2025-06-10 From 01c32bc99f2c41632c6da38771157c29ed9fb728 Mon Sep 17 00:00:00 2001 From: whispers Date: Mon, 10 Aug 2026 19:55:50 -0400 Subject: [PATCH 4/5] gio-sharp: drop gtk-sharp-beans provides extra functionality for gtk# 2, which is being removed from nixpkgs. additionally, it has been archived upstream since april 2020 and was unused in nixpkgs other than the now-removed gtk-sharp-beans. --- pkgs/by-name/gi/gio-sharp/package.nix | 50 --------------------------- pkgs/top-level/aliases.nix | 1 + 2 files changed, 1 insertion(+), 50 deletions(-) delete mode 100644 pkgs/by-name/gi/gio-sharp/package.nix diff --git a/pkgs/by-name/gi/gio-sharp/package.nix b/pkgs/by-name/gi/gio-sharp/package.nix deleted file mode 100644 index 91cc90bdc3ac..000000000000 --- a/pkgs/by-name/gi/gio-sharp/package.nix +++ /dev/null @@ -1,50 +0,0 @@ -{ - lib, - stdenv, - fetchFromGitHub, - autoconf, - automake, - which, - pkg-config, - mono, - glib, - gtk-sharp-2_0, -}: - -stdenv.mkDerivation (finalAttrs: { - pname = "gio-sharp"; - version = "0.3"; - - src = fetchFromGitHub { - owner = "mono"; - repo = "gio-sharp"; - - rev = finalAttrs.version; - sha256 = "13pc529pjabj7lq23dbndc26ssmg5wkhc7lfvwapm87j711m0zig"; - }; - - nativeBuildInputs = [ - pkg-config - autoconf - automake - which - ]; - buildInputs = [ - mono - glib - gtk-sharp-2_0 - ]; - - dontStrip = true; - - prePatch = '' - ./autogen-2.22.sh - ''; - - meta = { - description = "GIO API bindings"; - homepage = "https://github.com/mono/gio-sharp"; - license = lib.licenses.mit; - platforms = lib.platforms.linux; - }; -}) diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 74a2b4ab704f..52a1816d8275 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -957,6 +957,7 @@ mapAliases { gimp3 = gimp; # Added 2025-10-03 gimp3-with-plugins = gimp-with-plugins; # Added 2025-10-03 gimp3Plugins = gimpPlugins; # Added 2025-10-03 + gio-sharp = throw "'gio-sharp' has been removed as it depended on the deprecated GTK 2 engine via Gtk# 2."; # Added 2026-08-10 gitAndTools = throw "gitAndTools has been removed, as the packages are now available at the top level"; # Converted to throw 2025-10-26 gitfs = throw "'gitfs' has been removed, as it is broken and unmaintained upstream"; # Added 2026-05-22 gitversion = throw "'gitversion' has been removed because it produced a broken build and was unmaintained"; # Added 2025-08-30 From c02664284f7ed04736d61cf9bf83d75e63df6b01 Mon Sep 17 00:00:00 2001 From: whispers Date: Mon, 10 Aug 2026 19:58:04 -0400 Subject: [PATCH 5/5] gtk-sharp-2_0: drop gtk-sharp-2_0 provides bindings for gtk 2, which is being removed from nixpkgs. it is thus no longer useful, and we remove it. --- pkgs/by-name/gt/gtk-sharp-2_0/builder.sh | 9 --- pkgs/by-name/gt/gtk-sharp-2_0/package.nix | 83 ----------------------- pkgs/top-level/aliases.nix | 1 + 3 files changed, 1 insertion(+), 92 deletions(-) delete mode 100644 pkgs/by-name/gt/gtk-sharp-2_0/builder.sh delete mode 100644 pkgs/by-name/gt/gtk-sharp-2_0/package.nix diff --git a/pkgs/by-name/gt/gtk-sharp-2_0/builder.sh b/pkgs/by-name/gt/gtk-sharp-2_0/builder.sh deleted file mode 100644 index 946b65d98a58..000000000000 --- a/pkgs/by-name/gt/gtk-sharp-2_0/builder.sh +++ /dev/null @@ -1,9 +0,0 @@ -genericBuild - -# !!! hack -export ALL_INPUTS="$out $pkgs" - -find $out -name "*.dll.config" | while read configFile; do - echo "modifying config file $configFile" - $monoDLLFixer "$configFile" -done diff --git a/pkgs/by-name/gt/gtk-sharp-2_0/package.nix b/pkgs/by-name/gt/gtk-sharp-2_0/package.nix deleted file mode 100644 index 9306c9795ca2..000000000000 --- a/pkgs/by-name/gt/gtk-sharp-2_0/package.nix +++ /dev/null @@ -1,83 +0,0 @@ -{ - stdenv, - lib, - fetchFromGitHub, - pkg-config, - mono, - glib, - pango, - gtk2, - libxml2, - monoDLLFixer, - autoconf, - automake, - libtool, - which, - fetchpatch, -}: - -stdenv.mkDerivation (finalAttrs: { - pname = "gtk-sharp"; - version = "2.12.45"; - - builder = ./builder.sh; - src = fetchFromGitHub { - owner = "mono"; - repo = "gtk-sharp"; - rev = finalAttrs.version; - sha256 = "1vy6yfwkfv6bb45bzf4g6dayiqkvqqvlr02rsnhd10793hlpqlgg"; - }; - - patches = [ - (fetchpatch { - url = "https://projects.archlinux.de/svntogit/packages.git/plain/trunk/gtk-sharp2-2.12.12-gtkrange.patch?h=packages/gtk-sharp-2"; - sha256 = "bjx+OfgWnN8SO82p8G7pbGuxJ9EeQxMLeHnrtEm8RV8="; - }) - ]; - - postInstall = '' - pushd $out/bin - for f in gapi2-* - do - substituteInPlace $f --replace mono ${mono}/bin/mono - done - popd - ''; - - nativeBuildInputs = [ - pkg-config - autoconf - automake - libtool - which - ]; - - buildInputs = [ - mono - glib - pango - gtk2 - libxml2 - ]; - - preConfigure = '' - ./bootstrap-${lib.versions.majorMinor finalAttrs.version} - ''; - - env.NIX_CFLAGS_COMPILE = "-Wno-error=int-conversion"; - - dontStrip = true; - - inherit monoDLLFixer; - - passthru = { - gtk = gtk2; - }; - - meta = { - description = "Graphical User Interface Toolkit for mono and .Net"; - homepage = "https://www.mono-project.com/docs/gui/gtksharp"; - platforms = lib.platforms.unix; - license = lib.licenses.gpl2; - }; -}) diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 52a1816d8275..767529a31000 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1059,6 +1059,7 @@ mapAliases { gssdp = throw "'gssdp' (version 1.4) has been removed as it was unmaintained upstream and depended on libsoup 2.4. Consider using `gssdp_1_6` instead"; # Added 2026-06-07 gtdialog = throw "'gtdialog' has been removed, as it depended on GTK 2. Consider using 'yad' or 'zenity' instead."; # Added 2026-05-22 gtk-engine-murrine = throw "'gtk-engine-murrine' has been removed, as it depended on GTK2."; # Added 2026-07-22 + gtk-sharp-2_0 = throw "'gtk-sharp-2_0' has been removed as it provided bindings for the deprecated GTK 2 engine, which is being removed from Nixpkgs."; # Added 2026-08-10 gtk-sharp-beans = throw "'gtk-sharp-beans' has been removed as it depended on the deprecated GTK 2 engine via Gtk# 2."; # Added 2026-08-10 gtk_engines = throw "'gtk_engines' has been removed as it was archived upstream and depends on the deprecated GTK2 engine."; # Added 2026-07-30 gtkcord4 = throw "'gtkcord4' has been renamed to/replaced by 'dissent'"; # Converted to throw 2025-10-27