From 6c82a20bbc25aff4efb81cfa192e58ae9b5502e6 Mon Sep 17 00:00:00 2001 From: Tim Schumacher Date: Fri, 12 Jun 2026 01:03:59 +0200 Subject: [PATCH 1/4] silver-searcher-ng: init at 2.2.0 This partially reverts commit 6d2532593145aa9a1f8191ee9f9b8e9784852d69. --- .../silver-searcher-ng/bash-completion.patch | 5 ++ .../by-name/si/silver-searcher-ng/package.nix | 55 +++++++++++++++++++ pkgs/top-level/aliases.nix | 2 +- 3 files changed, 61 insertions(+), 1 deletion(-) create mode 100644 pkgs/by-name/si/silver-searcher-ng/bash-completion.patch create mode 100644 pkgs/by-name/si/silver-searcher-ng/package.nix diff --git a/pkgs/by-name/si/silver-searcher-ng/bash-completion.patch b/pkgs/by-name/si/silver-searcher-ng/bash-completion.patch new file mode 100644 index 000000000000..30e8c72389b7 --- /dev/null +++ b/pkgs/by-name/si/silver-searcher-ng/bash-completion.patch @@ -0,0 +1,5 @@ +--- a/Makefile.am ++++ b/Makefile.am +@@ -9 +9 @@ +-bashcompdir = $(pkgdatadir)/completions ++bashcompdir = $(datadir)/bash-completion/completions diff --git a/pkgs/by-name/si/silver-searcher-ng/package.nix b/pkgs/by-name/si/silver-searcher-ng/package.nix new file mode 100644 index 000000000000..20da881e8d2e --- /dev/null +++ b/pkgs/by-name/si/silver-searcher-ng/package.nix @@ -0,0 +1,55 @@ +{ + lib, + stdenv, + fetchFromGitHub, + autoreconfHook, + pkg-config, + pcre, + zlib, + xz, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "silver-searcher-ng"; + version = "2.2.0"; + + src = fetchFromGitHub { + owner = "silver-searcher"; + repo = "silver-searcher-ng"; + rev = finalAttrs.version; + sha256 = "0cyazh7a66pgcabijd27xnk1alhsccywivv6yihw378dqxb22i1p"; + }; + + patches = [ ./bash-completion.patch ]; + + env = { + # Workaround build failure on -fno-common toolchains like upstream + # gcc-10. Otherwise build fails as: + # ld: src/zfile.o:/build/source/src/log.h:12: multiple definition of + # `print_mtx'; src/ignore.o:/build/source/src/log.h:12: first defined here + # TODO: remove once next release has https://github.com/ggreer/the_silver_searcher/pull/1377 + NIX_CFLAGS_COMPILE = "-fcommon"; + } + // lib.optionalAttrs stdenv.hostPlatform.isLinux { + NIX_LDFLAGS = "-lgcc_s"; + }; + + nativeBuildInputs = [ + autoreconfHook + pkg-config + ]; + buildInputs = [ + pcre + zlib + xz + ]; + + meta = { + homepage = "https://github.com/silver-searcher/silver-searcher-ng"; + description = "Code-searching tool similar to ack, but faster"; + maintainers = with lib.maintainers; [ timschumi ]; + mainProgram = "ag"; + platforms = lib.platforms.all; + license = lib.licenses.asl20; + }; +}) diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 860584e73a64..464abee85119 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -1974,7 +1974,7 @@ mapAliases { sierra-breeze-enhanced = throw "'sierra-breeze-enhanced' has been removed, as it is only compatible with Plasma 5, which is EOL"; # Added 2025-08-20 signal-desktop-bin = throw "'signal-desktop-bin' has been replaced by 'signal-desktop' which is built from source"; # Added 2026-03-02 signal-desktop-source = throw "'signal-desktop-source' has been renamed to/replaced by 'signal-desktop'"; # Converted to throw 2025-10-27 - silver-searcher = throw "'silver-searcher' has been removed as it has seen no development since 2020 and is stuck on the obsolete pcre library"; + silver-searcher = throw "'silver-searcher' has been removed as it has seen no development since 2020 and is stuck on the obsolete pcre library. Consider using 'silver-searcher-ng', which is a fork with support for PCRE2."; simpleBluez = warnAlias "'simpleBluez' has been renamed to 'simplebluez'" simplebluez; # Added 2026-02-18 simpleDBus = warnAlias "'simpleDBus' has been renamed to 'simpledbus'" simpledbus; # Added 2026-02-12 simplesamlphp = throw "'simplesamlphp' was removed because it was unmaintained in nixpkgs"; # Added 2025-10-17 From 67919be717e87cfea39f4d3010a9f05c3a3de0bb Mon Sep 17 00:00:00 2001 From: Tim Schumacher Date: Fri, 12 Jun 2026 01:06:38 +0200 Subject: [PATCH 2/4] silver-searcher-ng: 2.2.0 -> 3.0.0 --- pkgs/by-name/si/silver-searcher-ng/package.nix | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) diff --git a/pkgs/by-name/si/silver-searcher-ng/package.nix b/pkgs/by-name/si/silver-searcher-ng/package.nix index 20da881e8d2e..33885543ab23 100644 --- a/pkgs/by-name/si/silver-searcher-ng/package.nix +++ b/pkgs/by-name/si/silver-searcher-ng/package.nix @@ -4,33 +4,25 @@ fetchFromGitHub, autoreconfHook, pkg-config, - pcre, + pcre2, zlib, xz, }: stdenv.mkDerivation (finalAttrs: { pname = "silver-searcher-ng"; - version = "2.2.0"; + version = "3.0.0"; src = fetchFromGitHub { owner = "silver-searcher"; repo = "silver-searcher-ng"; rev = finalAttrs.version; - sha256 = "0cyazh7a66pgcabijd27xnk1alhsccywivv6yihw378dqxb22i1p"; + hash = "sha256-IiVFbS9XGmqcGN4NRXFC07cV6bGKDs9C2y5XxJKdvFk="; }; patches = [ ./bash-completion.patch ]; - env = { - # Workaround build failure on -fno-common toolchains like upstream - # gcc-10. Otherwise build fails as: - # ld: src/zfile.o:/build/source/src/log.h:12: multiple definition of - # `print_mtx'; src/ignore.o:/build/source/src/log.h:12: first defined here - # TODO: remove once next release has https://github.com/ggreer/the_silver_searcher/pull/1377 - NIX_CFLAGS_COMPILE = "-fcommon"; - } - // lib.optionalAttrs stdenv.hostPlatform.isLinux { + env = lib.optionalAttrs stdenv.hostPlatform.isLinux { NIX_LDFLAGS = "-lgcc_s"; }; @@ -39,7 +31,7 @@ stdenv.mkDerivation (finalAttrs: { pkg-config ]; buildInputs = [ - pcre + pcre2 zlib xz ]; From b2aade9cfd92fb4750e41f7d3f573407eab38cf1 Mon Sep 17 00:00:00 2001 From: Tim Schumacher Date: Fri, 12 Jun 2026 01:08:26 +0200 Subject: [PATCH 3/4] silver-searcher-ng: run upstream tests --- pkgs/by-name/si/silver-searcher-ng/package.nix | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/pkgs/by-name/si/silver-searcher-ng/package.nix b/pkgs/by-name/si/silver-searcher-ng/package.nix index 33885543ab23..ba71da4ed9a8 100644 --- a/pkgs/by-name/si/silver-searcher-ng/package.nix +++ b/pkgs/by-name/si/silver-searcher-ng/package.nix @@ -3,8 +3,10 @@ stdenv, fetchFromGitHub, autoreconfHook, + git, pkg-config, pcre2, + python3Packages, zlib, xz, }: @@ -30,12 +32,26 @@ stdenv.mkDerivation (finalAttrs: { autoreconfHook pkg-config ]; + buildInputs = [ pcre2 zlib xz ]; + doCheck = true; + nativeCheckInputs = [ + python3Packages.cram + git + ]; + checkPhase = '' + runHook preCheck + + make test + + runHook postCheck + ''; + meta = { homepage = "https://github.com/silver-searcher/silver-searcher-ng"; description = "Code-searching tool similar to ack, but faster"; From 8e079e0225f26cedfeaf53f6cd52e67f9b87ab4f Mon Sep 17 00:00:00 2001 From: Tim Schumacher Date: Sun, 14 Jun 2026 20:13:24 +0200 Subject: [PATCH 4/4] silver-searcher-ng: enable recommended packaging attributes --- pkgs/by-name/si/silver-searcher-ng/package.nix | 3 +++ 1 file changed, 3 insertions(+) diff --git a/pkgs/by-name/si/silver-searcher-ng/package.nix b/pkgs/by-name/si/silver-searcher-ng/package.nix index ba71da4ed9a8..e0f76f7aad0a 100644 --- a/pkgs/by-name/si/silver-searcher-ng/package.nix +++ b/pkgs/by-name/si/silver-searcher-ng/package.nix @@ -52,6 +52,9 @@ stdenv.mkDerivation (finalAttrs: { runHook postCheck ''; + strictDeps = true; + __structuredAttrs = true; + meta = { homepage = "https://github.com/silver-searcher/silver-searcher-ng"; description = "Code-searching tool similar to ack, but faster";