nixpkgs/pkgs/build-support
rnhmjoj 61b7cab481
treewide: use perl.withPackages when possible
Since 03eaa48 added perl.withPackages, there is a canonical way to
create a perl interpreter from a list of libraries, for use in script
shebangs or generic build inputs. This method is declarative (what we
are doing is clear), produces short shebangs[1] and needs not to wrap
existing scripts.

Unfortunately there are a few exceptions that I've found:

  1. Scripts that are calling perl with the -T switch. This makes perl
  ignore PERL5LIB, which is what perl.withPackages is using to inform
  the interpreter of the library paths.

  2. Perl packages that depends on libraries in their own path. This
  is not possible because perl.withPackages works at build time. The
  workaround is to add `-I $out/${perl.libPrefix}` to the shebang.

In all other cases I propose to switch to perl.withPackages.

[1]: https://lwn.net/Articles/779997/
2021-03-31 21:35:37 +02:00
..
add-opengl-runpath
agda Merge pull request #110512 from neosimsim/agda-dont-install-Everything 2021-02-03 15:56:34 -03:00
alternatives treewide: stdenv.lib -> lib 2021-01-24 01:49:49 +01:00
appimage apple-music-electron: 1.5.2 -> 1.5.5 2021-03-12 01:21:33 +01:00
bintools-wrapper Merge branch 'staging-next' into staging 2021-03-04 22:16:45 +01:00
build-bazel-package Merge pull request #114853 from lourkeur/fix-string-escaping 2021-03-03 19:35:16 +09:00
build-dotnet-package treewide: pkgs.pkgconfig -> pkgs.pkg-config, move pkgconfig to alias.nix 2021-01-19 01:16:25 -08:00
build-fhs-userenv build-fhs-userenv: bind /etc/profiles 2021-01-26 00:41:50 +00:00
build-fhs-userenv-bubblewrap Merge pull request #114024 from LuigiPiucco/pressure-vessel 2021-02-23 19:20:12 +00:00
build-setupcfg
buildenv trivial-builders: merge passAsFile with env in runCommand' 2021-03-18 19:56:40 +01:00
cc-wrapper cc-wrapper: -nostdlib does not imply -nostdinc++ 2021-03-20 09:26:04 +01:00
coq coqPackages.multinomials: 1.5.2 -> 1.5.4 (#115427) 2021-03-10 16:25:32 +01:00
docker dockerTools.streamLayeredImage: resolve duplicate env vars 2021-03-25 23:29:54 +00:00
dotnetbuildhelpers treewide: pkgs.pkgconfig -> pkgs.pkg-config, move pkgconfig to alias.nix 2021-01-19 01:16:25 -08:00
dotnetenv treewide: stdenv.lib -> lib 2021-01-24 01:49:49 +01:00
emacs emacsWithPackages: prevent the UI showing prematurely during startup 2021-02-25 22:30:40 +09:00
expand-response-params responsie file logic 2021-02-09 09:46:47 +08:00
fetchbitbucket fetchFromBitbucket: remove hack for Mercurial 2021-02-08 17:54:12 +00:00
fetchbower
fetchbzr treewide: editorconfig fixes 2021-01-20 09:11:11 +10:00
fetchcvs fetchcvs: fix ssh wrapper failing due to missing /usr/bin/env 2021-02-08 19:18:17 +01:00
fetchdarcs
fetchdocker treewide: remove stdenv where not needed 2021-01-25 18:31:47 +01:00
fetchfirefoxaddon Merge pull request #106481 from tadfisher/patch-3 2021-01-30 22:31:24 +09:00
fetchfossil fetchfossil: Depend on cacert 2020-10-24 16:43:05 +05:30
fetchgit Merge pull request #111782 from Luflosi/fetchgit-escape-regex 2021-03-21 05:34:53 +01:00
fetchgithub fetchFromGitHub: also use git if deepClone or leaveDotGit is used 2020-12-21 13:20:04 +01:00
fetchgitiles
fetchgitlab fetchgitlab: Escape a few more characters in the revision 2020-09-13 12:34:08 +02:00
fetchgitlocal
fetchgx
fetchhg treewide: stdenvNoCC.lib -> lib 2021-01-27 13:01:51 +07:00
fetchipfs
fetchmavenartifact treewide: stdenv.lib -> lib 2021-01-24 01:49:49 +01:00
fetchmtn treewide: stdenvNoCC.lib -> lib 2021-01-27 13:01:51 +07:00
fetchnuget treewide: unzip buildInputs to nativeBuildInputs (#112302) 2021-02-20 16:01:53 -05:00
fetchpatch
fetchrepoorcz
fetchrepoproject treewide: stdenvNoCC.lib -> lib 2021-01-27 13:01:51 +07:00
fetchs3 treewide: remove stdenv where not needed 2021-03-04 19:54:50 +07:00
fetchsavannah
fetchsourcehut fetchFromSourcehut: init 2021-03-08 15:51:24 +01:00
fetchsvn treewide: stdenvNoCC.lib -> lib 2021-01-27 13:01:51 +07:00
fetchsvnrevision pkgs/*: add final newline to .nix files 2020-11-09 11:39:28 +00:00
fetchsvnssh
fetchurl mirrors: fix lua mirrors 2020-12-08 23:55:31 +01:00
fetchzip fetchzip: simplify postFetch as per suggestions 2021-02-05 13:08:57 +00:00
go garble: fix aarch64 build 2021-02-20 21:13:46 +10:00
icon-conv-tools treewide: stdenv.lib -> lib 2021-01-24 01:49:49 +01:00
install-shell-files Recover the complicated situation after my bad merge 2020-10-26 09:01:04 +01:00
kernel treewide: stdenvNoCC.lib -> lib 2021-01-27 13:01:51 +07:00
libredirect treewide: stdenv.lib -> lib 2021-01-24 01:49:49 +01:00
make-desktopitem make-desktopitem: desktop-file-utils is a nativeBuildInput 2020-11-27 01:17:32 +01:00
make-startupitem
make-symlinks
mkshell
mono-dll-fixer
nix-gitignore Revert "nix-gitignore: Optimise performance" 2020-12-27 08:04:16 -05:00
nuke-references
ocaml ocamlPackages.dune: rename into dune_1 2021-03-07 12:07:14 +01:00
oci-tools
pkg-config-wrapper pkgs/build-support: stdenv.lib -> lib 2021-01-24 19:07:54 -08:00
prefer-remote-fetch
references-by-popularity
release releaseTools: fix nixBuild function 2021-03-29 21:24:00 +02:00
remove-references-to
rust cargo/hooks: allow hooks to be disabled 2021-03-08 19:17:03 +01:00
setup-hooks stdenv/patchShebangs: fix off by one reading old interpreter 2021-02-09 13:05:38 +09:00
singularity-tools treewide: stdenv.lib -> lib 2021-01-24 01:49:49 +01:00
skaware treewide: fix double quoted strings in meta.description 2021-01-24 19:56:59 +07:00
snap
src-only
substitute
substitute-files treewide: stdenv.lib -> lib 2021-01-24 01:49:49 +01:00
templaterpm treewide: makeWrapper buildInputs to nativeBuildInputs 2021-02-19 20:09:16 +07:00
upstream-updater
vm treewide: stdenv.lib -> lib 2021-01-24 01:49:49 +01:00
wrapper-common Merge #97597: stdenv wrappers: improve purity checking 2020-09-24 10:58:10 +02:00
writers treewide: use perl.withPackages when possible 2021-03-31 21:35:37 +02:00
build-maven.nix
build-pecl.nix Revert "php: Add php package versions to extensions/packages pnames" 2021-03-04 15:26:36 +01:00
closure-info.nix
dhall-to-nix.nix
plugins.nix treewide: remove stdenv where not needed 2021-01-25 18:31:47 +01:00
replace-dependency.nix
setup-systemd-units.nix setupSystemdUnits: use /nix/var/nix/profiles/default/lib/systemd/system as fallback 2021-02-12 12:53:20 +01:00
source-from-head-fun.nix
trivial-builders.nix trivial-builders: rework runCommand' into runCommandWith && expose 2021-03-18 19:56:40 +01:00