diff --git a/doc/hooks/bmake.section.md b/doc/hooks/bmake.section.md new file mode 100644 index 000000000000..6b40ac13e8b9 --- /dev/null +++ b/doc/hooks/bmake.section.md @@ -0,0 +1,7 @@ +# bmake {#bmake-hook} + +[bmake](https://www.crufty.net/help/sjg/bmake.html) is the portable variant of +NetBSD make utility. + +In Nixpkgs, `bmake` comes with a hook that overrides the default build, check, +install and dist phases. diff --git a/doc/hooks/index.md b/doc/hooks/index.md index 8100e91c8b48..363d627e5258 100644 --- a/doc/hooks/index.md +++ b/doc/hooks/index.md @@ -8,6 +8,7 @@ The stdenv built-in hooks are documented in [](#ssec-setup-hooks). autoconf.section.md automake.section.md autopatchelf.section.md +bmake.section.md breakpoint.section.md cmake.section.md gdk-pixbuf.section.md diff --git a/pkgs/applications/misc/streamdeck-ui/default.nix b/pkgs/applications/misc/streamdeck-ui/default.nix index 5685dea60823..e60fbf7412aa 100644 --- a/pkgs/applications/misc/streamdeck-ui/default.nix +++ b/pkgs/applications/misc/streamdeck-ui/default.nix @@ -97,6 +97,7 @@ python3Packages.buildPythonApplication rec { description = "Linux compatible UI for the Elgato Stream Deck"; homepage = "https://streamdeck-linux-gui.github.io/streamdeck-linux-gui/"; license = licenses.mit; + mainProgram = "streamdeck"; maintainers = with maintainers; [ majiir ]; }; } diff --git a/pkgs/applications/misc/waypaper/default.nix b/pkgs/applications/misc/waypaper/default.nix index cfb7ec3abf69..b17e8b974e41 100644 --- a/pkgs/applications/misc/waypaper/default.nix +++ b/pkgs/applications/misc/waypaper/default.nix @@ -2,8 +2,8 @@ , python3 , fetchFromGitHub , gobject-introspection -, gtk3 , wrapGAppsHook +, killall }: python3.pkgs.buildPythonApplication rec { @@ -22,8 +22,9 @@ python3.pkgs.buildPythonApplication rec { wrapGAppsHook ]; - propagatedBuildInputs = with python3.pkgs; [ - pygobject3 + propagatedBuildInputs = [ + python3.pkgs.pygobject3 + killall ]; # has no tests diff --git a/pkgs/development/tools/build-managers/bmake/bootstrap-fix.patch b/pkgs/by-name/bm/bmake/001-bootstrap-fix.diff similarity index 100% rename from pkgs/development/tools/build-managers/bmake/bootstrap-fix.patch rename to pkgs/by-name/bm/bmake/001-bootstrap-fix.diff diff --git a/pkgs/development/tools/build-managers/bmake/dont-test-while-installing.diff b/pkgs/by-name/bm/bmake/002-dont-test-while-installing.diff similarity index 100% rename from pkgs/development/tools/build-managers/bmake/dont-test-while-installing.diff rename to pkgs/by-name/bm/bmake/002-dont-test-while-installing.diff diff --git a/pkgs/development/tools/build-managers/bmake/fix-unexport-env-test.patch b/pkgs/by-name/bm/bmake/003-fix-unexport-env-test.diff similarity index 100% rename from pkgs/development/tools/build-managers/bmake/fix-unexport-env-test.patch rename to pkgs/by-name/bm/bmake/003-fix-unexport-env-test.diff diff --git a/pkgs/development/tools/build-managers/bmake/unconditional-ksh-test.patch b/pkgs/by-name/bm/bmake/004-unconditional-ksh-test.diff similarity index 100% rename from pkgs/development/tools/build-managers/bmake/unconditional-ksh-test.patch rename to pkgs/by-name/bm/bmake/004-unconditional-ksh-test.diff diff --git a/pkgs/development/tools/build-managers/bmake/default.nix b/pkgs/by-name/bm/bmake/package.nix similarity index 79% rename from pkgs/development/tools/build-managers/bmake/default.nix rename to pkgs/by-name/bm/bmake/package.nix index 4373e534bc58..2626c45f0215 100644 --- a/pkgs/development/tools/build-managers/bmake/default.nix +++ b/pkgs/by-name/bm/bmake/package.nix @@ -4,28 +4,29 @@ , fetchpatch , getopt , ksh +, bc , tzdata , pkgsMusl # for passthru.tests }: stdenv.mkDerivation (finalAttrs: { pname = "bmake"; - version = "20230723"; + version = "20230909"; src = fetchurl { url = "http://www.crufty.net/ftp/pub/sjg/bmake-${finalAttrs.version}.tar.gz"; - hash = "sha256-xCoNlRuiP3ZlMxMJ+74h7cARNqI8uUFoULQxW+X7WQQ="; + hash = "sha256-Hl5sdlQN/oEEQmzX/T9xXMZAT5A5ySA0RwErjy9re4Y="; }; patches = [ # make bootstrap script aware of the prefix in /nix/store - ./bootstrap-fix.patch - # preserve PATH from build env in unit tests - ./fix-unexport-env-test.patch - # Always enable ksh test since it checks in a impure location /bin/ksh - ./unconditional-ksh-test.patch + ./001-bootstrap-fix.diff # decouple tests from build phase - ./dont-test-while-installing.diff + ./002-dont-test-while-installing.diff + # preserve PATH from build env in unit tests + ./003-fix-unexport-env-test.diff + # Always enable ksh test since it checks in a impure location /bin/ksh + ./004-unconditional-ksh-test.diff ]; # Make tests work with musl @@ -68,18 +69,22 @@ stdenv.mkDerivation (finalAttrs: { doCheck = true; nativeCheckInputs = [ + bc tzdata ] ++ lib.optionals (stdenv.hostPlatform.libc != "musl") [ ksh ]; # Disabled tests: + # directive-export{,-gmake}: another failure related to TZ variables # opt-chdir: ofborg complains about it somehow # opt-keep-going-indirect: not yet known # varmod-localtime: musl doesn't support TZDIR and this test relies on impure, # implicit paths env.BROKEN_TESTS = builtins.concatStringsSep " " [ - "opt-chdir" + "directive-export" + "directive-export-gmake" + "opt-chdir" # works on my machine -- AndersonTorres "opt-keep-going-indirect" "varmod-localtime" ]; @@ -92,6 +97,8 @@ stdenv.mkDerivation (finalAttrs: { runHook postCheck ''; + strictDeps = true; + setupHook = ./setup-hook.sh; passthru.tests.bmakeMusl = pkgsMusl.bmake; @@ -100,9 +107,12 @@ stdenv.mkDerivation (finalAttrs: { homepage = "http://www.crufty.net/help/sjg/bmake.html"; description = "Portable version of NetBSD 'make'"; license = lib.licenses.bsd3; + mainProgram = "bmake"; maintainers = with lib.maintainers; [ thoughtpolice AndersonTorres ]; platforms = lib.platforms.unix; - broken = stdenv.isAarch64; # failure on gnulib-tests + # ofborg: x86_64-linux builds the musl package, aarch64-linux doesn't + broken = stdenv.targetPlatform.isMusl && stdenv.buildPlatform.isAarch64; }; }) # TODO: report the quirks and patches to bmake devteam (especially the Musl one) +# TODO: investigate Musl support diff --git a/pkgs/development/tools/build-managers/bmake/setup-hook.sh b/pkgs/by-name/bm/bmake/setup-hook.sh similarity index 100% rename from pkgs/development/tools/build-managers/bmake/setup-hook.sh rename to pkgs/by-name/bm/bmake/setup-hook.sh diff --git a/pkgs/development/compilers/spirv-llvm-translator/default.nix b/pkgs/development/compilers/spirv-llvm-translator/default.nix index 19fa928a4d0e..c5e8ee5a6214 100644 --- a/pkgs/development/compilers/spirv-llvm-translator/default.nix +++ b/pkgs/development/compilers/spirv-llvm-translator/default.nix @@ -1,5 +1,6 @@ { lib, stdenv , fetchFromGitHub +, fetchpatch , cmake , pkg-config , lit @@ -14,7 +15,11 @@ let # ROCm will always be at the latest version branch = - if llvmMajor == "15" || isROCm then rec { + if llvmMajor == "16" then rec { + version = "16.0.0"; + rev = "v${version}"; + hash = "sha256-EUabcYqSjXshbPmcs1DRLvCSL1nd9rEdpqELBrItCW8="; + } else if llvmMajor == "15" || isROCm then rec { version = "15.0.0"; rev = "v${version}"; hash = "sha256-OsDohXRxovtEXaWiRGp8gJ0dXmoALyO+ZimeSO8aPVI="; @@ -38,6 +43,14 @@ stdenv.mkDerivation { inherit (branch) rev hash; }; + patches = lib.optionals (llvmMajor == "16")[ + # Fixes builds that link against external LLVM dynamic library + (fetchpatch { + url = "https://github.com/KhronosGroup/SPIRV-LLVM-Translator/commit/f3b9b604d7eda18d0d1029d94a6eebd33aa3a3fe.patch"; + hash = "sha256-opDjyZcy7O4wcSfm/A51NCIiDyIvbcmbv9ns1njdJbc="; + }) + ]; + nativeBuildInputs = [ pkg-config cmake spirv-tools ] ++ (if isROCm then [ llvm ] else [ llvm.dev ]); @@ -62,6 +75,9 @@ stdenv.mkDerivation { postInstall = '' install -D tools/llvm-spirv/llvm-spirv $out/bin/llvm-spirv + '' + lib.optionalString stdenv.isDarwin '' + install_name_tool $out/bin/llvm-spirv \ + -change @rpath/libLLVMSPIRVLib.dylib $out/lib/libLLVMSPIRVLib.dylib ''; meta = with lib; { diff --git a/pkgs/development/libraries/wolfssl/default.nix b/pkgs/development/libraries/wolfssl/default.nix index b77ec4d3c4a8..4c60ccf6c8ba 100644 --- a/pkgs/development/libraries/wolfssl/default.nix +++ b/pkgs/development/libraries/wolfssl/default.nix @@ -3,18 +3,19 @@ , fetchFromGitHub , Security , autoreconfHook +, util-linux , openssl }: stdenv.mkDerivation rec { pname = "wolfssl"; - version = "5.5.4"; + version = "5.6.3"; src = fetchFromGitHub { owner = "wolfSSL"; repo = "wolfssl"; - rev = "v${version}-stable"; - hash = "sha256-sR/Gjk50kLej5oJzDH1I6/V+7OIRiwtyeg5tEE3fmHk="; + rev = "refs/tags/v${version}-stable"; + hash = "sha256-UN4zs+Rxh/bsLD1BQA+f1YN/UOJ6OB2HduhoetEp10Y="; }; postPatch = '' @@ -43,13 +44,20 @@ stdenv.mkDerivation rec { "out" ]; - propagatedBuildInputs = [ ] ++ lib.optionals stdenv.isDarwin [ Security ]; + propagatedBuildInputs = lib.optionals stdenv.isDarwin [ + Security + ]; + nativeBuildInputs = [ autoreconfHook + util-linux ]; doCheck = true; - nativeCheckInputs = [ openssl ]; + + nativeCheckInputs = [ + openssl + ]; postInstall = '' # fix recursive cycle: @@ -62,6 +70,7 @@ stdenv.mkDerivation rec { meta = with lib; { description = "A small, fast, portable implementation of TLS/SSL for embedded devices"; homepage = "https://www.wolfssl.com/"; + changelog = "https://github.com/wolfSSL/wolfssl/releases/tag/v${version}-stable"; platforms = platforms.all; license = licenses.gpl2Plus; maintainers = with maintainers; [ fab ]; diff --git a/pkgs/development/tools/build-managers/bob/default.nix b/pkgs/development/tools/build-managers/bob/default.nix index 2a8a1eda465a..97e67ce97798 100644 --- a/pkgs/development/tools/build-managers/bob/default.nix +++ b/pkgs/development/tools/build-managers/bob/default.nix @@ -1,4 +1,4 @@ -{ lib, buildGoModule, fetchFromGitHub }: +{ lib, stdenv, buildGoModule, fetchFromGitHub, installShellFiles }: buildGoModule rec { pname = "bob"; @@ -17,6 +17,14 @@ buildGoModule rec { excludedPackages = [ "example/server-db" "test/e2e" "tui-example" ]; + nativeBuildInputs = [ installShellFiles ]; + + postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' + installShellCompletion --cmd bob \ + --bash <($out/bin/bob completion) \ + --zsh <($out/bin/bob completion -z) + ''; + # tests require network access doCheck = false; diff --git a/pkgs/development/tools/tabnine/sources.json b/pkgs/development/tools/tabnine/sources.json index 7ec3dd45378a..96a791ff0981 100644 --- a/pkgs/development/tools/tabnine/sources.json +++ b/pkgs/development/tools/tabnine/sources.json @@ -1,17 +1,17 @@ { - "version": "4.4.282", + "version": "4.10.0", "platforms": { "x86_64-linux": { "name": "x86_64-unknown-linux-musl", - "hash": "sha256-ddf30gAKYztw6RD5fPK/eb7AoYp/SiN9hDDEuUT3LZE=" + "hash": "sha256-sVjSrQsdOtWvuYZqLSmlsbu2yKe7MYBOxctrKlltlwY=" }, "aarch64-darwin": { "name": "aarch64-apple-darwin", - "hash": "sha256-fZyovA6Oq/jGF1OAzm/6nfldaVtZyor9IJGQtVmCVLM=" + "hash": "sha256-HMPK09rOwRbsRwiHwjXZnDt4evEz2CP8zAReg/bhgTg=" }, "x86_64-darwin": { "name": "x86_64-apple-darwin", - "hash": "sha256-4oVDbUtl+zkaL9kDCdfAvCCDlJRZG8ho0LufKx7nTkg=" + "hash": "sha256-8y96VXWvHYTO+qs8x6ND5tD3Mb4qBXwdcIeYBLOkCdc=" } } } diff --git a/pkgs/os-specific/linux/ddcci/default.nix b/pkgs/os-specific/linux/ddcci/default.nix index f9a71fece748..ce435b3874f3 100644 --- a/pkgs/os-specific/linux/ddcci/default.nix +++ b/pkgs/os-specific/linux/ddcci/default.nix @@ -1,26 +1,17 @@ -{ lib, stdenv, fetchFromGitLab, kernel, fetchpatch }: +{ lib, stdenv, fetchFromGitLab, kernel }: stdenv.mkDerivation rec { pname = "ddcci-driver"; - version = "0.4.3"; + version = "0.4.4"; name = "${pname}-${kernel.version}-${version}"; src = fetchFromGitLab { owner = "${pname}-linux"; repo = "${pname}-linux"; rev = "v${version}"; - hash = "sha256-1Z6V/AorD4aslLKaaCZpmkD2OiQnmpu3iroOPlNPtLE="; + hash = "sha256-4pCfXJcteWwU6cK8OOSph4XlhKTk289QqLxsSWY7cac="; }; - patches = [ - # https://gitlab.com/ddcci-driver-linux/ddcci-driver-linux/-/merge_requests/12 - (fetchpatch { - name = "kernel-6.2-6.3.patch"; - url = "https://gitlab.com/ddcci-driver-linux/ddcci-driver-linux/-/commit/1ef6079679acc455f75057dd7097b5b494a241dc.patch"; - hash = "sha256-2C2leS20egGY3J2tq96gsUQXYw13wBJ3ZWrdIXxmEYs="; - }) - ]; - hardeningDisable = [ "pic" ]; nativeBuildInputs = kernel.moduleBuildDependencies; diff --git a/pkgs/servers/monitoring/alerta/default.nix b/pkgs/servers/monitoring/alerta/default.nix index d038039780a3..06383d436085 100644 --- a/pkgs/servers/monitoring/alerta/default.nix +++ b/pkgs/servers/monitoring/alerta/default.nix @@ -30,6 +30,7 @@ python3.pkgs.buildPythonApplication rec { requests requests-hawk sentry-sdk + setuptools ]; # We can't run the tests from Nix, because they rely on the presence of a working MongoDB server diff --git a/pkgs/tools/networking/iouyap/default.nix b/pkgs/tools/networking/iouyap/default.nix deleted file mode 100644 index d2754469fade..000000000000 --- a/pkgs/tools/networking/iouyap/default.nix +++ /dev/null @@ -1,32 +0,0 @@ -{ lib, stdenv, fetchFromGitHub, bison, flex }: - -stdenv.mkDerivation rec { - pname = "iouyap"; - version = "0.97"; - - src = fetchFromGitHub { - owner = "GNS3"; - repo = pname; - rev = "v${version}"; - sha256 = "028s9kx67b9x7gwzg0fhc6546diw4n0x4kk1xhl3v7hbsz3wdh6s"; - }; - - buildInputs = [ bison flex ]; - - # Workaround build failure on -fno-common toolchains like upstream - # gcc-10. Otherwise build fails as: - # ld: netmap.o:(.bss+0x20): multiple definition of `sizecheck'; iouyap.o:(.bss+0x20): first defined here - env.NIX_CFLAGS_COMPILE = "-fcommon"; - - installPhase = '' - install -D -m555 iouyap $out/bin/iouyap; - ''; - - meta = with lib; { - description = "Bridge IOU to UDP, TAP and Ethernet"; - inherit (src.meta) homepage; - license = licenses.gpl3Plus; - platforms = platforms.linux; - maintainers = with maintainers; [ primeos ]; - }; -} diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix index 85c66e4bbbbf..9b69263ffa11 100644 --- a/pkgs/top-level/aliases.nix +++ b/pkgs/top-level/aliases.nix @@ -787,6 +787,7 @@ mapAliases ({ interfacer = throw "interfacer is deprecated and archived by upstream"; # Added 2022-04-05 inter-ui = inter; # Added 2021-03-27 iops = throw "iops was removed: upstream is gone"; # Added 2022-02-06 + iouyap = throw "'iouyap' is deprecated and archived by upstream, use 'ubridge' instead"; # Added 2023-09-21 ipfs = kubo; # Added 2022-09-27 ipfs-migrator-all-fs-repo-migrations = kubo-migrator-all-fs-repo-migrations; # Added 2022-09-27 ipfs-migrator-unwrapped = kubo-migrator-unwrapped; # Added 2022-09-27 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0ff10da5a90e..1d7ca3ba2b96 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4408,8 +4408,6 @@ with pkgs; bmon = callPackage ../tools/misc/bmon { }; - bmake = callPackage ../development/tools/build-managers/bmake { }; - boca = callPackage ../development/libraries/boca { }; bubblewrap = callPackage ../tools/admin/bubblewrap { }; @@ -9423,8 +9421,6 @@ with pkgs; ior = callPackage ../tools/system/ior { }; - iouyap = callPackage ../tools/networking/iouyap { }; - ioztat = callPackage ../tools/filesystems/ioztat { }; ip2location = callPackage ../tools/networking/ip2location { };