135 Commits

Author SHA1 Message Date
eljamm 7530125d8e doc/pnpmBuildHook: fix fetcherVersion typo 2026-07-22 16:42:36 +02:00
Grimmauld 8a597f5ae6 checkPhaseThreadLimitHook: rename from openmpCheckPhaseHook, set more thread env vars 2026-07-10 00:46:58 +02:00
Grimmauld 71fbdd6512 doc/openmpCheckPhaseHook: init 2026-06-26 18:42:00 +02:00
Angel J b5f3771062 doc/pnpmBuildHook: add nix highlighting and fix dontPnpmBuild example 2026-06-13 14:15:09 -07:00
Ross Smyth 3b8d94ca86 doc: Add pnpmBuildHook 2026-06-02 13:53:11 -04:00
dish 2643cf7817 doc: add section for writableTmpDirAsHomeHook 2026-05-24 12:17:12 -04:00
nixpkgs-ci[bot] e8ecf89184 Merge master into staging-next 2026-04-15 06:38:38 +00:00
pancaek cc5058278b doc/installFonts: init hook docs in manual 2026-04-14 23:06:54 +02:00
·𐑑𐑴𐑕𐑑𐑩𐑤 a0d0b06495 treewide: fix typo of NPM → npm 2026-04-03 19:08:04 +07:00
Pol Dellaiera 10fc5a6a4b doc: Document npmHooks and nodejs hooks (#487075) 2026-03-27 19:33:08 +00:00
bandithedoge edcc227d00 juce: build Projucer and add projucerHook 2026-02-28 17:39:09 +01:00
Ross Smyth 240a7b8804 doc: Document nodejsInstallManuals 2026-02-19 14:16:28 -05:00
Ross Smyth 471dfbe96c doc: Add documentation on nodejsInstallExecutables 2026-02-19 14:16:28 -05:00
Ross Smyth d76f3f1741 doc: Document npmHooks.npmInstallHook 2026-02-19 14:16:28 -05:00
Ross Smyth 987a91a627 doc: Add npmHooks.npmConfigHook to reference 2026-02-19 14:16:28 -05:00
Ross Smyth 41d8cf69e5 doc: Add documentation on npmHooks.npmBuildHook 2026-02-19 14:16:28 -05:00
Jared Baur e20232eab6 zig: move ZIG_GLOBAL_CACHE_DIR setup to configurePhase
This allows users to put zig in their `mkShell` without ending up with a
ZIG_GLOBAL_CACHE_DIR value set that points back to a location that only
would exist in the sandbox.
2026-02-07 17:32:18 -08:00
Jan Tojnar a4c9180740 libglycin-gtk4: init (split out of libglycin) (#481377) 2026-02-04 07:19:57 +00:00
Stefan Nuernberger 88db5b0738 doc/tauri: document hook dontTauriFixup 2026-02-01 13:59:08 +01:00
Dyego Aurélio 28096cc5e3 treewide: apply nixfmt 1.2.0 2026-01-22 18:37:56 -03:00
Leah Amelia Chen 1def69720c libglycin: Introduce setup hook for adding loader paths to wrapper
This setup hook discovers glycin loaders in the inputs list it is placed into, and adds them to `gappsWrapperArgs`. This should simplify glycin-dependent programs’ expressions.

Just add `libglycin.setupHook` (for Rust programs) or `libglycin` (for other languages) to `buildInputs`. The latter will also pull in the setup hook.

Note, the setup hook needs to go to the `buildInputs` since we cannot have a different offset when used as standalone hook instead of propagated from `libglycin`. We chose `hostOffset` to make it work with the proper placement of `libglycin` in `buildInputs`.

Co-authored-by: Seth Flynn <getchoo@tuta.io>
Co-authored-by: Jan Tojnar <jtojnar@gmail.com>
2026-01-19 02:18:28 +01:00
Leah Amelia Chen c68c6af86c libglycin: Add setup hook for patching Rust vendor directory
Glycin rust library searches `bwrap` on path. This would require every reverse dependency to add `bubblewrap` to its `PATH`, which would be quite annoying to ensure. Especially when libraries start using glycin.

We provide `passthru.glycinPathsPatch` to perform source-level hardcoding but that doesn't work with apps that use `rustPlatform.cargoSetupHook` since it assumes a setup where snapshots of GNOME sources already contain vendored Rust dependencies under `vendor/`.

The setup hook instead provides a much more flexible approach that uses the `$cargoDepsCopy` variable provided by `cargoSetupHook`, which points to the local, modifiable copy of Cargo dependencies, to patch `src/sandbox.rs` just like `glycinPathsPatch`. If `$cargoDepsCopy` is not found, then the old behavior is used where Cargo dependencies are assumed to be under `vendor/`.

Additionally, the patch requires modifying `Cargo.lock` when using `rustPlatform.fetchCargoVendor`. The setup hook fixes that as well.

Rust programs just need to add `libglycin.patchVendorHook` and it should take care of this.

Co-authored-by: Seth Flynn <getchoo@tuta.io>
Co-authored-by: Jan Tojnar <jtojnar@gmail.com>
2026-01-18 19:06:50 +01:00
Jared Baur 1dfa285940 zig: use setupHook attribute on zig derivation
By moving the zig setup hook to the zig derivation itself, we allow for
zig to splice correctly with `callPackage`, meaning that the correct zig
can be pulled in during builds when zig is in `nativeBuildInputs` (for
example).

This change retains the `zig.hook` attribute for backward compatibility
by just pointing to the zig derivation. This also removes
`zig_default_flags`, since now the setup hook is not a derivation that
can be overridden. Overriding the build flags can now be done by setting
`dontSetZigDefaultFlags = true`.
2026-01-09 14:07:46 -08:00
nixpkgs-ci[bot] f2fbc41566 Merge master into staging-next 2025-12-24 18:06:05 +00:00
Bobby Rong d70f91bff4 xfce4-dev-tools: Move to top-level 2025-12-23 22:03:55 +08:00
Jonathan Davies 58fec82686 versionCheckHook: Check for --version first
More likely to find the version number in `--version` than `--help` so
look for that first.
2025-11-20 10:38:53 +00:00
Sergei Trofimovich 040ab8d5f3 installShellFiles.section.md: fix unde[r]sirable typo 2025-11-15 11:56:01 +00:00
adam 155bcc6866 julec.hook: init
Co-authored-by: philiptaron <philip.taron@gmail.com>
2025-10-22 17:02:54 +02:00
Grimmauld b81f3da181 doc/cmake: document cmakeBuildType 2025-09-12 12:42:55 +02:00
K900 92c54de171 Merge remote-tracking branch 'origin/staging-next' into staging 2025-08-28 12:55:20 +03:00
Ben Siraphob cc5b731ed3 doc: fix typos 2025-08-27 11:46:26 -07:00
John Ericson a53b47202e installShellFiles: Allow installManPage to take a piped input (#428382) 2025-08-22 11:26:19 -04:00
Ross Smyth 49059b8bb8 docs: Allow installManPage to take a piped input 2025-08-12 21:56:40 -04:00
Ross Smyth c2f9c14b9d docs: Update installShellFiles docs for Nushell completions 2025-08-04 11:59:44 -04:00
Wolfgang Walther 5a0711127c treewide: run nixfmt 1.0.0 2025-07-24 13:55:40 +02:00
Wolfgang Walther 62fe016519 treewide: run treefmt with mdcr/nixfmt 2025-07-24 13:52:31 +02:00
Alyssa Ross bb73d9a0ce meson: support enableParallelChecking
This is backwards compatible, because enableParallelChecking is set by
default by stdenv if enableParallelBuilding is.
2025-07-04 11:01:59 +02:00
K900 5100da95a6 Merge remote-tracking branch 'origin/staging-next' into staging 2025-06-17 21:34:30 +03:00
nixpkgs-ci[bot] 2dfb45bdb7 Merge master into staging-next 2025-06-17 06:05:57 +00:00
aleksana b0c8f2be7d doc/installShellFiles: describe fifo more accurately 2025-06-16 20:14:59 +08:00
Benjamin Sparks 651abd9307 doc: versionCheckProgram first defaults to $outputBin/bin/$NIX_MAIN_PROGRAM 2025-06-15 19:05:44 +02:00
Defelo 23bd27a21c versionCheckHook: add versionCheckKeepEnvironment parameter
This replaces the `versionCheckDontIgnoreEnvironment` parameter. Keeping
all environment variables is still possible by using
`versionCheckKeepEnvironment = "*";`.
2025-06-01 19:38:33 +02:00
Grimmauld d3a197a33d doc/udevCheckHook: init 2025-05-29 10:15:33 +02:00
TomaSajt 0605191248 doc/tauri: fix example, make openssl linux-only 2025-05-17 00:59:47 +02:00
Kalle Ahlström bedc1f26c3 doc/tauri: move wrapGAppsHook4 to only be included in linux builds 2025-05-16 10:20:40 +02:00
awwpotato 2cf25e711c Revert "installShellFiles: add emulator doc for installShellCompletion"
This reverts commit 149a6e0a91.

See discussion in https://github.com/NixOS/nixpkgs/issues/308283 for
more details on why this isn't something we want to suggest.
2025-05-14 14:54:31 -04:00
Sandro 99dd92d76f ctestCheckHook: init, {pdal,gifticlib,zynaddsubfx}: migrate to ctestCheckHook (#379426) 2025-05-09 16:47:09 +02:00
awwpotato 76c5b6cc00 doc: remove useFetchCargoVendor 2025-04-26 15:26:20 -07:00
Sergei Zimmerman 00b1aef96b ctestCheckHook: init
Motivation for this hook is simple: there's no single documented
way to do trivial things with ctest:

1. Pass additional flags to ctest invocation.
2. Selectively disable tests in a mechanism similar to python's
   `disabledTests` or rust's composable skips in `checkFlags`.
3. Disable parallel checking.

Current state of things has lead to several different solutions:

1. Completely overriding `checkPhase` [1] and invoking ctest manually
   with the necessary flags. This is most often coupled with `-E` for
   disabling test or setting parallel level.
2. Wrangling with weird double string/regex escaping and trying to stuff
   additional parameters and/or exclusion regex via `CMAKE_CTEST_ARGUMENTS`.
   This approach is especially painful when test names have spaces. This is
   the reason I originally decided to implement this hook after wrangling with
   failing darwin tests here [2].
3. Stuffing additional arguments into `checkFlagsArray` with the
   `ARGS` makefile parameter [3].

I don't see any reason to keep the status-quo. Doing something along these
lines has been suggested [4] for both `ctest` and `meson`. Meson setup-hook
has switched from `ninja` to `meson` in [5] with little friction. Doing
the same for cmake in a single sweep would prove problematic due to the
aforementioned zoo of workarounds and hacks for `ctest`. Doing it via
a separate hook would allow us to refactor things piecemeal and without
going through staging. The benefit of the hook is immediately clear and it
would allow to drive the refactor tractor at a comfortable pace.

[1]: pd/pdal/package.nix:117, cc/ccache/package.nix:108, gl/glog/package.nix:79
[2]: https://www.github.com/NixOS/nixpkgs/pull/375955
[3]: op/open62541/package.nix:114
[4]: https://www.github.com/NixOS/nixpkgs/issues/113829
[5]: https://www.github.com/NixOS/nixpkgs/pull/213845
2025-04-26 16:48:53 +00:00
Pol Dellaiera b4515ff6c2 doc: use finalAttrs pattern 2025-04-21 07:02:49 +02:00