From 346a1b0ec608b1c926b2e8d5a959c60b04656358 Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Thu, 6 Aug 2020 19:21:53 +0200 Subject: nixos/hercules-ci-agent: init --- .../hercules-ci-agent/common.nix | 213 +++++++++++++++++++++ 1 file changed, 213 insertions(+) create mode 100644 nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix (limited to 'nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix') diff --git a/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix b/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix new file mode 100644 index 00000000000..4aed493c0fb --- /dev/null +++ b/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix @@ -0,0 +1,213 @@ +/* + +This file is for options that NixOS and nix-darwin have in common. + +Platform-specific code is in the respective default.nix files. + + */ + +{ config, lib, options, pkgs, ... }: + +let + inherit (lib) mkOption mkIf types filterAttrs literalExample mkRenamedOptionModule; + + cfg = + config.services.hercules-ci-agent; + + format = pkgs.formats.toml {}; + + settingsModule = { config, ... }: { + freeformType = format.type; + options = { + baseDirectory = mkOption { + type = types.path; + default = "/var/lib/hercules-ci-agent"; + description = '' + State directory (secrets, work directory, etc) for agent + ''; + }; + concurrentTasks = mkOption { + description = '' + Number of tasks to perform simultaneously, such as evaluations, derivations. + + You must have a total capacity across agents of at least 2 concurrent tasks on x86_64-linux + to allow for import from derivation. + ''; + type = types.int; + default = 4; + }; + workDirectory = mkOption { + description = '' + The directory in which temporary subdirectories are created for task state. This includes sources for Nix evaluation. + ''; + type = types.path; + default = config.baseDirectory + "/work"; + defaultText = literalExample ''baseDirectory + "/work"''; + }; + staticSecretsDirectory = mkOption { + description = '' + This is the default directory to look for statically configured secrets like cluster-join-token.key. + ''; + type = types.path; + default = config.baseDirectory + "/secrets"; + defaultText = literalExample ''baseDirectory + "/secrets"''; + }; + clusterJoinTokenPath = mkOption { + description = '' + Location of the cluster-join-token.key file. + ''; + type = types.path; + default = config.staticSecretsDirectory + "/cluster-join-token.key"; + defaultText = literalExample ''staticSecretsDirectory + "/cluster-join-token.key"''; + # internal: It's a bit too detailed to show by default in the docs, + # but useful to define explicitly to allow reuse by other modules. + internal = true; + }; + binaryCachesPath = mkOption { + description = '' + Location of the binary-caches.json file. + ''; + type = types.path; + default = config.staticSecretsDirectory + "/binary-caches.json"; + defaultText = literalExample ''staticSecretsDirectory + "/binary-caches.json"''; + # internal: It's a bit too detailed to show by default in the docs, + # but useful to define explicitly to allow reuse by other modules. + internal = true; + }; + }; + }; + + checkNix = + if !cfg.checkNix + then "" + else if lib.versionAtLeast config.nix.package.version "2.4.0" + then "" + else pkgs.stdenv.mkDerivation { + name = "hercules-ci-check-system-nix-src"; + inherit (config.nix.package) src patches; + configurePhase = ":"; + buildPhase = '' + echo "Checking in-memory pathInfoCache expiry" + if ! grep 'struct PathInfoCacheValue' src/libstore/store-api.hh >/dev/null; then + cat 1>&2 <Hercules CI is a + continuous integation service that is centered around Nix. + + Support is available at help@hercules-ci.com. + ''; + }; + patchNix = mkOption { + type = types.bool; + default = false; + description = '' + Fix Nix 2.3 cache path metadata caching behavior. Has the effect of nix.package = patch pkgs.nix; + + This option will be removed when Hercules CI Agent moves to Nix 2.4 (upcoming Nix release). + ''; + }; + checkNix = mkOption { + type = types.bool; + default = true; + description = '' + Whether to make sure that the system's Nix (nix-daemon) is compatible. + + If you set this to false, please keep up with the change log. + ''; + }; + package = mkOption { + description = '' + Package containing the bin/hercules-ci-agent executable. + ''; + type = types.package; + default = pkgs.hercules-ci-agent; + defaultText = literalExample "pkgs.hercules-ci-agent"; + }; + settings = mkOption { + description = '' + These settings are written to the agent.toml file. + + Not all settings are listed as options, can be set nonetheless. + + For the exhaustive list of settings, see . + ''; + type = types.submoduleWith { modules = [ settingsModule ]; }; + }; + + /* + Internal and/or computed values. + + These are written as options instead of let binding to allow sharing with + default.nix on both NixOS and nix-darwin. + */ + tomlFile = mkOption { + type = types.path; + internal = true; + defaultText = "generated hercules-ci-agent.toml"; + description = '' + The fully assembled config file. + ''; + }; + }; + + config = mkIf cfg.enable { + nix.extraOptions = lib.addContextFrom checkNix '' + # A store path that was missing at first may well have finished building, + # even shortly after the previous lookup. This *also* applies to the daemon. + narinfo-cache-negative-ttl = 0 + ''; + nix.package = mkIf cfg.patchNix patchedNix; + services.hercules-ci-agent.tomlFile = + format.generate "hercules-ci-agent.toml" cfg.settings; + }; +} -- cgit 1.4.1 From c808983caa4c6afbece8b9699a723676dc7e0689 Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Sat, 6 Feb 2021 15:35:42 +0100 Subject: nixos/hercules-ci-agent: Remove patchNix --- .../hercules-ci-agent/common.nix | 55 ++++++---------------- 1 file changed, 15 insertions(+), 40 deletions(-) (limited to 'nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix') diff --git a/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix b/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix index 4aed493c0fb..24884655c66 100644 --- a/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix +++ b/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix @@ -9,7 +9,15 @@ Platform-specific code is in the respective default.nix files. { config, lib, options, pkgs, ... }: let - inherit (lib) mkOption mkIf types filterAttrs literalExample mkRenamedOptionModule; + inherit (lib) + filterAttrs + literalExample + mkIf + mkOption + mkRemovedOptionModule + mkRenamedOptionModule + types + ; cfg = config.services.hercules-ci-agent; @@ -77,10 +85,11 @@ let }; }; + # TODO (2022) remove checkNix = if !cfg.checkNix then "" - else if lib.versionAtLeast config.nix.package.version "2.4.0" + else if lib.versionAtLeast config.nix.package.version "2.3.10" then "" else pkgs.stdenv.mkDerivation { name = "hercules-ci-check-system-nix-src"; @@ -88,23 +97,12 @@ let configurePhase = ":"; buildPhase = '' echo "Checking in-memory pathInfoCache expiry" - if ! grep 'struct PathInfoCacheValue' src/libstore/store-api.hh >/dev/null; then + if ! grep 'PathInfoCacheValue' src/libstore/store-api.hh >/dev/null; then cat 1>&2 <help@hercules-ci.com. ''; }; - patchNix = mkOption { - type = types.bool; - default = false; - description = '' - Fix Nix 2.3 cache path metadata caching behavior. Has the effect of nix.package = patch pkgs.nix; - - This option will be removed when Hercules CI Agent moves to Nix 2.4 (upcoming Nix release). - ''; - }; checkNix = mkOption { type = types.bool; default = true; @@ -206,7 +182,6 @@ in # even shortly after the previous lookup. This *also* applies to the daemon. narinfo-cache-negative-ttl = 0 ''; - nix.package = mkIf cfg.patchNix patchedNix; services.hercules-ci-agent.tomlFile = format.generate "hercules-ci-agent.toml" cfg.settings; }; -- cgit 1.4.1 From fbabab7b169dbe5ae9656b6e681b27d4af70931e Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Wed, 10 Feb 2021 09:49:21 +0100 Subject: nixos/hercules-ci-agent: Format with nixpkgs-fmt --- .../hercules-ci-agent/common.nix | 48 +++++++++++----------- .../hercules-ci-agent/default.nix | 6 +-- 2 files changed, 26 insertions(+), 28 deletions(-) (limited to 'nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix') diff --git a/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix b/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix index 24884655c66..522d4ddac31 100644 --- a/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix +++ b/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix @@ -7,7 +7,6 @@ Platform-specific code is in the respective default.nix files. */ { config, lib, options, pkgs, ... }: - let inherit (lib) filterAttrs @@ -22,7 +21,7 @@ let cfg = config.services.hercules-ci-agent; - format = pkgs.formats.toml {}; + format = pkgs.formats.toml { }; settingsModule = { config, ... }: { freeformType = format.type; @@ -91,32 +90,33 @@ let then "" else if lib.versionAtLeast config.nix.package.version "2.3.10" then "" - else pkgs.stdenv.mkDerivation { - name = "hercules-ci-check-system-nix-src"; - inherit (config.nix.package) src patches; - configurePhase = ":"; - buildPhase = '' - echo "Checking in-memory pathInfoCache expiry" - if ! grep 'PathInfoCacheValue' src/libstore/store-api.hh >/dev/null; then - cat 1>&2 </dev/null; then + cat 1>&2 < Date: Wed, 10 Feb 2021 09:49:57 +0100 Subject: nixos/hercules-ci-agent: Improve concurrentTasks option doc --- .../continuous-integration/hercules-ci-agent/common.nix | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix') diff --git a/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix b/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix index 522d4ddac31..3df057b1027 100644 --- a/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix +++ b/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix @@ -35,10 +35,14 @@ let }; concurrentTasks = mkOption { description = '' - Number of tasks to perform simultaneously, such as evaluations, derivations. + Number of tasks to perform simultaneously. - You must have a total capacity across agents of at least 2 concurrent tasks on x86_64-linux - to allow for import from derivation. + A task is a single derivation build or an evaluation. + At minimum, you need 2 concurrent tasks for x86_64-linux + in your cluster, to allow for import from derivation. + + concurrentTasks can be around the CPU core count or lower if memory is + the bottleneck. ''; type = types.int; default = 4; -- cgit 1.4.1 From 696294ea9fdd23278d05d146e52bcfcd9e9723fd Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Wed, 10 Feb 2021 10:36:00 +0100 Subject: Improve todo --- .../services/continuous-integration/hercules-ci-agent/common.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix') diff --git a/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix b/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix index 3df057b1027..9f9b86ee61c 100644 --- a/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix +++ b/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix @@ -88,7 +88,7 @@ let }; }; - # TODO (2022) remove + # TODO (roberth, >=2022) remove checkNix = if !cfg.checkNix then "" -- cgit 1.4.1 From 4abd56732e78a1aacf800ef6d77036326b7861b5 Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Tue, 4 May 2021 16:28:31 +0200 Subject: nixos/hercules-ci-agent: Set default concurrency to auto --- .../continuous-integration/hercules-ci-agent/common.nix | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix') diff --git a/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix b/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix index 9f9b86ee61c..c6f743a71d4 100644 --- a/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix +++ b/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix @@ -37,15 +37,22 @@ let description = '' Number of tasks to perform simultaneously. - A task is a single derivation build or an evaluation. + A task is a single derivation build, an evaluation or an effect run. At minimum, you need 2 concurrent tasks for x86_64-linux in your cluster, to allow for import from derivation. concurrentTasks can be around the CPU core count or lower if memory is the bottleneck. + + The optimal value depends on the resource consumption characteristics of your workload, + including memory usage and in-task parallelism. This is typically determined empirically. + + When scaling, it is generally better to have a double-size machine than two machines, + because each split of resources causes inefficiencies; particularly with regards + to build latency because of extra downloads. ''; - type = types.int; - default = 4; + type = types.either types.ints.positive (types.enum [ "auto" ]); + default = "auto"; }; workDirectory = mkOption { description = '' -- cgit 1.4.1 From 519a435b08992188861e589948246679ad1319a9 Mon Sep 17 00:00:00 2001 From: Robert Hensing Date: Tue, 4 May 2021 16:29:05 +0200 Subject: nixos/hercules-ci-agent: Set default labels --- .../hercules-ci-agent/common.nix | 15 +++++++++++++-- .../hercules-ci-agent/default.nix | 18 +++++++++++++++++- 2 files changed, 30 insertions(+), 3 deletions(-) (limited to 'nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix') diff --git a/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix b/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix index c6f743a71d4..2f0b573e872 100644 --- a/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix +++ b/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix @@ -193,7 +193,18 @@ in # even shortly after the previous lookup. This *also* applies to the daemon. narinfo-cache-negative-ttl = 0 ''; - services.hercules-ci-agent.tomlFile = - format.generate "hercules-ci-agent.toml" cfg.settings; + services.hercules-ci-agent = { + tomlFile = + format.generate "hercules-ci-agent.toml" cfg.settings; + + settings.labels = { + agent.source = + if options.services.hercules-ci-agent.package.highestPrio == (lib.modules.mkOptionDefault { }).priority + then "nixpkgs" + else lib.mkOptionDefault "override"; + pkgs.version = pkgs.lib.version; + lib.version = lib.version; + }; + }; }; } diff --git a/nixos/modules/services/continuous-integration/hercules-ci-agent/default.nix b/nixos/modules/services/continuous-integration/hercules-ci-agent/default.nix index e8a42e59de0..06c174e7d37 100644 --- a/nixos/modules/services/continuous-integration/hercules-ci-agent/default.nix +++ b/nixos/modules/services/continuous-integration/hercules-ci-agent/default.nix @@ -68,7 +68,23 @@ in # Trusted user allows simplified configuration and better performance # when operating in a cluster. nix.trustedUsers = [ config.systemd.services.hercules-ci-agent.serviceConfig.User ]; - services.hercules-ci-agent.settings.nixUserIsTrusted = true; + services.hercules-ci-agent = { + settings = { + nixUserIsTrusted = true; + labels = + let + mkIfNotNull = x: mkIf (x != null) x; + in + { + nixos.configurationRevision = mkIfNotNull config.system.configurationRevision; + nixos.release = config.system.nixos.release; + nixos.label = mkIfNotNull config.system.nixos.label; + nixos.codeName = config.system.nixos.codeName; + nixos.tags = config.system.nixos.tags; + nixos.systemName = mkIfNotNull config.system.name; + }; + }; + }; users.users.hercules-ci-agent = { home = cfg.settings.baseDirectory; -- cgit 1.4.1 From d5bd34ebf2c2c2b380b76cb86bc68522bc6af4d7 Mon Sep 17 00:00:00 2001 From: Sandro Date: Sun, 18 Jul 2021 23:42:48 +0200 Subject: treewide: convert phases that contain ":" to dont* = true (#130500) --- .../services/continuous-integration/hercules-ci-agent/common.nix | 2 +- .../services/hardware/sane_extra_backends/brscan4_etc_files.nix | 3 +-- pkgs/applications/editors/emacs/elisp-packages/cedille/default.nix | 2 +- pkgs/applications/editors/kakoune/plugins/build-kakoune-plugin.nix | 4 ++-- pkgs/applications/misc/thinking-rock/default.nix | 2 +- pkgs/applications/science/biology/macse/default.nix | 2 +- pkgs/applications/video/vdr/plugins.nix | 2 +- pkgs/development/compilers/apache-flex-sdk/default.nix | 4 ++-- .../libraries/nanopb/test-message-with-annotations/default.nix | 2 +- .../libraries/nanopb/test-message-with-options/default.nix | 2 +- pkgs/development/libraries/nanopb/test-simple-proto2/default.nix | 2 +- pkgs/development/libraries/nanopb/test-simple-proto3/default.nix | 2 +- pkgs/development/python-modules/pytest-astropy/default.nix | 2 +- pkgs/development/ruby-modules/with-packages/default.nix | 2 +- pkgs/development/tools/misc/gede/default.nix | 2 +- pkgs/development/tools/parsing/tree-sitter/grammar.nix | 3 ++- pkgs/development/web/now-cli/default.nix | 2 +- pkgs/misc/apulse/pressureaudio.nix | 3 +-- pkgs/os-specific/linux/wooting-udev-rules/default.nix | 2 +- pkgs/servers/dict/dictd-db.nix | 2 +- pkgs/servers/foundationdb/vsmake.nix | 2 +- pkgs/servers/sql/postgresql/ext/pgjwt.nix | 2 +- pkgs/tools/backup/ori/default.nix | 2 +- pkgs/tools/misc/sweep-visualizer/default.nix | 2 +- pkgs/tools/misc/zsh-autoenv/default.nix | 2 +- pkgs/tools/system/uefitool/common.nix | 6 ++++-- pkgs/tools/typesetting/tex/texlive/bin.nix | 2 +- 27 files changed, 33 insertions(+), 32 deletions(-) (limited to 'nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix') diff --git a/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix b/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix index 2f0b573e872..70d85a97f3b 100644 --- a/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix +++ b/nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix @@ -105,7 +105,7 @@ let pkgs.stdenv.mkDerivation { name = "hercules-ci-check-system-nix-src"; inherit (config.nix.package) src patches; - configurePhase = ":"; + dontConfigure = true; buildPhase = '' echo "Checking in-memory pathInfoCache expiry" if ! grep 'PathInfoCacheValue' src/libstore/store-api.hh >/dev/null; then diff --git a/nixos/modules/services/hardware/sane_extra_backends/brscan4_etc_files.nix b/nixos/modules/services/hardware/sane_extra_backends/brscan4_etc_files.nix index 556f6bbb419..9d083a615a2 100644 --- a/nixos/modules/services/hardware/sane_extra_backends/brscan4_etc_files.nix +++ b/nixos/modules/services/hardware/sane_extra_backends/brscan4_etc_files.nix @@ -54,8 +54,7 @@ stdenv.mkDerivation { ${addAllNetDev netDevices} ''; - installPhase = ":"; - + dontInstall = true; dontStrip = true; dontPatchELF = true; diff --git a/pkgs/applications/editors/emacs/elisp-packages/cedille/default.nix b/pkgs/applications/editors/emacs/elisp-packages/cedille/default.nix index 3af53cda492..f03aa92c3af 100644 --- a/pkgs/applications/editors/emacs/elisp-packages/cedille/default.nix +++ b/pkgs/applications/editors/emacs/elisp-packages/cedille/default.nix @@ -8,7 +8,7 @@ stdenv.mkDerivation { buildInputs = [ emacs ]; - buildPhase = ":"; + dontBuild = true; installPhase = '' install -d $out/share/emacs/site-lisp diff --git a/pkgs/applications/editors/kakoune/plugins/build-kakoune-plugin.nix b/pkgs/applications/editors/kakoune/plugins/build-kakoune-plugin.nix index f35a175312c..196a1d122d6 100644 --- a/pkgs/applications/editors/kakoune/plugins/build-kakoune-plugin.nix +++ b/pkgs/applications/editors/kakoune/plugins/build-kakoune-plugin.nix @@ -27,7 +27,7 @@ rec { }); buildKakounePluginFrom2Nix = attrs: buildKakounePlugin ({ - buildPhase = ":"; - configurePhase = ":"; + dontBuild = true; + dontConfigure = true; } // attrs); } diff --git a/pkgs/applications/misc/thinking-rock/default.nix b/pkgs/applications/misc/thinking-rock/default.nix index a26d3cc2eb4..bf53848b5d3 100644 --- a/pkgs/applications/misc/thinking-rock/default.nix +++ b/pkgs/applications/misc/thinking-rock/default.nix @@ -31,7 +31,7 @@ stdenv.mkDerivation rec { chmod +x $out/bin/thinkingrock ''; - installPhase = ":"; + dontInstall = true; meta = with lib; { description = "Task management system"; diff --git a/pkgs/applications/science/biology/macse/default.nix b/pkgs/applications/science/biology/macse/default.nix index c78e142dcc6..66f4a1671d1 100644 --- a/pkgs/applications/science/biology/macse/default.nix +++ b/pkgs/applications/science/biology/macse/default.nix @@ -11,8 +11,8 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ makeWrapper ]; + dontUnpack = true; dontBuild = true; - unpackPhase = ":"; installPhase = '' runHook preInstall diff --git a/pkgs/applications/video/vdr/plugins.nix b/pkgs/applications/video/vdr/plugins.nix index 2e79cb25c49..6f701779d4d 100644 --- a/pkgs/applications/video/vdr/plugins.nix +++ b/pkgs/applications/video/vdr/plugins.nix @@ -225,7 +225,7 @@ in { mkdir -p $out/lib/vdr ''; - installPhase = ":"; + dontInstall = true; meta = with lib; { homepage = "https://projects.vdr-developer.org/projects/plg-text2skin"; diff --git a/pkgs/development/compilers/apache-flex-sdk/default.nix b/pkgs/development/compilers/apache-flex-sdk/default.nix index 800b1ea55e3..5b5b21aa73d 100644 --- a/pkgs/development/compilers/apache-flex-sdk/default.nix +++ b/pkgs/development/compilers/apache-flex-sdk/default.nix @@ -19,7 +19,7 @@ in stdenv.mkDerivation rec { buildInputs = [ jre ]; - buildPhase = ":"; + dontBuild = true; postPatch = '' shopt -s extglob @@ -45,7 +45,7 @@ in stdenv.mkDerivation rec { cp ${playerglobal} $t/frameworks/libs/player/${playerglobal_ver}/playerglobal.swc ''; - fixupPhase = ":"; + dontFixup = true; meta = with lib; { description = "Flex SDK for Adobe Flash / ActionScript"; diff --git a/pkgs/development/libraries/nanopb/test-message-with-annotations/default.nix b/pkgs/development/libraries/nanopb/test-message-with-annotations/default.nix index cda58608d6c..9eca4dbb936 100644 --- a/pkgs/development/libraries/nanopb/test-message-with-annotations/default.nix +++ b/pkgs/development/libraries/nanopb/test-message-with-annotations/default.nix @@ -9,7 +9,7 @@ stdenv.mkDerivation { # proto_path. By default the current directory is automatically added to the # proto_path. I tried using --proto_path ${./.} ${./simple.proto} and it did # not work because they end up in the store at different locations. - installPhase = ":"; + dontInstall = true; buildPhase = '' mkdir $out diff --git a/pkgs/development/libraries/nanopb/test-message-with-options/default.nix b/pkgs/development/libraries/nanopb/test-message-with-options/default.nix index 352ae801500..0030158df91 100644 --- a/pkgs/development/libraries/nanopb/test-message-with-options/default.nix +++ b/pkgs/development/libraries/nanopb/test-message-with-options/default.nix @@ -9,7 +9,7 @@ stdenv.mkDerivation { # proto_path. By default the current directory is automatically added to the # proto_path. I tried using --proto_path ${./.} ${./simple.proto} and it did # not work because they end up in the store at different locations. - installPhase = ":"; + dontInstall = true; buildPhase = '' mkdir $out diff --git a/pkgs/development/libraries/nanopb/test-simple-proto2/default.nix b/pkgs/development/libraries/nanopb/test-simple-proto2/default.nix index a915e778537..d1d3e1a855a 100644 --- a/pkgs/development/libraries/nanopb/test-simple-proto2/default.nix +++ b/pkgs/development/libraries/nanopb/test-simple-proto2/default.nix @@ -9,7 +9,7 @@ stdenv.mkDerivation { # proto_path. By default the current directory is automatically added to the # proto_path. I tried using --proto_path ${./.} ${./simple.proto} and it did # not work because they end up in the store at different locations. - installPhase = ":"; + dontInstall = true; buildPhase = '' mkdir $out diff --git a/pkgs/development/libraries/nanopb/test-simple-proto3/default.nix b/pkgs/development/libraries/nanopb/test-simple-proto3/default.nix index 3e2bba731b9..71507054458 100644 --- a/pkgs/development/libraries/nanopb/test-simple-proto3/default.nix +++ b/pkgs/development/libraries/nanopb/test-simple-proto3/default.nix @@ -9,7 +9,7 @@ stdenv.mkDerivation { # proto_path. By default the current directory is automatically added to the # proto_path. I tried using --proto_path ${./.} ${./simple.proto} and it did # not work because they end up in the store at different locations. - installPhase = ":"; + dontInstall = true; buildPhase = '' mkdir $out diff --git a/pkgs/development/python-modules/pytest-astropy/default.nix b/pkgs/development/python-modules/pytest-astropy/default.nix index 3df836ee562..981860c7a64 100644 --- a/pkgs/development/python-modules/pytest-astropy/default.nix +++ b/pkgs/development/python-modules/pytest-astropy/default.nix @@ -38,7 +38,7 @@ buildPythonPackage rec { ]; # pytest-astropy is a meta package and has no tests - checkPhase = ":"; + doCheck = false; meta = with lib; { description = "Meta-package containing dependencies for testing"; diff --git a/pkgs/development/ruby-modules/with-packages/default.nix b/pkgs/development/ruby-modules/with-packages/default.nix index 7d49b0e0134..5be820b60e3 100644 --- a/pkgs/development/ruby-modules/with-packages/default.nix +++ b/pkgs/development/ruby-modules/with-packages/default.nix @@ -57,7 +57,7 @@ let nativeBuildInputs = [ makeWrapper ]; buildInputs = [ selected ruby ]; - unpackPhase = ":"; + dontUnpack = true; installPhase = '' for i in ${ruby}/bin/* ${gemEnv}/bin/*; do diff --git a/pkgs/development/tools/misc/gede/default.nix b/pkgs/development/tools/misc/gede/default.nix index 00ce9958b1f..7b5e8552f82 100644 --- a/pkgs/development/tools/misc/gede/default.nix +++ b/pkgs/development/tools/misc/gede/default.nix @@ -17,7 +17,7 @@ mkDerivation rec { dontUseQmakeConfigure = true; - buildPhase = ":"; + dontBuild = true; installPhase = '' python build.py install --verbose --prefix="$out" diff --git a/pkgs/development/tools/parsing/tree-sitter/grammar.nix b/pkgs/development/tools/parsing/tree-sitter/grammar.nix index 93e1cb3804f..d4782b37b6a 100644 --- a/pkgs/development/tools/parsing/tree-sitter/grammar.nix +++ b/pkgs/development/tools/parsing/tree-sitter/grammar.nix @@ -33,7 +33,8 @@ stdenv.mkDerivation { buildInputs = [ tree-sitter ]; dontUnpack = true; - configurePhase = ":"; + dontConfigure = true; + buildPhase = '' runHook preBuild scanner_cc="$src/src/scanner.cc" diff --git a/pkgs/development/web/now-cli/default.nix b/pkgs/development/web/now-cli/default.nix index 3b1d2b4be4b..586fc03687c 100644 --- a/pkgs/development/web/now-cli/default.nix +++ b/pkgs/development/web/now-cli/default.nix @@ -14,7 +14,7 @@ stdenv.mkDerivation rec { gunzip -c $curSrc > now-linux ''; - buildPhase = ":"; + dontBuild = true; installPhase = '' mkdir $out diff --git a/pkgs/misc/apulse/pressureaudio.nix b/pkgs/misc/apulse/pressureaudio.nix index f0b39afb98e..def25474147 100644 --- a/pkgs/misc/apulse/pressureaudio.nix +++ b/pkgs/misc/apulse/pressureaudio.nix @@ -9,8 +9,7 @@ stdenv.mkDerivation { nativeBuildInputs = [ pkg-config intltool autoreconfHook ]; dontConfigure = true; - - buildPhase = ":"; + dontBuild = true; installPhase = '' echo "Copying libraries from apulse." diff --git a/pkgs/os-specific/linux/wooting-udev-rules/default.nix b/pkgs/os-specific/linux/wooting-udev-rules/default.nix index 75924ad02a7..f1ae2069235 100644 --- a/pkgs/os-specific/linux/wooting-udev-rules/default.nix +++ b/pkgs/os-specific/linux/wooting-udev-rules/default.nix @@ -7,7 +7,7 @@ stdenv.mkDerivation rec { # Source: https://wooting.helpscoutdocs.com/article/68-wootility-configuring-device-access-for-wootility-under-linux-udev-rules src = [ ./wooting.rules ]; - unpackPhase = ":"; + dontUnpack = true; installPhase = '' install -Dpm644 $src $out/lib/udev/rules.d/70-wooting.rules diff --git a/pkgs/servers/dict/dictd-db.nix b/pkgs/servers/dict/dictd-db.nix index da73a94c2aa..2f317feeda4 100644 --- a/pkgs/servers/dict/dictd-db.nix +++ b/pkgs/servers/dict/dictd-db.nix @@ -12,7 +12,7 @@ let inherit src; locale = _locale; dbName = _name; - buildPhase = ":"; + dontBuild = true; unpackPhase = '' tar xf ${src} ''; diff --git a/pkgs/servers/foundationdb/vsmake.nix b/pkgs/servers/foundationdb/vsmake.nix index e171d714564..52807fc0620 100644 --- a/pkgs/servers/foundationdb/vsmake.nix +++ b/pkgs/servers/foundationdb/vsmake.nix @@ -21,7 +21,7 @@ let }; dontConfigure = true; - buildPhase = ":"; + dontBuild = true; installPhase = "mkdir -p $out/include && cp -R boost $out/include/"; }; diff --git a/pkgs/servers/sql/postgresql/ext/pgjwt.nix b/pkgs/servers/sql/postgresql/ext/pgjwt.nix index b89ac172500..afa08a8cdce 100644 --- a/pkgs/servers/sql/postgresql/ext/pgjwt.nix +++ b/pkgs/servers/sql/postgresql/ext/pgjwt.nix @@ -11,7 +11,7 @@ stdenv.mkDerivation { sha256 = "1riz0xvwb6y02j0fljbr9hcbqb2jqs4njlivmavy9ysbcrrv1vrf"; }; - buildPhase = ":"; + dontBuild = true; installPhase = '' mkdir -p $out/share/postgresql/extension cp pg*sql *.control $out/share/postgresql/extension diff --git a/pkgs/tools/backup/ori/default.nix b/pkgs/tools/backup/ori/default.nix index 5e6e6a95ae7..01da407695a 100644 --- a/pkgs/tools/backup/ori/default.nix +++ b/pkgs/tools/backup/ori/default.nix @@ -17,7 +17,7 @@ stdenv.mkDerivation { scons PREFIX=$out WITH_ORILOCAL=1 install ''; - installPhase = ":"; + dontInstall = true; meta = with lib; { description = "A secure distributed file system"; diff --git a/pkgs/tools/misc/sweep-visualizer/default.nix b/pkgs/tools/misc/sweep-visualizer/default.nix index 1ead06ed6e8..74f0807a708 100644 --- a/pkgs/tools/misc/sweep-visualizer/default.nix +++ b/pkgs/tools/misc/sweep-visualizer/default.nix @@ -21,7 +21,7 @@ ar p "$src" data.tar.xz | tar xJ ''; - buildPhase = ":"; + dontBuild = true; installPhase = '' mkdir -p $out/bin $out/share/sweep-visualizer diff --git a/pkgs/tools/misc/zsh-autoenv/default.nix b/pkgs/tools/misc/zsh-autoenv/default.nix index 375f2ebb343..51cfda5e0aa 100644 --- a/pkgs/tools/misc/zsh-autoenv/default.nix +++ b/pkgs/tools/misc/zsh-autoenv/default.nix @@ -11,7 +11,7 @@ stdenv.mkDerivation { sha256 = "004svkfzhc3ab6q2qvwzgj36wvicg5bs8d2gcibx6adq042di7zj"; }; - buildPhase = ":"; + dontBuild = true; installPhase = '' mkdir -p $out/{bin,share} diff --git a/pkgs/tools/system/uefitool/common.nix b/pkgs/tools/system/uefitool/common.nix index 7d5ee82dcf9..7b9c8f2e57d 100644 --- a/pkgs/tools/system/uefitool/common.nix +++ b/pkgs/tools/system/uefitool/common.nix @@ -20,8 +20,10 @@ mkDerivation rec { buildInputs = [ qtbase ]; nativeBuildInputs = [ qmake cmake zip ]; - configurePhase = ":"; - buildPhase = "bash unixbuild.sh"; + dontConfigure = true; + buildPhase = '' + bash unixbuild.sh + ''; installPhase = '' mkdir -p "$out"/bin diff --git a/pkgs/tools/typesetting/tex/texlive/bin.nix b/pkgs/tools/typesetting/tex/texlive/bin.nix index 32fba9a8e1f..05c1644c8c7 100644 --- a/pkgs/tools/typesetting/tex/texlive/bin.nix +++ b/pkgs/tools/typesetting/tex/texlive/bin.nix @@ -309,7 +309,7 @@ latexindent = perlPackages.buildPerlPackage rec { preConfigure = '' touch Makefile.PL ''; - buildPhase = ":"; + dontBuild = true; installPhase = '' install -D ./scripts/latexindent/latexindent.pl "$out"/bin/latexindent mkdir -p "$out"/${perl.libPrefix} -- cgit 1.4.1