From 6f2fbf5f0b811c2d38bb140db5f26b225ab6a2e5 Mon Sep 17 00:00:00 2001 From: sternenseemann <0rpkxez4ksa01gb3typccl0i@systemli.org> Date: Wed, 24 Feb 2021 23:24:51 +0100 Subject: [PATCH 1/6] treewide: add missing lib inputs This fixes hopefully all remaining missing lib inputs, likely introduced as a regression by our recent treewide switch from stdenv.lib to lib. These instances are all I could find using nix-instantiate --parse using the following command: find "$NIXPKGS" -name '*.nix' \ -and ! -path "$NIXPKGS/pkgs/development/interpreters/python/cpython/docs/template.nix" \ -and ! -path '$NIXPKGS/.git/**' \ -print0 | xargs -0 nix-instantiate --parse >/dev/null --- .../audio/magnetophonDSP/CharacterCompressor/default.nix | 2 +- pkgs/applications/audio/magnetophonDSP/CompBus/default.nix | 2 +- .../audio/magnetophonDSP/ConstantDetuneChorus/default.nix | 2 +- pkgs/applications/audio/magnetophonDSP/LazyLimiter/default.nix | 2 +- pkgs/applications/audio/magnetophonDSP/MBdistortion/default.nix | 2 +- pkgs/applications/audio/magnetophonDSP/RhythmDelay/default.nix | 2 +- pkgs/applications/audio/magnetophonDSP/VoiceOfFaust/default.nix | 2 +- .../audio/magnetophonDSP/faustCompressors/default.nix | 2 +- pkgs/applications/audio/magnetophonDSP/pluginUtils/default.nix | 2 +- .../audio/magnetophonDSP/shelfMultiBand/default.nix | 2 +- pkgs/applications/misc/robomongo/default.nix | 2 +- pkgs/applications/science/logic/sad/default.nix | 2 +- pkgs/development/compilers/chicken/4/egg2nix.nix | 2 +- pkgs/development/libraries/libelf-freebsd/default.nix | 2 +- .../tools/continuous-integration/buildkite-agent/generic.nix | 2 +- pkgs/tools/audio/beets/plugins/alternatives.nix | 2 +- pkgs/tools/audio/beets/plugins/copyartifacts.nix | 2 +- 17 files changed, 17 insertions(+), 17 deletions(-) diff --git a/pkgs/applications/audio/magnetophonDSP/CharacterCompressor/default.nix b/pkgs/applications/audio/magnetophonDSP/CharacterCompressor/default.nix index d7f0a7fb20e9..400f268d439e 100644 --- a/pkgs/applications/audio/magnetophonDSP/CharacterCompressor/default.nix +++ b/pkgs/applications/audio/magnetophonDSP/CharacterCompressor/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }: +{ lib, stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }: stdenv.mkDerivation rec { pname = "CharacterCompressor"; version = "0.3.3"; diff --git a/pkgs/applications/audio/magnetophonDSP/CompBus/default.nix b/pkgs/applications/audio/magnetophonDSP/CompBus/default.nix index 7a917d79c57f..0b80aef170a0 100644 --- a/pkgs/applications/audio/magnetophonDSP/CompBus/default.nix +++ b/pkgs/applications/audio/magnetophonDSP/CompBus/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }: +{ lib, stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }: stdenv.mkDerivation rec { pname = "CompBus"; version = "1.1.1"; diff --git a/pkgs/applications/audio/magnetophonDSP/ConstantDetuneChorus/default.nix b/pkgs/applications/audio/magnetophonDSP/ConstantDetuneChorus/default.nix index 5ac711723253..56534309733d 100644 --- a/pkgs/applications/audio/magnetophonDSP/ConstantDetuneChorus/default.nix +++ b/pkgs/applications/audio/magnetophonDSP/ConstantDetuneChorus/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }: +{ lib, stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }: stdenv.mkDerivation rec { pname = "constant-detune-chorus"; version = "0.1.3"; diff --git a/pkgs/applications/audio/magnetophonDSP/LazyLimiter/default.nix b/pkgs/applications/audio/magnetophonDSP/LazyLimiter/default.nix index 277b186fd4ab..4b1157de0b08 100644 --- a/pkgs/applications/audio/magnetophonDSP/LazyLimiter/default.nix +++ b/pkgs/applications/audio/magnetophonDSP/LazyLimiter/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }: +{ lib, stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }: stdenv.mkDerivation rec { pname = "LazyLimiter"; version = "0.3.2"; diff --git a/pkgs/applications/audio/magnetophonDSP/MBdistortion/default.nix b/pkgs/applications/audio/magnetophonDSP/MBdistortion/default.nix index de7e573cbeee..f951486e3fa3 100644 --- a/pkgs/applications/audio/magnetophonDSP/MBdistortion/default.nix +++ b/pkgs/applications/audio/magnetophonDSP/MBdistortion/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }: +{ lib, stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }: stdenv.mkDerivation rec { pname = "MBdistortion"; version = "1.1.1"; diff --git a/pkgs/applications/audio/magnetophonDSP/RhythmDelay/default.nix b/pkgs/applications/audio/magnetophonDSP/RhythmDelay/default.nix index 80c5bb89eeea..fff4292cd761 100644 --- a/pkgs/applications/audio/magnetophonDSP/RhythmDelay/default.nix +++ b/pkgs/applications/audio/magnetophonDSP/RhythmDelay/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }: +{ lib, stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }: stdenv.mkDerivation rec { pname = "RhythmDelay"; version = "2.1"; diff --git a/pkgs/applications/audio/magnetophonDSP/VoiceOfFaust/default.nix b/pkgs/applications/audio/magnetophonDSP/VoiceOfFaust/default.nix index 9bd4076f130a..6bc8cff22615 100644 --- a/pkgs/applications/audio/magnetophonDSP/VoiceOfFaust/default.nix +++ b/pkgs/applications/audio/magnetophonDSP/VoiceOfFaust/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, faust2jack, faust2lv2, helmholtz, mrpeach, puredata-with-plugins }: +{ lib, stdenv, fetchFromGitHub, faust2jack, faust2lv2, helmholtz, mrpeach, puredata-with-plugins }: stdenv.mkDerivation rec { pname = "VoiceOfFaust"; version = "1.1.4"; diff --git a/pkgs/applications/audio/magnetophonDSP/faustCompressors/default.nix b/pkgs/applications/audio/magnetophonDSP/faustCompressors/default.nix index a90492f4235f..7ea5fa753c81 100644 --- a/pkgs/applications/audio/magnetophonDSP/faustCompressors/default.nix +++ b/pkgs/applications/audio/magnetophonDSP/faustCompressors/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }: +{ lib, stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }: stdenv.mkDerivation rec { name = "faustCompressors-v${version}"; version = "1.2"; diff --git a/pkgs/applications/audio/magnetophonDSP/pluginUtils/default.nix b/pkgs/applications/audio/magnetophonDSP/pluginUtils/default.nix index 414e350caa03..fd807dd42455 100644 --- a/pkgs/applications/audio/magnetophonDSP/pluginUtils/default.nix +++ b/pkgs/applications/audio/magnetophonDSP/pluginUtils/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }: +{ lib, stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }: stdenv.mkDerivation rec { pname = "pluginUtils"; version = "1.1"; diff --git a/pkgs/applications/audio/magnetophonDSP/shelfMultiBand/default.nix b/pkgs/applications/audio/magnetophonDSP/shelfMultiBand/default.nix index 7dcdf985c824..07d4402578ca 100644 --- a/pkgs/applications/audio/magnetophonDSP/shelfMultiBand/default.nix +++ b/pkgs/applications/audio/magnetophonDSP/shelfMultiBand/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }: +{ lib, stdenv, fetchFromGitHub, faust2jaqt, faust2lv2 }: stdenv.mkDerivation rec { pname = "shelfMultiBand"; version = "0.6.1"; diff --git a/pkgs/applications/misc/robomongo/default.nix b/pkgs/applications/misc/robomongo/default.nix index e8bba1f7a340..af5285909c6c 100644 --- a/pkgs/applications/misc/robomongo/default.nix +++ b/pkgs/applications/misc/robomongo/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, zlib, glib, xorg, dbus, fontconfig, +{ lib, stdenv, fetchurl, zlib, glib, xorg, dbus, fontconfig, freetype, xkeyboard_config, makeDesktopItem, makeWrapper }: stdenv.mkDerivation rec { diff --git a/pkgs/applications/science/logic/sad/default.nix b/pkgs/applications/science/logic/sad/default.nix index 8e4d19973ef7..fe0ca1b3017b 100644 --- a/pkgs/applications/science/logic/sad/default.nix +++ b/pkgs/applications/science/logic/sad/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, haskell, spass }: +{ lib, stdenv, fetchurl, haskell, spass }: stdenv.mkDerivation { name = "system-for-automated-deduction-2.3.25"; diff --git a/pkgs/development/compilers/chicken/4/egg2nix.nix b/pkgs/development/compilers/chicken/4/egg2nix.nix index d2f2805ed7ff..422053ea9d81 100644 --- a/pkgs/development/compilers/chicken/4/egg2nix.nix +++ b/pkgs/development/compilers/chicken/4/egg2nix.nix @@ -1,4 +1,4 @@ -{ eggDerivation, fetchurl, chickenEggs }: +{ lib, eggDerivation, fetchurl, chickenEggs }: # Note: This mostly reimplements the default.nix already contained in # the tarball. Is there a nicer way than duplicating code? diff --git a/pkgs/development/libraries/libelf-freebsd/default.nix b/pkgs/development/libraries/libelf-freebsd/default.nix index c3a4986c8321..19c537b5115d 100644 --- a/pkgs/development/libraries/libelf-freebsd/default.nix +++ b/pkgs/development/libraries/libelf-freebsd/default.nix @@ -1,4 +1,4 @@ -{ fetchsvn, stdenv, gnum4, tet }: +{ lib, fetchsvn, stdenv, gnum4, tet }: stdenv.mkDerivation (rec { version = "3258"; diff --git a/pkgs/development/tools/continuous-integration/buildkite-agent/generic.nix b/pkgs/development/tools/continuous-integration/buildkite-agent/generic.nix index 64ca730d7dc0..3b9de427bde0 100644 --- a/pkgs/development/tools/continuous-integration/buildkite-agent/generic.nix +++ b/pkgs/development/tools/continuous-integration/buildkite-agent/generic.nix @@ -1,4 +1,4 @@ -{ buildGoPackage, makeWrapper, coreutils, git, openssh, bash, gnused, gnugrep +{ lib, buildGoPackage, makeWrapper, coreutils, git, openssh, bash, gnused, gnugrep , src, version, hasBootstrapScript, postPatch ? "" , ... }: let diff --git a/pkgs/tools/audio/beets/plugins/alternatives.nix b/pkgs/tools/audio/beets/plugins/alternatives.nix index 793611699ec8..797aab16c1ae 100644 --- a/pkgs/tools/audio/beets/plugins/alternatives.nix +++ b/pkgs/tools/audio/beets/plugins/alternatives.nix @@ -1,4 +1,4 @@ -{ fetchFromGitHub, beets, pythonPackages }: +{ lib, fetchFromGitHub, beets, pythonPackages }: pythonPackages.buildPythonApplication rec { pname = "beets-alternatives"; diff --git a/pkgs/tools/audio/beets/plugins/copyartifacts.nix b/pkgs/tools/audio/beets/plugins/copyartifacts.nix index 5af52066caa7..b8a17a7d13e1 100644 --- a/pkgs/tools/audio/beets/plugins/copyartifacts.nix +++ b/pkgs/tools/audio/beets/plugins/copyartifacts.nix @@ -1,4 +1,4 @@ -{ fetchFromGitHub, beets, pythonPackages, glibcLocales }: +{ lib, fetchFromGitHub, beets, pythonPackages, glibcLocales }: pythonPackages.buildPythonApplication { name = "beets-copyartifacts"; From b4ce3151b2f9aef49e5d04f9fa3e8bc02368c86c Mon Sep 17 00:00:00 2001 From: sternenseemann <0rpkxez4ksa01gb3typccl0i@systemli.org> Date: Fri, 26 Feb 2021 11:32:04 +0100 Subject: [PATCH 2/6] magnetophonDSP: recurseIntoAttrs This makes nix tooling pick up on the magnetophonDSP attribute set in all-packages.nix which prevented eval errors from being detected by ofborg in the past for example. --- pkgs/top-level/all-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1cb6bd2a9812..c9a43e63d359 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -23602,7 +23602,7 @@ in mail-notification = callPackage ../desktops/gnome-2/desktop/mail-notification {}; - magnetophonDSP = { + magnetophonDSP = lib.recurseIntoAttrs { CharacterCompressor = callPackage ../applications/audio/magnetophonDSP/CharacterCompressor { }; CompBus = callPackage ../applications/audio/magnetophonDSP/CompBus { }; ConstantDetuneChorus = callPackage ../applications/audio/magnetophonDSP/ConstantDetuneChorus { }; From 39379808503b9793b4481a3a42c2e0c5e9f1be3d Mon Sep 17 00:00:00 2001 From: sternenseemann <0rpkxez4ksa01gb3typccl0i@systemli.org> Date: Fri, 26 Feb 2021 11:38:08 +0100 Subject: [PATCH 3/6] chickenPackages_{4,5}: recurseIntoAttrs This prevents further evaluation regression for chickenPackages if they are deprecated again. Since chickenPackages_4 and chickenPackages_5 are extremely tiny package set, the cost of building one additional set on hydra is probably fine. --- pkgs/development/compilers/chicken/4/default.nix | 4 ++-- pkgs/development/compilers/chicken/5/default.nix | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/development/compilers/chicken/4/default.nix b/pkgs/development/compilers/chicken/4/default.nix index 8d29c7c9a2b5..5445469b776e 100644 --- a/pkgs/development/compilers/chicken/4/default.nix +++ b/pkgs/development/compilers/chicken/4/default.nix @@ -1,4 +1,4 @@ -{ newScope } : +{ lib, newScope } : let callPackage = newScope self; @@ -18,4 +18,4 @@ let egg2nix = callPackage ./egg2nix.nix { }; }; -in self +in lib.recurseIntoAttrs self diff --git a/pkgs/development/compilers/chicken/5/default.nix b/pkgs/development/compilers/chicken/5/default.nix index 8d29c7c9a2b5..5445469b776e 100644 --- a/pkgs/development/compilers/chicken/5/default.nix +++ b/pkgs/development/compilers/chicken/5/default.nix @@ -1,4 +1,4 @@ -{ newScope } : +{ lib, newScope } : let callPackage = newScope self; @@ -18,4 +18,4 @@ let egg2nix = callPackage ./egg2nix.nix { }; }; -in self +in lib.recurseIntoAttrs self From c7e2333f494e680cc508ef90068a42bbe2c1f986 Mon Sep 17 00:00:00 2001 From: sternenseemann <0rpkxez4ksa01gb3typccl0i@systemli.org> Date: Tue, 2 Mar 2021 17:10:43 +0100 Subject: [PATCH 4/6] libelf-freebsd: add source hash Built libelf-freebsd's src attribute on NixOS to verify. --- pkgs/development/libraries/libelf-freebsd/default.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/development/libraries/libelf-freebsd/default.nix b/pkgs/development/libraries/libelf-freebsd/default.nix index 19c537b5115d..d4a8b8f6f219 100644 --- a/pkgs/development/libraries/libelf-freebsd/default.nix +++ b/pkgs/development/libraries/libelf-freebsd/default.nix @@ -8,6 +8,7 @@ stdenv.mkDerivation (rec { url = "svn://svn.code.sf.net/p/elftoolchain/code/trunk"; rev = (lib.strings.toInt version); name = "elftoolchain-${version}"; + sha256 = "1rcmddjanlsik0b055x8k914r9rxs8yjsvslia2nh1bhzf1lxmqz"; }; buildInputs = [ gnum4 tet ]; From 979a6b25901bd73f2dbc15cc51760227fb208045 Mon Sep 17 00:00:00 2001 From: sternenseemann <0rpkxez4ksa01gb3typccl0i@systemli.org> Date: Wed, 3 Mar 2021 15:09:10 +0100 Subject: [PATCH 5/6] beets-check: fix patch path The path to the used patch was broken, making the derivation fail evaluation. However the patch needs to be updated as some new test failure has cropped up. --- pkgs/tools/audio/beets/plugins/check.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/tools/audio/beets/plugins/check.nix b/pkgs/tools/audio/beets/plugins/check.nix index 441dcfe579f4..259b62a23b05 100644 --- a/pkgs/tools/audio/beets/plugins/check.nix +++ b/pkgs/tools/audio/beets/plugins/check.nix @@ -16,7 +16,7 @@ pythonPackages.buildPythonApplication rec { propagatedBuildInputs = [ flac liboggz mp3val ]; # patch out broken tests - patches = [ ./beet-check-tests.patch ]; + patches = [ ./check-tests.patch ]; # patch out futures dependency, it is only needed for Python2 which we don't # support. From bce37e7542986dc823242bf04829c06901eb9676 Mon Sep 17 00:00:00 2001 From: sternenseemann <0rpkxez4ksa01gb3typccl0i@systemli.org> Date: Wed, 3 Mar 2021 15:16:31 +0100 Subject: [PATCH 6/6] beets: refactor external plugins into top-level package set Instead of managing external plugins in the beets derivation, we introduce a new top-level package set beetsExternalPlugins which the beets derivation receives as an input. This change doesn't affect how the beets derivation is built or overridden, so the change won't be noticed by users, but it makes hydra evaluate and build external plugins which should benefit users of those plugins and prevent future regressions as we have experienced (currently on master beets-alternatives fails to evaluate, but this wasn't picked up by ofborg nor hydra). --- pkgs/tools/audio/beets/default.nix | 24 ++++++++---------------- pkgs/top-level/all-packages.nix | 20 ++++++++++++++++++++ 2 files changed, 28 insertions(+), 16 deletions(-) diff --git a/pkgs/tools/audio/beets/default.nix b/pkgs/tools/audio/beets/default.nix index 56d3268ae2d7..7fea4bd28d4f 100644 --- a/pkgs/tools/audio/beets/default.nix +++ b/pkgs/tools/audio/beets/default.nix @@ -3,8 +3,8 @@ , runtimeShell , unstableGitUpdater -# Attributes needed for tests of the external plugins -, callPackage, beets +# external plugins package set +, beetsExternalPlugins , enableAbsubmit ? lib.elem stdenv.hostPlatform.system essentia-extractor.meta.platforms, essentia-extractor ? null , enableAcousticbrainz ? true @@ -116,15 +116,6 @@ let doInstallCheck = false; }); - pluginArgs = externalTestArgs // { inherit pythonPackages; }; - - plugins = { - alternatives = callPackage ./plugins/alternatives.nix pluginArgs; - check = callPackage ./plugins/check.nix pluginArgs; - copyartifacts = callPackage ./plugins/copyartifacts.nix pluginArgs; - extrafiles = callPackage ./plugins/extrafiles.nix pluginArgs; - }; - in pythonPackages.buildPythonApplication rec { pname = "beets"; # While there is a stable version, 1.4.9, it is more than 1000 commits behind @@ -169,7 +160,7 @@ in pythonPackages.buildPythonApplication rec { || enableSubsonicupdate || enableAcousticbrainz) pythonPackages.requests - ++ optional enableCheck plugins.check + ++ optional enableCheck beetsExternalPlugins.check ++ optional enableConvert ffmpeg ++ optional enableDiscogs pythonPackages.discogs_client ++ optional enableGmusic pythonPackages.gmusicapi @@ -179,9 +170,9 @@ in pythonPackages.buildPythonApplication rec { ++ optional enableSonosUpdate pythonPackages.soco ++ optional enableThumbnails pythonPackages.pyxdg ++ optional enableWeb pythonPackages.flask - ++ optional enableAlternatives plugins.alternatives - ++ optional enableCopyArtifacts plugins.copyartifacts - ++ optional enableExtraFiles plugins.extrafiles + ++ optional enableAlternatives beetsExternalPlugins.alternatives + ++ optional enableCopyArtifacts beetsExternalPlugins.copyartifacts + ++ optional enableExtraFiles beetsExternalPlugins.extrafiles ; buildInputs = [ @@ -289,7 +280,8 @@ in pythonPackages.buildPythonApplication rec { makeWrapperArgs = [ "--set GI_TYPELIB_PATH \"$GI_TYPELIB_PATH\"" "--set GST_PLUGIN_SYSTEM_PATH_1_0 \"$GST_PLUGIN_SYSTEM_PATH_1_0\"" ]; passthru = { - externalPlugins = plugins; + # FIXME: remove in favor of pkgs.beetsExternalPlugins + externalPlugins = beetsExternalPlugins; updateScript = unstableGitUpdater { url = "https://github.com/beetbox/beets"; }; }; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c9a43e63d359..becd662ad210 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -3009,6 +3009,26 @@ in pythonPackages = python3Packages; }; + beetsExternalPlugins = + let + pluginArgs = { + # This is a stripped down beets for testing of the external plugins. + beets = (beets.override { + enableAlternatives = false; + enableCopyArtifacts = false; + enableExtraFiles = false; + }).overrideAttrs (lib.const { + doInstallCheck = false; + }); + pythonPackages = python3Packages; + }; + in lib.recurseIntoAttrs { + alternatives = callPackage ../tools/audio/beets/plugins/alternatives.nix pluginArgs; + check = callPackage ../tools/audio/beets/plugins/check.nix pluginArgs; + copyartifacts = callPackage ../tools/audio/beets/plugins/copyartifacts.nix pluginArgs; + extrafiles = callPackage ../tools/audio/beets/plugins/extrafiles.nix pluginArgs; + }; + bento4 = callPackage ../tools/video/bento4 { }; bepasty = callPackage ../tools/misc/bepasty { };