diff options
author | Jonas Chevalier <zimbatm@zimbatm.com> | 2021-05-13 19:17:29 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-05-13 19:17:29 +0200 |
commit | c6b62f2381571cc83c6c32ef4984fabcbb4ca892 (patch) | |
tree | af1d2c57ebaf61652faf6697bbc81044a0e27d88 /pkgs | |
parent | 7693c5d59b01a50c4cb2c20c741f505c84f34677 (diff) | |
download | nixlib-c6b62f2381571cc83c6c32ef4984fabcbb4ca892.tar nixlib-c6b62f2381571cc83c6c32ef4984fabcbb4ca892.tar.gz nixlib-c6b62f2381571cc83c6c32ef4984fabcbb4ca892.tar.bz2 nixlib-c6b62f2381571cc83c6c32ef4984fabcbb4ca892.tar.lz nixlib-c6b62f2381571cc83c6c32ef4984fabcbb4ca892.tar.xz nixlib-c6b62f2381571cc83c6c32ef4984fabcbb4ca892.tar.zst nixlib-c6b62f2381571cc83c6c32ef4984fabcbb4ca892.zip |
mkShell: introduce packages argument (#122180)
The distinction between the inputs doesn't really make sense in the mkShell context. Technically speaking, we should be using the nativeBuildInputs most of the time. So in order to make this function more beginner-friendly, add "packages" as an attribute, that maps to nativeBuildInputs. This commit also updates all the uses in nixpkgs.
Diffstat (limited to 'pkgs')
-rw-r--r-- | pkgs/applications/editors/emacs-modes/emacs2nix.nix | 6 | ||||
-rw-r--r-- | pkgs/applications/editors/emacs-modes/updater-emacs.nix | 2 | ||||
-rw-r--r-- | pkgs/applications/networking/cluster/nixops/shell.nix | 4 | ||||
-rw-r--r-- | pkgs/build-support/agda/default.nix | 2 | ||||
-rw-r--r-- | pkgs/build-support/mkshell/default.nix | 24 | ||||
-rw-r--r-- | pkgs/development/mobile/androidenv/examples/shell.nix | 2 | ||||
-rw-r--r-- | pkgs/tools/X11/opentabletdriver/shell.nix | 4 |
7 files changed, 24 insertions, 20 deletions
diff --git a/pkgs/applications/editors/emacs-modes/emacs2nix.nix b/pkgs/applications/editors/emacs-modes/emacs2nix.nix index cc82646870ca..658756250a01 100644 --- a/pkgs/applications/editors/emacs-modes/emacs2nix.nix +++ b/pkgs/applications/editors/emacs-modes/emacs2nix.nix @@ -7,10 +7,10 @@ let rev = "860da04ca91cbb69c9b881a54248d16bdaaf9923"; sha256 = "1r3xmyk9rfgx7ln69dk8mgbnh3awcalm3r1c5ia2shlsrymvv1df"; }; +in +pkgs.mkShell { -in pkgs.mkShell { - - buildInputs = [ + packages = [ pkgs.bash ]; diff --git a/pkgs/applications/editors/emacs-modes/updater-emacs.nix b/pkgs/applications/editors/emacs-modes/updater-emacs.nix index 4c321065445c..7502bcc2fee9 100644 --- a/pkgs/applications/editors/emacs-modes/updater-emacs.nix +++ b/pkgs/applications/editors/emacs-modes/updater-emacs.nix @@ -29,7 +29,7 @@ let in [ promise semaphore ]); in pkgs.mkShell { - buildInputs = [ + packages = [ pkgs.git pkgs.nix pkgs.bash diff --git a/pkgs/applications/networking/cluster/nixops/shell.nix b/pkgs/applications/networking/cluster/nixops/shell.nix index 3fc06b0bc73a..0139cb2c8125 100644 --- a/pkgs/applications/networking/cluster/nixops/shell.nix +++ b/pkgs/applications/networking/cluster/nixops/shell.nix @@ -1,7 +1,7 @@ -{ pkgs ? import <nixpkgs> {} }: +{ pkgs ? import <nixpkgs> { } }: pkgs.mkShell { - buildInputs = [ + packages = [ pkgs.poetry2nix.cli pkgs.pkg-config pkgs.libvirt diff --git a/pkgs/build-support/agda/default.nix b/pkgs/build-support/agda/default.nix index 984d61f1f751..ed7d11a13147 100644 --- a/pkgs/build-support/agda/default.nix +++ b/pkgs/build-support/agda/default.nix @@ -1,6 +1,6 @@ # Builder for Agda packages. -{ stdenv, lib, self, Agda, runCommandNoCC, makeWrapper, writeText, mkShell, ghcWithPackages, nixosTests }: +{ stdenv, lib, self, Agda, runCommandNoCC, makeWrapper, writeText, ghcWithPackages, nixosTests }: with lib.strings; diff --git a/pkgs/build-support/mkshell/default.nix b/pkgs/build-support/mkshell/default.nix index a70dc0390cb5..7ca4cc23c1d5 100644 --- a/pkgs/build-support/mkshell/default.nix +++ b/pkgs/build-support/mkshell/default.nix @@ -3,18 +3,22 @@ # A special kind of derivation that is only meant to be consumed by the # nix-shell. { - inputsFrom ? [], # a list of derivations whose inputs will be made available to the environment - buildInputs ? [], - nativeBuildInputs ? [], - propagatedBuildInputs ? [], - propagatedNativeBuildInputs ? [], - ... + # a list of packages to add to the shell environment + packages ? [ ] +, # propagate all the inputs from the given derivations + inputsFrom ? [ ] +, buildInputs ? [ ] +, nativeBuildInputs ? [ ] +, propagatedBuildInputs ? [ ] +, propagatedNativeBuildInputs ? [ ] +, ... }@attrs: let mergeInputs = name: lib.concatLists (lib.catAttrs name - ([attrs] ++ inputsFrom)); + ([ attrs ] ++ inputsFrom)); rest = builtins.removeAttrs attrs [ + "packages" "inputsFrom" "buildInputs" "nativeBuildInputs" @@ -26,15 +30,15 @@ in stdenv.mkDerivation ({ name = "nix-shell"; - phases = ["nobuildPhase"]; + phases = [ "nobuildPhase" ]; buildInputs = mergeInputs "buildInputs"; - nativeBuildInputs = mergeInputs "nativeBuildInputs"; + nativeBuildInputs = packages ++ (mergeInputs "nativeBuildInputs"); propagatedBuildInputs = mergeInputs "propagatedBuildInputs"; propagatedNativeBuildInputs = mergeInputs "propagatedNativeBuildInputs"; shellHook = lib.concatStringsSep "\n" (lib.catAttrs "shellHook" - (lib.reverseList inputsFrom ++ [attrs])); + (lib.reverseList inputsFrom ++ [ attrs ])); nobuildPhase = '' echo diff --git a/pkgs/development/mobile/androidenv/examples/shell.nix b/pkgs/development/mobile/androidenv/examples/shell.nix index 95f6a3bdbbac..45cccf22c7df 100644 --- a/pkgs/development/mobile/androidenv/examples/shell.nix +++ b/pkgs/development/mobile/androidenv/examples/shell.nix @@ -115,7 +115,7 @@ let in pkgs.mkShell rec { name = "androidenv-demo"; - buildInputs = [ androidSdk platformTools jdk pkgs.android-studio ]; + packages = [ androidSdk platformTools jdk pkgs.android-studio ]; LANG = "C.UTF-8"; LC_ALL = "C.UTF-8"; diff --git a/pkgs/tools/X11/opentabletdriver/shell.nix b/pkgs/tools/X11/opentabletdriver/shell.nix index 526fa4a44320..4367d22e9df7 100644 --- a/pkgs/tools/X11/opentabletdriver/shell.nix +++ b/pkgs/tools/X11/opentabletdriver/shell.nix @@ -1,9 +1,9 @@ -{ pkgs ? import ../../../../. {} }: +{ pkgs ? import ../../../../. { } }: with pkgs; mkShell { - buildInputs = [ + packages = [ common-updater-scripts curl dotnetCorePackages.sdk_5_0 |