summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--nixos/modules/services/desktops/pipewire/pipewire-media-session.nix8
-rw-r--r--nixos/modules/services/desktops/pipewire/pipewire.nix10
-rw-r--r--nixos/modules/services/video/epgstation/default.nix2
-rw-r--r--nixos/modules/services/web-servers/trafficserver/default.nix4
-rw-r--r--nixos/tests/os-prober.nix4
-rw-r--r--pkgs/applications/editors/cudatext/default.nix2
-rw-r--r--pkgs/applications/editors/kakoune/plugins/aliases.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/element/element-desktop.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/element/element-web.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/element/keytar/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/element/seshat/default.nix2
-rw-r--r--pkgs/applications/networking/instant-messengers/schildichat/schildichat-web.nix2
-rw-r--r--pkgs/applications/version-management/gitlab/default.nix2
-rw-r--r--pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix2
-rw-r--r--pkgs/development/compilers/adoptopenjdk-bin/jdk11-darwin.nix4
-rw-r--r--pkgs/development/compilers/adoptopenjdk-bin/jdk11-linux.nix4
-rw-r--r--pkgs/development/compilers/adoptopenjdk-bin/jdk13-darwin.nix4
-rw-r--r--pkgs/development/compilers/adoptopenjdk-bin/jdk13-linux.nix4
-rw-r--r--pkgs/development/compilers/adoptopenjdk-bin/jdk14-darwin.nix4
-rw-r--r--pkgs/development/compilers/adoptopenjdk-bin/jdk14-linux.nix4
-rw-r--r--pkgs/development/compilers/adoptopenjdk-bin/jdk15-darwin.nix4
-rw-r--r--pkgs/development/compilers/adoptopenjdk-bin/jdk15-linux.nix4
-rw-r--r--pkgs/development/compilers/adoptopenjdk-bin/jdk16-darwin.nix4
-rw-r--r--pkgs/development/compilers/adoptopenjdk-bin/jdk16-linux.nix4
-rw-r--r--pkgs/development/compilers/adoptopenjdk-bin/jdk8-darwin.nix4
-rw-r--r--pkgs/development/compilers/adoptopenjdk-bin/jdk8-linux.nix4
-rw-r--r--pkgs/development/compilers/ghcjs/8.10/default.nix2
-rw-r--r--pkgs/development/libraries/languagemachines/frog.nix2
-rw-r--r--pkgs/development/libraries/languagemachines/frogdata.nix2
-rw-r--r--pkgs/development/libraries/languagemachines/libfolia.nix2
-rw-r--r--pkgs/development/libraries/languagemachines/mbt.nix2
-rw-r--r--pkgs/development/libraries/languagemachines/ticcutils.nix2
-rw-r--r--pkgs/development/libraries/languagemachines/timbl.nix2
-rw-r--r--pkgs/development/libraries/languagemachines/timblserver.nix2
-rw-r--r--pkgs/development/libraries/languagemachines/ucto.nix2
-rw-r--r--pkgs/development/libraries/languagemachines/uctodata.nix2
-rw-r--r--pkgs/development/mobile/androidenv/compose-android-packages.nix4
-rw-r--r--pkgs/development/tools/build-managers/bazel/bazel_0_29/default.nix2
-rw-r--r--pkgs/development/tools/build-managers/bazel/bazel_1/default.nix2
-rw-r--r--pkgs/development/tools/build-managers/bazel/bazel_3/default.nix2
-rw-r--r--pkgs/development/tools/build-managers/bazel/bazel_4/default.nix2
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/default.nix2
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/grammars/default.nix96
-rw-r--r--pkgs/development/tools/parsing/tree-sitter/update.nix2
-rw-r--r--pkgs/development/web/netlify-cli/default.nix2
-rwxr-xr-xpkgs/development/web/netlify-cli/generate.sh2
-rw-r--r--pkgs/games/dwarf-fortress/default.nix2
-rw-r--r--pkgs/misc/vim-plugins/aliases.nix2
-rw-r--r--pkgs/misc/vscode-extensions/ms-dotnettools-csharp/default.nix2
-rw-r--r--pkgs/os-specific/linux/kernel/patches.nix2
-rw-r--r--pkgs/servers/asterisk/default.nix2
-rw-r--r--pkgs/servers/web-apps/hedgedoc/default.nix2
-rw-r--r--pkgs/tools/networking/ngrok-2/default.nix2
-rw-r--r--pkgs/tools/security/enpass/default.nix2
-rw-r--r--pkgs/tools/security/onlykey/default.nix2
-rw-r--r--pkgs/tools/text/chroma/default.nix2
-rw-r--r--pkgs/top-level/all-packages.nix24
57 files changed, 150 insertions, 124 deletions
diff --git a/nixos/modules/services/desktops/pipewire/pipewire-media-session.nix b/nixos/modules/services/desktops/pipewire/pipewire-media-session.nix
index 8f6c4fa1d4f..4be3e881a9d 100644
--- a/nixos/modules/services/desktops/pipewire/pipewire-media-session.nix
+++ b/nixos/modules/services/desktops/pipewire/pipewire-media-session.nix
@@ -13,10 +13,10 @@ let
   # Use upstream config files passed through spa-json-dump as the base
   # Patched here as necessary for them to work with this module
   defaults = {
-    alsa-monitor = (builtins.fromJSON (builtins.readFile ./media-session/alsa-monitor.conf.json));
-    bluez-monitor = (builtins.fromJSON (builtins.readFile ./media-session/bluez-monitor.conf.json));
-    media-session = (builtins.fromJSON (builtins.readFile ./media-session/media-session.conf.json));
-    v4l2-monitor = (builtins.fromJSON (builtins.readFile ./media-session/v4l2-monitor.conf.json));
+    alsa-monitor = lib.importJSON ./media-session/alsa-monitor.conf.json;
+    bluez-monitor = lib.importJSON ./media-session/bluez-monitor.conf.json;
+    media-session = lib.importJSON ./media-session/media-session.conf.json;
+    v4l2-monitor = lib.importJSON ./media-session/v4l2-monitor.conf.json;
   };
 
   configs = {
diff --git a/nixos/modules/services/desktops/pipewire/pipewire.nix b/nixos/modules/services/desktops/pipewire/pipewire.nix
index 273d518033d..55755ecd645 100644
--- a/nixos/modules/services/desktops/pipewire/pipewire.nix
+++ b/nixos/modules/services/desktops/pipewire/pipewire.nix
@@ -22,11 +22,11 @@ let
   # Use upstream config files passed through spa-json-dump as the base
   # Patched here as necessary for them to work with this module
   defaults = {
-    client = builtins.fromJSON (builtins.readFile ./daemon/client.conf.json);
-    client-rt = builtins.fromJSON (builtins.readFile ./daemon/client-rt.conf.json);
-    jack = builtins.fromJSON (builtins.readFile ./daemon/jack.conf.json);
-    pipewire = builtins.fromJSON (builtins.readFile ./daemon/pipewire.conf.json);
-    pipewire-pulse = builtins.fromJSON (builtins.readFile ./daemon/pipewire-pulse.conf.json);
+    client = lib.importJSON ./daemon/client.conf.json;
+    client-rt = lib.importJSON ./daemon/client-rt.conf.json;
+    jack = lib.importJSON ./daemon/jack.conf.json;
+    pipewire = lib.importJSON ./daemon/pipewire.conf.json;
+    pipewire-pulse = lib.importJSON ./daemon/pipewire-pulse.conf.json;
   };
 
   configs = {
diff --git a/nixos/modules/services/video/epgstation/default.nix b/nixos/modules/services/video/epgstation/default.nix
index e34b6e0510a..36f7b937d5a 100644
--- a/nixos/modules/services/video/epgstation/default.nix
+++ b/nixos/modules/services/video/epgstation/default.nix
@@ -33,7 +33,7 @@ let
     fi
   '';
 
-  streamingConfig = builtins.fromJSON (builtins.readFile ./streaming.json);
+  streamingConfig = lib.importJSON ./streaming.json;
   logConfig = {
     appenders.stdout.type = "stdout";
     categories = {
diff --git a/nixos/modules/services/web-servers/trafficserver/default.nix b/nixos/modules/services/web-servers/trafficserver/default.nix
index 706ea5bfefb..b52087fa038 100644
--- a/nixos/modules/services/web-servers/trafficserver/default.nix
+++ b/nixos/modules/services/web-servers/trafficserver/default.nix
@@ -61,7 +61,7 @@ in
 
     ipAllow = mkOption {
       type = types.nullOr yaml.type;
-      default = builtins.fromJSON (builtins.readFile ./ip_allow.json);
+      default = lib.importJSON ./ip_allow.json;
       defaultText = literalDocBook "upstream defaults";
       example = literalExpression ''
         {
@@ -84,7 +84,7 @@ in
 
     logging = mkOption {
       type = types.nullOr yaml.type;
-      default = builtins.fromJSON (builtins.readFile ./logging.json);
+      default = lib.importJSON ./logging.json;
       defaultText = literalDocBook "upstream defaults";
       example = { };
       description = ''
diff --git a/nixos/tests/os-prober.nix b/nixos/tests/os-prober.nix
index 3cc38ebe347..a7b955d4472 100644
--- a/nixos/tests/os-prober.nix
+++ b/nixos/tests/os-prober.nix
@@ -58,9 +58,9 @@ let
           [ ./hardware-configuration.nix
             <nixpkgs/nixos/modules/testing/test-instrumentation.nix>
           ];
-    } // (builtins.fromJSON (builtins.readFile ${
+    } // pkgs.lib.importJSON ${
       pkgs.writeText "simpleConfig.json" (builtins.toJSON simpleConfig)
-    })))
+    })
   '';
 in {
   name = "os-prober";
diff --git a/pkgs/applications/editors/cudatext/default.nix b/pkgs/applications/editors/cudatext/default.nix
index f3075d085c4..f840218d850 100644
--- a/pkgs/applications/editors/cudatext/default.nix
+++ b/pkgs/applications/editors/cudatext/default.nix
@@ -34,7 +34,7 @@ let
         inherit (spec) owner rev sha256;
       }
     )
-    (builtins.fromJSON (builtins.readFile ./deps.json));
+    (lib.importJSON ./deps.json);
 in
 stdenv.mkDerivation rec {
   pname = "cudatext";
diff --git a/pkgs/applications/editors/kakoune/plugins/aliases.nix b/pkgs/applications/editors/kakoune/plugins/aliases.nix
index 5ff2a03441d..cf9a65c43f2 100644
--- a/pkgs/applications/editors/kakoune/plugins/aliases.nix
+++ b/pkgs/applications/editors/kakoune/plugins/aliases.nix
@@ -33,7 +33,7 @@ let
 
   deprecations = lib.mapAttrs (old: info:
     throw "${old} was renamed to ${info.new} on ${info.date}. Please update to ${info.new}."
-  ) (builtins.fromJSON (builtins.readFile ./deprecated.json));
+  ) (lib.importJSON ./deprecated.json);
 
 in
 mapAliases ({
diff --git a/pkgs/applications/networking/instant-messengers/element/element-desktop.nix b/pkgs/applications/networking/instant-messengers/element/element-desktop.nix
index dd7c6f0c573..bce13052e5a 100644
--- a/pkgs/applications/networking/instant-messengers/element/element-desktop.nix
+++ b/pkgs/applications/networking/instant-messengers/element/element-desktop.nix
@@ -16,7 +16,7 @@
 }:
 
 let
-  pinData = (builtins.fromJSON (builtins.readFile ./pin.json));
+  pinData = lib.importJSON ./pin.json;
   executableName = "element-desktop";
   electron_exec = if stdenv.isDarwin then "${electron}/Applications/Electron.app/Contents/MacOS/Electron" else "${electron}/bin/electron";
 in
diff --git a/pkgs/applications/networking/instant-messengers/element/element-web.nix b/pkgs/applications/networking/instant-messengers/element/element-web.nix
index 33af19a9a57..fae96e8e5e7 100644
--- a/pkgs/applications/networking/instant-messengers/element/element-web.nix
+++ b/pkgs/applications/networking/instant-messengers/element/element-web.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, fetchurl, writeText, jq, conf ? {} }:
 
 let
-  pinData = (builtins.fromJSON (builtins.readFile ./pin.json));
+  pinData = lib.importJSON ./pin.json;
   noPhoningHome = {
     disable_guests = true; # disable automatic guest account registration at matrix.org
     piwik = false; # disable analytics
diff --git a/pkgs/applications/networking/instant-messengers/element/keytar/default.nix b/pkgs/applications/networking/instant-messengers/element/keytar/default.nix
index 432d69ac7a4..ae9627afe30 100644
--- a/pkgs/applications/networking/instant-messengers/element/keytar/default.nix
+++ b/pkgs/applications/networking/instant-messengers/element/keytar/default.nix
@@ -2,7 +2,7 @@
 , fixup_yarn_lock, yarn, pkg-config, libsecret, xcbuild, Security, AppKit, fetchYarnDeps }:
 
 let
-  pinData = (builtins.fromJSON (builtins.readFile ./pin.json));
+  pinData = lib.importJSON ./pin.json;
 
 in stdenv.mkDerivation rec {
   pname = "keytar";
diff --git a/pkgs/applications/networking/instant-messengers/element/seshat/default.nix b/pkgs/applications/networking/instant-messengers/element/seshat/default.nix
index ff3b2ba9134..de38c7a90ba 100644
--- a/pkgs/applications/networking/instant-messengers/element/seshat/default.nix
+++ b/pkgs/applications/networking/instant-messengers/element/seshat/default.nix
@@ -1,7 +1,7 @@
 { lib, stdenv, rustPlatform, fetchFromGitHub, callPackage, sqlcipher, nodejs-14_x, python3, yarn, fixup_yarn_lock, CoreServices, fetchYarnDeps }:
 
 let
-  pinData = (builtins.fromJSON (builtins.readFile ./pin.json));
+  pinData = lib.importJSON ./pin.json;
 
 in rustPlatform.buildRustPackage rec {
   pname = "seshat-node";
diff --git a/pkgs/applications/networking/instant-messengers/schildichat/schildichat-web.nix b/pkgs/applications/networking/instant-messengers/schildichat/schildichat-web.nix
index 015c44e428b..c1bfc98047b 100644
--- a/pkgs/applications/networking/instant-messengers/schildichat/schildichat-web.nix
+++ b/pkgs/applications/networking/instant-messengers/schildichat/schildichat-web.nix
@@ -8,7 +8,7 @@
 }:
 
 let
-  pinData = builtins.fromJSON (builtins.readFile ./pin.json);
+  pinData = lib.importJSON ./pin.json;
   noPhoningHome = {
     disable_guests = true; # disable automatic guest account registration at matrix.org
   };
diff --git a/pkgs/applications/version-management/gitlab/default.nix b/pkgs/applications/version-management/gitlab/default.nix
index fe43c494dd4..347151b1a7f 100644
--- a/pkgs/applications/version-management/gitlab/default.nix
+++ b/pkgs/applications/version-management/gitlab/default.nix
@@ -5,7 +5,7 @@
 }:
 
 let
-  data = (builtins.fromJSON (builtins.readFile ./data.json));
+  data = lib.importJSON ./data.json;
 
   version = data.version;
   src = fetchFromGitLab {
diff --git a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
index 63df2be4a27..6614e3913b8 100644
--- a/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
+++ b/pkgs/applications/version-management/gitlab/gitlab-workhorse/default.nix
@@ -1,6 +1,6 @@
 { lib, fetchFromGitLab, git, buildGoModule }:
 let
-  data = (builtins.fromJSON (builtins.readFile ../data.json));
+  data = lib.importJSON ../data.json;
 in
 buildGoModule rec {
   pname = "gitlab-workhorse";
diff --git a/pkgs/development/compilers/adoptopenjdk-bin/jdk11-darwin.nix b/pkgs/development/compilers/adoptopenjdk-bin/jdk11-darwin.nix
index 7fec8fd3ff6..1fd2fd8dc09 100644
--- a/pkgs/development/compilers/adoptopenjdk-bin/jdk11-darwin.nix
+++ b/pkgs/development/compilers/adoptopenjdk-bin/jdk11-darwin.nix
@@ -1,5 +1,7 @@
+{ lib }:
+
 let
-  sources = builtins.fromJSON (builtins.readFile ./sources.json);
+  sources = lib.importJSON ./sources.json;
 in
 {
   jdk-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk11.mac.jdk.hotspot; };
diff --git a/pkgs/development/compilers/adoptopenjdk-bin/jdk11-linux.nix b/pkgs/development/compilers/adoptopenjdk-bin/jdk11-linux.nix
index e802e2eea52..da5e9c49d23 100644
--- a/pkgs/development/compilers/adoptopenjdk-bin/jdk11-linux.nix
+++ b/pkgs/development/compilers/adoptopenjdk-bin/jdk11-linux.nix
@@ -1,5 +1,7 @@
+{ lib }:
+
 let
-  sources = builtins.fromJSON (builtins.readFile ./sources.json);
+  sources = lib.importJSON ./sources.json;
 in
 {
   jdk-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk11.linux.jdk.hotspot; };
diff --git a/pkgs/development/compilers/adoptopenjdk-bin/jdk13-darwin.nix b/pkgs/development/compilers/adoptopenjdk-bin/jdk13-darwin.nix
index 2654c4f9e72..fdde25bd361 100644
--- a/pkgs/development/compilers/adoptopenjdk-bin/jdk13-darwin.nix
+++ b/pkgs/development/compilers/adoptopenjdk-bin/jdk13-darwin.nix
@@ -1,5 +1,7 @@
+{ lib }:
+
 let
-  sources = builtins.fromJSON (builtins.readFile ./sources.json);
+  sources = lib.importJSON ./sources.json;
 in
 {
   jdk-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk13.mac.jdk.hotspot; knownVulnerabilities = ["Support ended"]; };
diff --git a/pkgs/development/compilers/adoptopenjdk-bin/jdk13-linux.nix b/pkgs/development/compilers/adoptopenjdk-bin/jdk13-linux.nix
index c33d6afad10..f503b03a833 100644
--- a/pkgs/development/compilers/adoptopenjdk-bin/jdk13-linux.nix
+++ b/pkgs/development/compilers/adoptopenjdk-bin/jdk13-linux.nix
@@ -1,5 +1,7 @@
+{ lib }:
+
 let
-  sources = builtins.fromJSON (builtins.readFile ./sources.json);
+  sources = lib.importJSON ./sources.json;
 in
 {
   jdk-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk13.linux.jdk.hotspot; knownVulnerabilities = ["Support ended"]; };
diff --git a/pkgs/development/compilers/adoptopenjdk-bin/jdk14-darwin.nix b/pkgs/development/compilers/adoptopenjdk-bin/jdk14-darwin.nix
index 6941a6dd0dd..1c776f69e2d 100644
--- a/pkgs/development/compilers/adoptopenjdk-bin/jdk14-darwin.nix
+++ b/pkgs/development/compilers/adoptopenjdk-bin/jdk14-darwin.nix
@@ -1,5 +1,7 @@
+{ lib }:
+
 let
-  sources = builtins.fromJSON (builtins.readFile ./sources.json);
+  sources = lib.importJSON ./sources.json;
 in
 {
   jdk-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk14.mac.jdk.hotspot; knownVulnerabilities = ["Support ended"]; };
diff --git a/pkgs/development/compilers/adoptopenjdk-bin/jdk14-linux.nix b/pkgs/development/compilers/adoptopenjdk-bin/jdk14-linux.nix
index 756b419434d..a55a708b372 100644
--- a/pkgs/development/compilers/adoptopenjdk-bin/jdk14-linux.nix
+++ b/pkgs/development/compilers/adoptopenjdk-bin/jdk14-linux.nix
@@ -1,5 +1,7 @@
+{ lib }:
+
 let
-  sources = builtins.fromJSON (builtins.readFile ./sources.json);
+  sources = lib.importJSON ./sources.json;
 in
 {
   jdk-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk14.linux.jdk.hotspot; knownVulnerabilities = ["Support ended"]; };
diff --git a/pkgs/development/compilers/adoptopenjdk-bin/jdk15-darwin.nix b/pkgs/development/compilers/adoptopenjdk-bin/jdk15-darwin.nix
index d627fd9311f..b9d70665306 100644
--- a/pkgs/development/compilers/adoptopenjdk-bin/jdk15-darwin.nix
+++ b/pkgs/development/compilers/adoptopenjdk-bin/jdk15-darwin.nix
@@ -1,5 +1,7 @@
+{ lib }:
+
 let
-  sources = builtins.fromJSON (builtins.readFile ./sources.json);
+  sources = lib.importJSON ./sources.json;
 in
 {
   jdk-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk15.mac.jdk.hotspot; };
diff --git a/pkgs/development/compilers/adoptopenjdk-bin/jdk15-linux.nix b/pkgs/development/compilers/adoptopenjdk-bin/jdk15-linux.nix
index 6663d9778bc..e248555a6d0 100644
--- a/pkgs/development/compilers/adoptopenjdk-bin/jdk15-linux.nix
+++ b/pkgs/development/compilers/adoptopenjdk-bin/jdk15-linux.nix
@@ -1,5 +1,7 @@
+{ lib }:
+
 let
-  sources = builtins.fromJSON (builtins.readFile ./sources.json);
+  sources = lib.importJSON ./sources.json;
 in
 {
   jdk-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk15.linux.jdk.hotspot; };
diff --git a/pkgs/development/compilers/adoptopenjdk-bin/jdk16-darwin.nix b/pkgs/development/compilers/adoptopenjdk-bin/jdk16-darwin.nix
index b2bf2877c8a..a7473710d14 100644
--- a/pkgs/development/compilers/adoptopenjdk-bin/jdk16-darwin.nix
+++ b/pkgs/development/compilers/adoptopenjdk-bin/jdk16-darwin.nix
@@ -1,5 +1,7 @@
+{ lib }:
+
 let
-  sources = builtins.fromJSON (builtins.readFile ./sources.json);
+  sources = lib.importJSON ./sources.json;
 in
 {
   jdk-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk16.mac.jdk.hotspot; };
diff --git a/pkgs/development/compilers/adoptopenjdk-bin/jdk16-linux.nix b/pkgs/development/compilers/adoptopenjdk-bin/jdk16-linux.nix
index 738b31fe1d1..794545ea80a 100644
--- a/pkgs/development/compilers/adoptopenjdk-bin/jdk16-linux.nix
+++ b/pkgs/development/compilers/adoptopenjdk-bin/jdk16-linux.nix
@@ -1,5 +1,7 @@
+{ lib }:
+
 let
-  sources = builtins.fromJSON (builtins.readFile ./sources.json);
+  sources = lib.importJSON ./sources.json;
 in
 {
   jdk-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk16.linux.jdk.hotspot; };
diff --git a/pkgs/development/compilers/adoptopenjdk-bin/jdk8-darwin.nix b/pkgs/development/compilers/adoptopenjdk-bin/jdk8-darwin.nix
index 5e2d42276ce..84687086991 100644
--- a/pkgs/development/compilers/adoptopenjdk-bin/jdk8-darwin.nix
+++ b/pkgs/development/compilers/adoptopenjdk-bin/jdk8-darwin.nix
@@ -1,5 +1,7 @@
+{ lib }:
+
 let
-  sources = builtins.fromJSON (builtins.readFile ./sources.json);
+  sources = lib.importJSON ./sources.json;
 in
 {
   jdk-hotspot = import ./jdk-darwin-base.nix { sourcePerArch = sources.openjdk8.mac.jdk.hotspot; };
diff --git a/pkgs/development/compilers/adoptopenjdk-bin/jdk8-linux.nix b/pkgs/development/compilers/adoptopenjdk-bin/jdk8-linux.nix
index c2a4085f730..67b50220ba2 100644
--- a/pkgs/development/compilers/adoptopenjdk-bin/jdk8-linux.nix
+++ b/pkgs/development/compilers/adoptopenjdk-bin/jdk8-linux.nix
@@ -1,5 +1,7 @@
+{ lib }:
+
 let
-  sources = builtins.fromJSON (builtins.readFile ./sources.json);
+  sources = lib.importJSON ./sources.json;
 in
 {
   jdk-hotspot = import ./jdk-linux-base.nix { sourcePerArch = sources.openjdk8.linux.jdk.hotspot; };
diff --git a/pkgs/development/compilers/ghcjs/8.10/default.nix b/pkgs/development/compilers/ghcjs/8.10/default.nix
index f8e7c31353f..6b8a251197d 100644
--- a/pkgs/development/compilers/ghcjs/8.10/default.nix
+++ b/pkgs/development/compilers/ghcjs/8.10/default.nix
@@ -3,7 +3,7 @@
 , callPackage
 , fetchgit
 , ghcjsSrcJson ? null
-, ghcjsSrc ? fetchgit (builtins.fromJSON (builtins.readFile ghcjsSrcJson))
+, ghcjsSrc ? fetchgit lib.importJSON ghcjsSrcJson
 , bootPkgs
 , stage0
 , haskellLib
diff --git a/pkgs/development/libraries/languagemachines/frog.nix b/pkgs/development/libraries/languagemachines/frog.nix
index a44535fbf90..130fc60a12c 100644
--- a/pkgs/development/libraries/languagemachines/frog.nix
+++ b/pkgs/development/libraries/languagemachines/frog.nix
@@ -5,7 +5,7 @@
 }:
 
 let
-  release = builtins.fromJSON (builtins.readFile ./release-info/LanguageMachines-frog.json);
+  release = lib.importJSON ./release-info/LanguageMachines-frog.json;
 in
 
 stdenv.mkDerivation {
diff --git a/pkgs/development/libraries/languagemachines/frogdata.nix b/pkgs/development/libraries/languagemachines/frogdata.nix
index 7e890a8d09c..61134a8ebfb 100644
--- a/pkgs/development/libraries/languagemachines/frogdata.nix
+++ b/pkgs/development/libraries/languagemachines/frogdata.nix
@@ -3,7 +3,7 @@
 }:
 
 let
-  release = builtins.fromJSON (builtins.readFile ./release-info/LanguageMachines-frogdata.json);
+  release = lib.importJSON ./release-info/LanguageMachines-frogdata.json;
 in
 
 stdenv.mkDerivation {
diff --git a/pkgs/development/libraries/languagemachines/libfolia.nix b/pkgs/development/libraries/languagemachines/libfolia.nix
index fc5e622bcf4..3137d864683 100644
--- a/pkgs/development/libraries/languagemachines/libfolia.nix
+++ b/pkgs/development/libraries/languagemachines/libfolia.nix
@@ -4,7 +4,7 @@
 , languageMachines }:
 
 let
-  release = builtins.fromJSON (builtins.readFile ./release-info/LanguageMachines-libfolia.json);
+  release = lib.importJSON ./release-info/LanguageMachines-libfolia.json;
 in
 
 stdenv.mkDerivation {
diff --git a/pkgs/development/libraries/languagemachines/mbt.nix b/pkgs/development/libraries/languagemachines/mbt.nix
index efa9ada7d56..49fc3c850ae 100644
--- a/pkgs/development/libraries/languagemachines/mbt.nix
+++ b/pkgs/development/libraries/languagemachines/mbt.nix
@@ -5,7 +5,7 @@
 }:
 
 let
-  release = builtins.fromJSON (builtins.readFile ./release-info/LanguageMachines-mbt.json);
+  release = lib.importJSON ./release-info/LanguageMachines-mbt.json;
 in
 
 stdenv.mkDerivation {
diff --git a/pkgs/development/libraries/languagemachines/ticcutils.nix b/pkgs/development/libraries/languagemachines/ticcutils.nix
index c09f00b1160..53bbd131bfa 100644
--- a/pkgs/development/libraries/languagemachines/ticcutils.nix
+++ b/pkgs/development/libraries/languagemachines/ticcutils.nix
@@ -3,7 +3,7 @@
 , libxml2, zlib, bzip2, libtar }:
 
 let
-  release = builtins.fromJSON (builtins.readFile ./release-info/LanguageMachines-ticcutils.json);
+  release = lib.importJSON ./release-info/LanguageMachines-ticcutils.json;
 in
 
 stdenv.mkDerivation {
diff --git a/pkgs/development/libraries/languagemachines/timbl.nix b/pkgs/development/libraries/languagemachines/timbl.nix
index de22c41ec49..9ca0b080a21 100644
--- a/pkgs/development/libraries/languagemachines/timbl.nix
+++ b/pkgs/development/libraries/languagemachines/timbl.nix
@@ -5,7 +5,7 @@
 }:
 
 let
-  release = builtins.fromJSON (builtins.readFile ./release-info/LanguageMachines-timbl.json);
+  release = lib.importJSON ./release-info/LanguageMachines-timbl.json;
 in
 
 stdenv.mkDerivation {
diff --git a/pkgs/development/libraries/languagemachines/timblserver.nix b/pkgs/development/libraries/languagemachines/timblserver.nix
index 27812e8b3f0..42bc5edb43f 100644
--- a/pkgs/development/libraries/languagemachines/timblserver.nix
+++ b/pkgs/development/libraries/languagemachines/timblserver.nix
@@ -5,7 +5,7 @@
 }:
 
 let
-  release = builtins.fromJSON (builtins.readFile ./release-info/LanguageMachines-timblserver.json);
+  release = lib.importJSON ./release-info/LanguageMachines-timblserver.json;
 in
 
 stdenv.mkDerivation {
diff --git a/pkgs/development/libraries/languagemachines/ucto.nix b/pkgs/development/libraries/languagemachines/ucto.nix
index d8c8d99552c..42985825606 100644
--- a/pkgs/development/libraries/languagemachines/ucto.nix
+++ b/pkgs/development/libraries/languagemachines/ucto.nix
@@ -5,7 +5,7 @@
 }:
 
 let
-  release = builtins.fromJSON (builtins.readFile ./release-info/LanguageMachines-ucto.json);
+  release = lib.importJSON ./release-info/LanguageMachines-ucto.json;
 in
 
 stdenv.mkDerivation {
diff --git a/pkgs/development/libraries/languagemachines/uctodata.nix b/pkgs/development/libraries/languagemachines/uctodata.nix
index cad63622724..7f8d4889c62 100644
--- a/pkgs/development/libraries/languagemachines/uctodata.nix
+++ b/pkgs/development/libraries/languagemachines/uctodata.nix
@@ -3,7 +3,7 @@
  }:
 
 let
-  release = builtins.fromJSON (builtins.readFile ./release-info/LanguageMachines-uctodata.json);
+  release = lib.importJSON ./release-info/LanguageMachines-uctodata.json;
 in
 
 stdenv.mkDerivation {
diff --git a/pkgs/development/mobile/androidenv/compose-android-packages.nix b/pkgs/development/mobile/androidenv/compose-android-packages.nix
index 316c1ba8313..25a19d059f2 100644
--- a/pkgs/development/mobile/androidenv/compose-android-packages.nix
+++ b/pkgs/development/mobile/androidenv/compose-android-packages.nix
@@ -64,9 +64,9 @@ let
                addons = repoXmls.addons or [];
              };
            in
-           builtins.fromJSON (builtins.readFile "${mkRepoJson repoXmlSpec}")
+           lib.importJSON "${mkRepoJson repoXmlSpec}"
          else
-           builtins.fromJSON (builtins.readFile repoJson);
+           lib.importJSON repoJson;
 
   # Converts all 'archives' keys in a repo spec to fetchurl calls.
   fetchArchives = attrSet:
diff --git a/pkgs/development/tools/build-managers/bazel/bazel_0_29/default.nix b/pkgs/development/tools/build-managers/bazel/bazel_0_29/default.nix
index 92bbbd45214..3a3a39b3eee 100644
--- a/pkgs/development/tools/build-managers/bazel/bazel_0_29/default.nix
+++ b/pkgs/development/tools/build-managers/bazel/bazel_0_29/default.nix
@@ -37,7 +37,7 @@ let
   srcDeps = lib.attrsets.attrValues srcDepsSet;
   srcDepsSet =
     let
-      srcs = (builtins.fromJSON (builtins.readFile ./src-deps.json));
+      srcs = lib.importJSON ./src-deps.json;
       toFetchurl = d: lib.attrsets.nameValuePair d.name (fetchurl {
         urls = d.urls;
         sha256 = d.sha256;
diff --git a/pkgs/development/tools/build-managers/bazel/bazel_1/default.nix b/pkgs/development/tools/build-managers/bazel/bazel_1/default.nix
index 5eb0926503c..ee39a7c6f7b 100644
--- a/pkgs/development/tools/build-managers/bazel/bazel_1/default.nix
+++ b/pkgs/development/tools/build-managers/bazel/bazel_1/default.nix
@@ -37,7 +37,7 @@ let
   srcDeps = lib.attrsets.attrValues srcDepsSet;
   srcDepsSet =
     let
-      srcs = (builtins.fromJSON (builtins.readFile ./src-deps.json));
+      srcs = lib.importJSON ./src-deps.json;
       toFetchurl = d: lib.attrsets.nameValuePair d.name (fetchurl {
         urls = d.urls;
         sha256 = d.sha256;
diff --git a/pkgs/development/tools/build-managers/bazel/bazel_3/default.nix b/pkgs/development/tools/build-managers/bazel/bazel_3/default.nix
index fd29102b7e5..1f51fceff3b 100644
--- a/pkgs/development/tools/build-managers/bazel/bazel_3/default.nix
+++ b/pkgs/development/tools/build-managers/bazel/bazel_3/default.nix
@@ -37,7 +37,7 @@ let
   srcDeps = lib.attrsets.attrValues srcDepsSet;
   srcDepsSet =
     let
-      srcs = (builtins.fromJSON (builtins.readFile ./src-deps.json));
+      srcs = lib.importJSON ./src-deps.json;
       toFetchurl = d: lib.attrsets.nameValuePair d.name (fetchurl {
         urls = d.urls;
         sha256 = d.sha256;
diff --git a/pkgs/development/tools/build-managers/bazel/bazel_4/default.nix b/pkgs/development/tools/build-managers/bazel/bazel_4/default.nix
index 47e01c5ad80..36f7ffb8a5d 100644
--- a/pkgs/development/tools/build-managers/bazel/bazel_4/default.nix
+++ b/pkgs/development/tools/build-managers/bazel/bazel_4/default.nix
@@ -40,7 +40,7 @@ let
   srcDeps = lib.attrsets.attrValues srcDepsSet;
   srcDepsSet =
     let
-      srcs = (builtins.fromJSON (builtins.readFile ./src-deps.json));
+      srcs = lib.importJSON ./src-deps.json;
       toFetchurl = d: lib.attrsets.nameValuePair d.name (fetchurl {
         urls = d.urls;
         sha256 = d.sha256;
diff --git a/pkgs/development/tools/parsing/tree-sitter/default.nix b/pkgs/development/tools/parsing/tree-sitter/default.nix
index 0b38d1d8e26..145ee758002 100644
--- a/pkgs/development/tools/parsing/tree-sitter/default.nix
+++ b/pkgs/development/tools/parsing/tree-sitter/default.nix
@@ -51,7 +51,7 @@ let
       mkdir $out
     '' + (lib.concatStrings (lib.mapAttrsToList
       (name: grammar: "ln -s ${fetchGrammar grammar} $out/${name}\n")
-      (import ./grammars))));
+      (import ./grammars { inherit lib; }))));
 
   builtGrammars =
     let
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix b/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix
index aa932987436..a682f806926 100644
--- a/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix
@@ -1,49 +1,51 @@
+{ lib }:
+
 {
-  tree-sitter-agda = (builtins.fromJSON (builtins.readFile ./tree-sitter-agda.json));
-  tree-sitter-bash = (builtins.fromJSON (builtins.readFile ./tree-sitter-bash.json));
-  tree-sitter-c = (builtins.fromJSON (builtins.readFile ./tree-sitter-c.json));
-  tree-sitter-c-sharp = (builtins.fromJSON (builtins.readFile ./tree-sitter-c-sharp.json));
-  tree-sitter-clojure = (builtins.fromJSON (builtins.readFile ./tree-sitter-clojure.json));
-  tree-sitter-comment = (builtins.fromJSON (builtins.readFile ./tree-sitter-comment.json));
-  tree-sitter-cpp = (builtins.fromJSON (builtins.readFile ./tree-sitter-cpp.json));
-  tree-sitter-css = (builtins.fromJSON (builtins.readFile ./tree-sitter-css.json));
-  tree-sitter-dart = (builtins.fromJSON (builtins.readFile ./tree-sitter-dart.json));
-  tree-sitter-dot = (builtins.fromJSON (builtins.readFile ./tree-sitter-dot.json));
-  tree-sitter-elisp = (builtins.fromJSON (builtins.readFile ./tree-sitter-elisp.json));
-  tree-sitter-embedded-template = (builtins.fromJSON (builtins.readFile ./tree-sitter-embedded-template.json));
-  tree-sitter-fennel = (builtins.fromJSON (builtins.readFile ./tree-sitter-fennel.json));
-  tree-sitter-fish = (builtins.fromJSON (builtins.readFile ./tree-sitter-fish.json));
-  tree-sitter-fluent = (builtins.fromJSON (builtins.readFile ./tree-sitter-fluent.json));
-  tree-sitter-go = (builtins.fromJSON (builtins.readFile ./tree-sitter-go.json));
-  tree-sitter-haskell = (builtins.fromJSON (builtins.readFile ./tree-sitter-haskell.json));
-  tree-sitter-html = (builtins.fromJSON (builtins.readFile ./tree-sitter-html.json));
-  tree-sitter-java = (builtins.fromJSON (builtins.readFile ./tree-sitter-java.json));
-  tree-sitter-javascript = (builtins.fromJSON (builtins.readFile ./tree-sitter-javascript.json));
-  tree-sitter-jsdoc = (builtins.fromJSON (builtins.readFile ./tree-sitter-jsdoc.json));
-  tree-sitter-json = (builtins.fromJSON (builtins.readFile ./tree-sitter-json.json));
-  tree-sitter-julia = (builtins.fromJSON (builtins.readFile ./tree-sitter-julia.json));
-  tree-sitter-latex = (builtins.fromJSON (builtins.readFile ./tree-sitter-latex.json));
-  tree-sitter-lua = (builtins.fromJSON (builtins.readFile ./tree-sitter-lua.json));
-  tree-sitter-make = (builtins.fromJSON (builtins.readFile ./tree-sitter-make.json));
-  tree-sitter-markdown = (builtins.fromJSON (builtins.readFile ./tree-sitter-markdown.json));
-  tree-sitter-nix = (builtins.fromJSON (builtins.readFile ./tree-sitter-nix.json));
-  tree-sitter-norg = (builtins.fromJSON (builtins.readFile ./tree-sitter-norg.json));
-  tree-sitter-ocaml = (builtins.fromJSON (builtins.readFile ./tree-sitter-ocaml.json));
-  tree-sitter-php = (builtins.fromJSON (builtins.readFile ./tree-sitter-php.json));
-  tree-sitter-python = (builtins.fromJSON (builtins.readFile ./tree-sitter-python.json));
-  tree-sitter-ql = (builtins.fromJSON (builtins.readFile ./tree-sitter-ql.json));
-  tree-sitter-regex = (builtins.fromJSON (builtins.readFile ./tree-sitter-regex.json));
-  tree-sitter-rst = (builtins.fromJSON (builtins.readFile ./tree-sitter-rst.json));
-  tree-sitter-ruby = (builtins.fromJSON (builtins.readFile ./tree-sitter-ruby.json));
-  tree-sitter-rust = (builtins.fromJSON (builtins.readFile ./tree-sitter-rust.json));
-  tree-sitter-scala = (builtins.fromJSON (builtins.readFile ./tree-sitter-scala.json));
-  tree-sitter-svelte = (builtins.fromJSON (builtins.readFile ./tree-sitter-svelte.json));
-  tree-sitter-swift = (builtins.fromJSON (builtins.readFile ./tree-sitter-swift.json));
-  tree-sitter-toml = (builtins.fromJSON (builtins.readFile ./tree-sitter-toml.json));
-  tree-sitter-tsq = (builtins.fromJSON (builtins.readFile ./tree-sitter-tsq.json));
-  tree-sitter-typescript = (builtins.fromJSON (builtins.readFile ./tree-sitter-typescript.json));
-  tree-sitter-verilog = (builtins.fromJSON (builtins.readFile ./tree-sitter-verilog.json));
-  tree-sitter-vim = (builtins.fromJSON (builtins.readFile ./tree-sitter-vim.json));
-  tree-sitter-yaml = (builtins.fromJSON (builtins.readFile ./tree-sitter-yaml.json));
-  tree-sitter-zig = (builtins.fromJSON (builtins.readFile ./tree-sitter-zig.json));
+  tree-sitter-agda = lib.importJSON ./tree-sitter-agda.json;
+  tree-sitter-bash = lib.importJSON ./tree-sitter-bash.json;
+  tree-sitter-c = lib.importJSON ./tree-sitter-c.json;
+  tree-sitter-c-sharp = lib.importJSON ./tree-sitter-c-sharp.json;
+  tree-sitter-clojure = lib.importJSON ./tree-sitter-clojure.json;
+  tree-sitter-comment = lib.importJSON ./tree-sitter-comment.json;
+  tree-sitter-cpp = lib.importJSON ./tree-sitter-cpp.json;
+  tree-sitter-css = lib.importJSON ./tree-sitter-css.json;
+  tree-sitter-dart = lib.importJSON ./tree-sitter-dart.json;
+  tree-sitter-dot = lib.importJSON ./tree-sitter-dot.json;
+  tree-sitter-elisp = lib.importJSON ./tree-sitter-elisp.json;
+  tree-sitter-embedded-template = lib.importJSON ./tree-sitter-embedded-template.json;
+  tree-sitter-fennel = lib.importJSON ./tree-sitter-fennel.json;
+  tree-sitter-fish = lib.importJSON ./tree-sitter-fish.json;
+  tree-sitter-fluent = lib.importJSON ./tree-sitter-fluent.json;
+  tree-sitter-go = lib.importJSON ./tree-sitter-go.json;
+  tree-sitter-haskell = lib.importJSON ./tree-sitter-haskell.json;
+  tree-sitter-html = lib.importJSON ./tree-sitter-html.json;
+  tree-sitter-java = lib.importJSON ./tree-sitter-java.json;
+  tree-sitter-javascript = lib.importJSON ./tree-sitter-javascript.json;
+  tree-sitter-jsdoc = lib.importJSON ./tree-sitter-jsdoc.json;
+  tree-sitter-json = lib.importJSON ./tree-sitter-json.json;
+  tree-sitter-julia = lib.importJSON ./tree-sitter-julia.json;
+  tree-sitter-latex = lib.importJSON ./tree-sitter-latex.json;
+  tree-sitter-lua = lib.importJSON ./tree-sitter-lua.json;
+  tree-sitter-make = lib.importJSON ./tree-sitter-make.json;
+  tree-sitter-markdown = lib.importJSON ./tree-sitter-markdown.json;
+  tree-sitter-nix = lib.importJSON ./tree-sitter-nix.json;
+  tree-sitter-norg = lib.importJSON ./tree-sitter-norg.json;
+  tree-sitter-ocaml = lib.importJSON ./tree-sitter-ocaml.json;
+  tree-sitter-php = lib.importJSON ./tree-sitter-php.json;
+  tree-sitter-python = lib.importJSON ./tree-sitter-python.json;
+  tree-sitter-ql = lib.importJSON ./tree-sitter-ql.json;
+  tree-sitter-regex = lib.importJSON ./tree-sitter-regex.json;
+  tree-sitter-rst = lib.importJSON ./tree-sitter-rst.json;
+  tree-sitter-ruby = lib.importJSON ./tree-sitter-ruby.json;
+  tree-sitter-rust = lib.importJSON ./tree-sitter-rust.json;
+  tree-sitter-scala = lib.importJSON ./tree-sitter-scala.json;
+  tree-sitter-svelte = lib.importJSON ./tree-sitter-svelte.json;
+  tree-sitter-swift = lib.importJSON ./tree-sitter-swift.json;
+  tree-sitter-toml = lib.importJSON ./tree-sitter-toml.json;
+  tree-sitter-tsq = lib.importJSON ./tree-sitter-tsq.json;
+  tree-sitter-typescript = lib.importJSON ./tree-sitter-typescript.json;
+  tree-sitter-verilog = lib.importJSON ./tree-sitter-verilog.json;
+  tree-sitter-vim = lib.importJSON ./tree-sitter-vim.json;
+  tree-sitter-yaml = lib.importJSON ./tree-sitter-yaml.json;
+  tree-sitter-zig = lib.importJSON ./tree-sitter-zig.json;
 }
diff --git a/pkgs/development/tools/parsing/tree-sitter/update.nix b/pkgs/development/tools/parsing/tree-sitter/update.nix
index bb1736b3ce7..5ebd08dca02 100644
--- a/pkgs/development/tools/parsing/tree-sitter/update.nix
+++ b/pkgs/development/tools/parsing/tree-sitter/update.nix
@@ -261,7 +261,7 @@ let
       ${foreachSh allGrammars
         ({name, ...}: ''
            # indentation hack
-             printf "  %s = (builtins.fromJSON (builtins.readFile ./%s.json));\n" "${name}" "${name}"'')}
+             printf "  %s = lib.importJSON ./%s.json;\n" "${name}" "${name}"'')}
       echo "}" ) \
       > "$outputDir/default.nix"
   '';
diff --git a/pkgs/development/web/netlify-cli/default.nix b/pkgs/development/web/netlify-cli/default.nix
index f16cce4c151..6c3e8dd4e86 100644
--- a/pkgs/development/web/netlify-cli/default.nix
+++ b/pkgs/development/web/netlify-cli/default.nix
@@ -6,7 +6,7 @@ in
     preRebuild = ''
       export ESBUILD_BINARY_PATH="${pkgs.esbuild_netlify}/bin/esbuild"
     '';
-    src = fetchFromGitHub (builtins.fromJSON (builtins.readFile ./netlify-cli.json));
+    src = fetchFromGitHub (lib.importJSON ./netlify-cli.json);
     bypassCache = true;
     reconstructLock = true;
     passthru.tests.test = callPackage ./test.nix { };
diff --git a/pkgs/development/web/netlify-cli/generate.sh b/pkgs/development/web/netlify-cli/generate.sh
index 41858cd9809..5d12fde8689 100755
--- a/pkgs/development/web/netlify-cli/generate.sh
+++ b/pkgs/development/web/netlify-cli/generate.sh
@@ -2,7 +2,7 @@
 set -eu -o pipefail
 cd "$( dirname "${BASH_SOURCE[0]}" )"
 rm -f ./node-env.nix
-src="$(nix-build --expr '(import ../../../.. {}).fetchFromGitHub (builtins.fromJSON (builtins.readFile ./netlify-cli.json))')"
+src="$(nix-build --expr '(import ../../../.. {}).fetchFromGitHub (lib.importJSON ./netlify-cli.json)')"
 echo $src
 node2nix \
   --input $src/package.json \
diff --git a/pkgs/games/dwarf-fortress/default.nix b/pkgs/games/dwarf-fortress/default.nix
index 7fd3dc61dd4..4f9688c844f 100644
--- a/pkgs/games/dwarf-fortress/default.nix
+++ b/pkgs/games/dwarf-fortress/default.nix
@@ -95,7 +95,7 @@ let
     (lib.attrNames self.df-hashes));
 
   self = rec {
-    df-hashes = builtins.fromJSON (builtins.readFile ./game.json);
+    df-hashes = lib.importJSON ./game.json;
 
     # Aliases for the latest Dwarf Fortress and the selected Therapist install
     dwarf-fortress = getAttr (versionToName latestVersion) df-games;
diff --git a/pkgs/misc/vim-plugins/aliases.nix b/pkgs/misc/vim-plugins/aliases.nix
index b880c15d790..8f3308a122b 100644
--- a/pkgs/misc/vim-plugins/aliases.nix
+++ b/pkgs/misc/vim-plugins/aliases.nix
@@ -32,7 +32,7 @@ let
 
   deprecations = lib.mapAttrs (old: info:
     throw "${old} was renamed to ${info.new} on ${info.date}. Please update to ${info.new}."
-  ) (builtins.fromJSON (builtins.readFile ./deprecated.json));
+  ) (lib.importJSON ./deprecated.json);
 
 in
 mapAliases (with prev; {
diff --git a/pkgs/misc/vscode-extensions/ms-dotnettools-csharp/default.nix b/pkgs/misc/vscode-extensions/ms-dotnettools-csharp/default.nix
index 8683da040d7..393ea0f4450 100644
--- a/pkgs/misc/vscode-extensions/ms-dotnettools-csharp/default.nix
+++ b/pkgs/misc/vscode-extensions/ms-dotnettools-csharp/default.nix
@@ -13,7 +13,7 @@
 let
   # Get as close as possible as the `package.json` required version.
   # This is what drives omnisharp.
-  rtDepsSrcsFromJson = builtins.fromJSON (builtins.readFile ./rt-deps-bin-srcs.json);
+  rtDepsSrcsFromJson = lib.importJSON ./rt-deps-bin-srcs.json;
 
   rtDepsBinSrcs = builtins.mapAttrs (k: v:
       let
diff --git a/pkgs/os-specific/linux/kernel/patches.nix b/pkgs/os-specific/linux/kernel/patches.nix
index b818ddc5f2a..f64a0a0ef15 100644
--- a/pkgs/os-specific/linux/kernel/patches.nix
+++ b/pkgs/os-specific/linux/kernel/patches.nix
@@ -53,7 +53,7 @@
       extra = src.extra;
       inherit version sha256;
     };
-    patches = builtins.fromJSON (builtins.readFile ./hardened/patches.json);
+    patches = lib.importJSON ./hardened/patches.json;
   in lib.mapAttrs mkPatch patches;
 
   # https://bugzilla.kernel.org/show_bug.cgi?id=197591#c6
diff --git a/pkgs/servers/asterisk/default.nix b/pkgs/servers/asterisk/default.nix
index e8912f4b537..dddc7f42d88 100644
--- a/pkgs/servers/asterisk/default.nix
+++ b/pkgs/servers/asterisk/default.nix
@@ -97,7 +97,7 @@ let
       "externals_cache/pjproject-2.10.tar.bz2" = pjproject_2_10;
       "addons/mp3" = mp3-202;
     };
-  }) (builtins.fromJSON (builtins.readFile ./versions.json));
+  }) (lib.importJSON ./versions.json);
 
 in {
   # Supported releases (as of 2020-10-26).
diff --git a/pkgs/servers/web-apps/hedgedoc/default.nix b/pkgs/servers/web-apps/hedgedoc/default.nix
index 0d9ac5d192d..62fa819fb8a 100644
--- a/pkgs/servers/web-apps/hedgedoc/default.nix
+++ b/pkgs/servers/web-apps/hedgedoc/default.nix
@@ -13,7 +13,7 @@
 }:
 
 let
-  pinData = (builtins.fromJSON (builtins.readFile ./pin.json));
+  pinData = lib.importJSON ./pin.json;
 
   # we need a different version than the one already available in nixpkgs
   esbuild-hedgedoc = buildGoModule rec {
diff --git a/pkgs/tools/networking/ngrok-2/default.nix b/pkgs/tools/networking/ngrok-2/default.nix
index 2840b9d8400..f1f8545c96d 100644
--- a/pkgs/tools/networking/ngrok-2/default.nix
+++ b/pkgs/tools/networking/ngrok-2/default.nix
@@ -2,7 +2,7 @@
 
 with lib;
 
-let versions = builtins.fromJSON (builtins.readFile ./versions.json);
+let versions = lib.importJSON ./versions.json;
     arch = if stdenv.isi686 then "386"
            else if stdenv.isx86_64 then "amd64"
            else if stdenv.isAarch32 then "arm"
diff --git a/pkgs/tools/security/enpass/default.nix b/pkgs/tools/security/enpass/default.nix
index 63f25bc12ef..7cbbaee4582 100644
--- a/pkgs/tools/security/enpass/default.nix
+++ b/pkgs/tools/security/enpass/default.nix
@@ -6,7 +6,7 @@
 }:
 
 let
-  all_data = builtins.fromJSON (builtins.readFile ./data.json);
+  all_data = lib.importJSON ./data.json;
   system_map = {
     # i686-linux = "i386"; Uncomment if enpass 6 becomes available on i386
     x86_64-linux = "amd64";
diff --git a/pkgs/tools/security/onlykey/default.nix b/pkgs/tools/security/onlykey/default.nix
index 4cad7e513ac..312f580c023 100644
--- a/pkgs/tools/security/onlykey/default.nix
+++ b/pkgs/tools/security/onlykey/default.nix
@@ -12,7 +12,7 @@ let
   # parse the version from package.json
   version =
     let
-      packageJson = builtins.fromJSON (builtins.readFile ./package.json);
+      packageJson = lib.importJSON ./package.json;
       splits = builtins.split "^.*#v(.*)$" (builtins.getAttr "onlykey" (builtins.head packageJson));
       matches = builtins.elemAt splits 1;
       elem = builtins.head matches;
diff --git a/pkgs/tools/text/chroma/default.nix b/pkgs/tools/text/chroma/default.nix
index f99c090eb97..42784d65a73 100644
--- a/pkgs/tools/text/chroma/default.nix
+++ b/pkgs/tools/text/chroma/default.nix
@@ -1,7 +1,7 @@
 { lib, buildGoModule, fetchFromGitHub }:
 
 let
-  srcInfo = builtins.fromJSON (builtins.readFile ./src.json);
+  srcInfo = lib.importJSON ./src.json;
 in
 
 buildGoModule rec {
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index b7caf86fe49..ff41cc28023 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -11159,8 +11159,8 @@ with pkgs;
     jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
   };
 
-  adoptopenjdk-bin-16-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk16-linux.nix;
-  adoptopenjdk-bin-16-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk16-darwin.nix;
+  adoptopenjdk-bin-16-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk16-linux.nix { inherit lib; };
+  adoptopenjdk-bin-16-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk16-darwin.nix { inherit lib; };
 
   adoptopenjdk-hotspot-bin-16 = if stdenv.isLinux
     then callPackage adoptopenjdk-bin-16-packages-linux.jdk-hotspot {}
@@ -11177,8 +11177,8 @@ with pkgs;
     then callPackage adoptopenjdk-bin-16-packages-linux.jre-openj9 {}
     else callPackage adoptopenjdk-bin-16-packages-darwin.jre-openj9 {};
 
-  adoptopenjdk-bin-15-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk15-linux.nix;
-  adoptopenjdk-bin-15-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk15-darwin.nix;
+  adoptopenjdk-bin-15-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk15-linux.nix { inherit lib; };
+  adoptopenjdk-bin-15-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk15-darwin.nix { inherit lib; };
 
   adoptopenjdk-hotspot-bin-15 = if stdenv.isLinux
     then callPackage adoptopenjdk-bin-15-packages-linux.jdk-hotspot {}
@@ -11195,8 +11195,8 @@ with pkgs;
     then callPackage adoptopenjdk-bin-15-packages-linux.jre-openj9 {}
     else callPackage adoptopenjdk-bin-15-packages-darwin.jre-openj9 {};
 
-  adoptopenjdk-bin-14-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk14-linux.nix;
-  adoptopenjdk-bin-14-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk14-darwin.nix;
+  adoptopenjdk-bin-14-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk14-linux.nix { inherit lib; };
+  adoptopenjdk-bin-14-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk14-darwin.nix { inherit lib; };
 
   adoptopenjdk-hotspot-bin-14 = if stdenv.isLinux
     then callPackage adoptopenjdk-bin-14-packages-linux.jdk-hotspot {}
@@ -11213,8 +11213,8 @@ with pkgs;
     then callPackage adoptopenjdk-bin-14-packages-linux.jre-openj9 {}
     else callPackage adoptopenjdk-bin-14-packages-darwin.jre-openj9 {};
 
-  adoptopenjdk-bin-13-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk13-linux.nix;
-  adoptopenjdk-bin-13-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk13-darwin.nix;
+  adoptopenjdk-bin-13-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk13-linux.nix { inherit lib; };
+  adoptopenjdk-bin-13-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk13-darwin.nix { inherit lib; };
 
   adoptopenjdk-hotspot-bin-13 = if stdenv.isLinux
     then callPackage adoptopenjdk-bin-13-packages-linux.jdk-hotspot {}
@@ -11231,8 +11231,8 @@ with pkgs;
     then callPackage adoptopenjdk-bin-13-packages-linux.jre-openj9 {}
     else callPackage adoptopenjdk-bin-13-packages-darwin.jre-openj9 {};
 
-  adoptopenjdk-bin-11-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk11-linux.nix;
-  adoptopenjdk-bin-11-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk11-darwin.nix;
+  adoptopenjdk-bin-11-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk11-linux.nix { inherit lib; };
+  adoptopenjdk-bin-11-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk11-darwin.nix { inherit lib; };
 
   adoptopenjdk-hotspot-bin-11 = if stdenv.isLinux
     then callPackage adoptopenjdk-bin-11-packages-linux.jdk-hotspot {}
@@ -11249,8 +11249,8 @@ with pkgs;
     then callPackage adoptopenjdk-bin-11-packages-linux.jre-openj9 {}
     else callPackage adoptopenjdk-bin-11-packages-darwin.jre-openj9 {};
 
-  adoptopenjdk-bin-8-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk8-linux.nix;
-  adoptopenjdk-bin-8-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk8-darwin.nix;
+  adoptopenjdk-bin-8-packages-linux = import ../development/compilers/adoptopenjdk-bin/jdk8-linux.nix { inherit lib; };
+  adoptopenjdk-bin-8-packages-darwin = import ../development/compilers/adoptopenjdk-bin/jdk8-darwin.nix { inherit lib; };
 
   adoptopenjdk-hotspot-bin-8 = if stdenv.isLinux
     then callPackage adoptopenjdk-bin-8-packages-linux.jdk-hotspot {}