Merge staging-next into staging

main
github-actions[bot] 2 years ago committed by GitHub
commit 629adb097a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 34
      .github/ISSUE_TEMPLATE/build_failure.md
  2. 46
      doc/builders/testers.chapter.md
  3. 6
      maintainers/maintainer-list.nix
  4. 5
      nixos/doc/manual/from_md/release-notes/rl-2111.section.xml
  5. 2
      nixos/doc/manual/release-notes/rl-2111.section.md
  6. 2
      nixos/lib/build-vms.nix
  7. 1
      nixos/lib/testing-python.nix
  8. 79
      nixos/tests/installer.nix
  9. 2
      pkgs/applications/audio/exaile/default.nix
  10. 14
      pkgs/applications/audio/musikcube/0001-apple-cmake.patch
  11. 20
      pkgs/applications/audio/musikcube/default.nix
  12. 63
      pkgs/applications/blockchains/haven-cli/default.nix
  13. 92
      pkgs/applications/blockchains/haven-cli/use-system-libraries.patch
  14. 4
      pkgs/applications/editors/android-studio/common.nix
  15. 6
      pkgs/applications/editors/thiefmd/default.nix
  16. 32
      pkgs/applications/networking/browsers/lagrange/default.nix
  17. 44
      pkgs/applications/networking/cluster/roxctl/default.nix
  18. 48
      pkgs/applications/networking/feedreaders/feedreader/default.nix
  19. 14
      pkgs/applications/science/chemistry/siesta/default.nix
  20. 2
      pkgs/build-support/docker/examples.nix
  21. 6
      pkgs/build-support/fetchfirefoxaddon/tests.nix
  22. 6
      pkgs/build-support/fetchgit/tests.nix
  23. 8
      pkgs/build-support/fetchpatch/tests.nix
  24. 8
      pkgs/build-support/node/fetch-yarn-deps/tests/default.nix
  25. 47
      pkgs/build-support/testers/default.nix
  26. 8
      pkgs/build-support/testers/test/README.md
  27. 27
      pkgs/build-support/testers/test/default.nix
  28. 4
      pkgs/build-support/trivial-builders/test/references.nix
  29. 18
      pkgs/desktops/gnome/games/atomix/default.nix
  30. 6
      pkgs/desktops/plasma-5/powerdevil.nix
  31. 15
      pkgs/development/libraries/boost/1.59.nix
  32. 5
      pkgs/development/libraries/boost/generic.nix
  33. 32
      pkgs/development/libraries/freetype/default.nix
  34. 39
      pkgs/development/libraries/libgtkflow/default.nix
  35. 25
      pkgs/development/libraries/re2/default.nix
  36. 28
      pkgs/development/libraries/sealcurses/default.nix
  37. 36
      pkgs/development/libraries/the-foundation/default.nix
  38. 2
      pkgs/development/libraries/zeroc-ice/default.nix
  39. 4
      pkgs/development/python-modules/approvaltests/default.nix
  40. 6
      pkgs/development/python-modules/editorconfig/default.nix
  41. 6
      pkgs/development/python-modules/exchangelib/default.nix
  42. 5
      pkgs/development/python-modules/falcon/default.nix
  43. 26
      pkgs/development/python-modules/ldaptor/default.nix
  44. 1
      pkgs/development/python-modules/proton-client/default.nix
  45. 1
      pkgs/development/python-modules/protonvpn-nm-lib/default.nix
  46. 29
      pkgs/development/python-modules/pymbolic/default.nix
  47. 4
      pkgs/development/python-modules/pyrogram/default.nix
  48. 4
      pkgs/development/python-modules/pyskyqremote/default.nix
  49. 42
      pkgs/development/python-modules/sjcl/default.nix
  50. 1
      pkgs/development/python-modules/txaio/default.nix
  51. 2
      pkgs/development/python-modules/uharfbuzz/default.nix
  52. 6
      pkgs/development/python-modules/zeroconf/default.nix
  53. 5
      pkgs/development/tools/analysis/qcachegrind/default.nix
  54. 2
      pkgs/development/tools/boost-build/default.nix
  55. 6
      pkgs/development/tools/conftest/default.nix
  56. 1
      pkgs/development/tools/continuous-integration/laminar/default.nix
  57. 6
      pkgs/development/tools/dprint/default.nix
  58. 10
      pkgs/development/tools/misc/gtkdialog/default.nix
  59. 4
      pkgs/misc/apulse/pressureaudio.nix
  60. 7
      pkgs/misc/uboot/default.nix
  61. 1
      pkgs/os-specific/linux/vmm_clock/default.nix
  62. 2
      pkgs/servers/gotify/source-sha.nix
  63. 2
      pkgs/servers/gotify/version.nix
  64. 4592
      pkgs/servers/gotify/yarndeps.nix
  65. 10
      pkgs/shells/powershell/default.nix
  66. 2
      pkgs/test/default.nix
  67. 14
      pkgs/test/nixos-functions/default.nix
  68. 29
      pkgs/tools/X11/xvkbd/default.nix
  69. 4
      pkgs/tools/archivers/gbl/default.nix
  70. 1
      pkgs/tools/filesystems/bcachefs-tools/default.nix
  71. 10
      pkgs/tools/misc/pcb2gcode/default.nix
  72. 4
      pkgs/tools/misc/vial/default.nix
  73. 16
      pkgs/tools/networking/curl/default.nix
  74. 6
      pkgs/tools/package-management/cargo-edit/default.nix
  75. 2
      pkgs/tools/system/psensor/default.nix
  76. 3
      pkgs/top-level/aliases.nix
  77. 92
      pkgs/top-level/all-packages.nix
  78. 64
      pkgs/top-level/php-packages.nix
  79. 2
      pkgs/top-level/python-packages.nix

@ -0,0 +1,34 @@
---
name: Build failure
about: Create a report to help us improve
title: ''
labels: '0.kind: build failure'
assignees: ''
---
### Steps To Reproduce
Steps to reproduce the behavior:
1. build *X*
### Build log
```
log here if short otherwise a link to a gist
```
### Additional context
Add any other context about the problem here.
### Notify maintainers
<!--
Please @ people who are in the `meta.maintainers` list of the offending package or module.
If in doubt, check `git blame` for whoever last touched something.
-->
### Metadata
Please run `nix-shell -p nix-info --run "nix-info -m"` and paste the result.
```console
[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
output here
```

@ -80,3 +80,49 @@ tests.fetchgit = invalidateFetcherByDrvHash fetchgit {
sha256 = "sha256-7DszvbCNTjpzGRmpIVAWXk20P0/XTrWZ79KSOGLrUWY=";
};
```
## `nixosTest` {#tester-nixosTest}
Run a NixOS VM network test using this evaluation of Nixpkgs.
NOTE: This function is primarily for external use. NixOS itself uses `make-test-python.nix` directly. Packages defined in Nixpkgs [reuse NixOS tests via `nixosTests`, plural](#ssec-nixos-tests-linking).
It is mostly equivalent to the function `import ./make-test-python.nix` from the
[NixOS manual](https://nixos.org/nixos/manual/index.html#sec-nixos-tests),
except that the current application of Nixpkgs (`pkgs`) will be used, instead of
letting NixOS invoke Nixpkgs anew.
If a test machine needs to set NixOS options under `nixpkgs`, it must set only the
`nixpkgs.pkgs` option.
### Parameter
A [NixOS VM test network](https://nixos.org/nixos/manual/index.html#sec-nixos-tests), or path to it. Example:
```nix
{
name = "my-test";
nodes = {
machine1 = { lib, pkgs, nodes, ... }: {
environment.systemPackages = [ pkgs.hello ];
services.foo.enable = true;
};
# machine2 = ...;
};
testScript = ''
start_all()
machine1.wait_for_unit("foo.service")
machine1.succeed("hello | foo-send")
'';
}
```
### Result
A derivation that runs the VM test.
Notable attributes:
* `nodes`: the evaluated NixOS configurations. Useful for debugging and exploring the configuration.
* `driverInteractive`: a script that launches an interactive Python session in the context of the `testScript`.

@ -1598,6 +1598,12 @@
githubId = 185443;
name = "Alexey Lebedeff";
};
binsky = {
email = "timo@binsky.org";
github = "binsky08";
githubId = 30630233;
name = "Timo Triebensky";
};
bjg = {
email = "bjg@gnu.org";
name = "Brian Gough";

@ -569,8 +569,9 @@
<listitem>
<para>
The NixOS VM test framework,
<literal>pkgs.nixosTest</literal>/<literal>make-test-python.nix</literal>,
now requires detaching commands such as
<literal>pkgs.nixosTest</literal>/<literal>make-test-python.nix</literal>
(<literal>pkgs.testers.nixosTest</literal> since 22.05), now
requires detaching commands such as
<literal>succeed(&quot;foo &amp;&quot;)</literal> and
<literal>succeed(&quot;foo | xclip -i&quot;)</literal> to
close stdout. This can be done with a redirect such as

@ -166,7 +166,7 @@ In addition to numerous new and upgraded packages, this release has the followin
## Backward Incompatibilities {#sec-release-21.11-incompatibilities}
- The NixOS VM test framework, `pkgs.nixosTest`/`make-test-python.nix`, now requires detaching commands such as `succeed("foo &")` and `succeed("foo | xclip -i")` to close stdout.
- The NixOS VM test framework, `pkgs.nixosTest`/`make-test-python.nix` (`pkgs.testers.nixosTest` since 22.05), now requires detaching commands such as `succeed("foo &")` and `succeed("foo | xclip -i")` to close stdout.
This can be done with a redirect such as `succeed("foo >&2 &")`. This breaking change was necessitated by a race condition causing tests to fail or hang.
It applies to all methods that invoke commands on the nodes, including `execute`, `succeed`, `fail`, `wait_until_succeeds`, `wait_until_fails`.

@ -38,7 +38,7 @@ rec {
{ key = "no-revision";
# Make the revision metadata constant, in order to avoid needless retesting.
# The human version (e.g. 21.05-pre) is left as is, because it is useful
# for external modules that test with e.g. nixosTest and rely on that
# for external modules that test with e.g. testers.nixosTest and rely on that
# version number.
config.system.nixos.revision = mkForce "constant-nixos-revision";
}

@ -119,6 +119,7 @@ rec {
passthru = passthru // {
inherit nodes;
};
meta.mainProgram = "nixos-test-driver";
}
''
mkdir -p $out/bin

@ -701,6 +701,85 @@ in {
'';
};
bcachefsSimple = makeInstallerTest "bcachefs-simple" {
extraInstallerConfig = {
boot.supportedFilesystems = [ "bcachefs" ];
};
createPartitions = ''
machine.succeed(
"flock /dev/vda parted --script /dev/vda -- mklabel msdos"
+ " mkpart primary ext2 1M 100MB" # /boot
+ " mkpart primary linux-swap 100M 1024M" # swap
+ " mkpart primary 1024M -1s", # /
"udevadm settle",
"mkswap /dev/vda2 -L swap",
"swapon -L swap",
"mkfs.bcachefs -L root /dev/vda3",
"mount -t bcachefs /dev/vda3 /mnt",
"mkfs.ext3 -L boot /dev/vda1",
"mkdir -p /mnt/boot",
"mount /dev/vda1 /mnt/boot",
)
'';
};
bcachefsEncrypted = makeInstallerTest "bcachefs-encrypted" {
extraInstallerConfig = {
boot.supportedFilesystems = [ "bcachefs" ];
environment.systemPackages = with pkgs; [ keyutils ];
};
# We don't want to use the normal way of unlocking bcachefs defined in tasks/filesystems/bcachefs.nix.
# So, override initrd.postDeviceCommands completely and simply unlock with the predefined password.
extraConfig = ''
boot.initrd.postDeviceCommands = lib.mkForce "echo password | bcachefs unlock /dev/vda3";
'';
createPartitions = ''
machine.succeed(
"flock /dev/vda parted --script /dev/vda -- mklabel msdos"
+ " mkpart primary ext2 1M 100MB" # /boot
+ " mkpart primary linux-swap 100M 1024M" # swap
+ " mkpart primary 1024M -1s", # /
"udevadm settle",
"mkswap /dev/vda2 -L swap",
"swapon -L swap",
"keyctl link @u @s",
"echo password | mkfs.bcachefs -L root --encrypted /dev/vda3",
"echo password | bcachefs unlock /dev/vda3",
"mount -t bcachefs /dev/vda3 /mnt",
"mkfs.ext3 -L boot /dev/vda1",
"mkdir -p /mnt/boot",
"mount /dev/vda1 /mnt/boot",
)
'';
};
bcachefsMulti = makeInstallerTest "bcachefs-multi" {
extraInstallerConfig = {
boot.supportedFilesystems = [ "bcachefs" ];
};
createPartitions = ''
machine.succeed(
"flock /dev/vda parted --script /dev/vda -- mklabel msdos"
+ " mkpart primary ext2 1M 100MB" # /boot
+ " mkpart primary linux-swap 100M 1024M" # swap
+ " mkpart primary 1024M 4096M" # /
+ " mkpart primary 4096M -1s", # /
"udevadm settle",
"mkswap /dev/vda2 -L swap",
"swapon -L swap",
"mkfs.bcachefs -L root --metadata_replicas 2 --foreground_target ssd --promote_target ssd --background_target hdd --label ssd /dev/vda3 --label hdd /dev/vda4",
"mount -t bcachefs /dev/vda3:/dev/vda4 /mnt",
"mkfs.ext3 -L boot /dev/vda1",
"mkdir -p /mnt/boot",
"mount /dev/vda1 /mnt/boot",
)
'';
};
# Test a basic install using GRUB 1.
grub1 = makeInstallerTest "grub1" rec {
createPartitions = ''

@ -94,7 +94,7 @@ stdenv.mkDerivation rec {
postInstall = ''
wrapProgram $out/bin/exaile \
--set PYTHONPATH $PYTHONPATH \
${lib.optionalString streamripperSupport "--prefix PATH : ${lib.makeBinPath [ streamripper ]}"}
--prefix PATH : ${lib.makeBinPath ([ python3 ] ++ lib.optionals streamripperSupport [ streamripper ]) }
'';
meta = with lib; {

@ -0,0 +1,14 @@
diff --git a/src/musikcube/CMakeLists.txt b/src/musikcube/CMakeLists.txt
index f42748aa..ae339946 100644
--- a/src/musikcube/CMakeLists.txt
+++ b/src/musikcube/CMakeLists.txt
@@ -98,9 +98,6 @@ else()
endif()
if (APPLE)
- message(STATUS "[ncurses] detected Darwin, linking statically")
- set(CURSES_LIBRARY_NAME "lib${CURSES_LIBRARY_NAME}.a")
- set(PANEL_LIBRARY_NAME "lib${PANEL_LIBRARY_NAME}.a")
else()
message(STATUS "[ncurses] not Darwin! will attempt to link against libtinfo")
find_library(LIBTINFO NAMES tinfo)

@ -1,6 +1,5 @@
{ cmake
, pkg-config
, alsa-lib
, boost
, curl
, fetchFromGitHub
@ -11,12 +10,17 @@
, libev
, libmicrohttpd
, ncurses
, pulseaudio
, lib
, stdenv
, taglib
# Linux Dependencies
, alsa-lib
, pulseaudio
, systemdSupport ? stdenv.isLinux
, systemd
# Darwin Dependencies
, Cocoa
, SystemConfiguration
}:
stdenv.mkDerivation rec {
@ -38,14 +42,15 @@ stdenv.mkDerivation rec {
url = "https://github.com/clangen/musikcube/commit/1240720e27232fdb199a4da93ca6705864442026.patch";
sha256 = "0bhjgwnj6d24wb1m9xz1vi1k9xk27arba1absjbcimggn54pinid";
})
./0001-apple-cmake.patch
];
nativeBuildInputs = [
cmake
pkg-config
];
buildInputs = [
alsa-lib
boost
curl
ffmpeg
@ -54,9 +59,14 @@ stdenv.mkDerivation rec {
libev
libmicrohttpd
ncurses
pulseaudio
taglib
] ++ lib.optional systemdSupport systemd;
] ++ lib.optional systemdSupport [
systemd
] ++ lib.optional stdenv.isLinux [
alsa-lib pulseaudio
] ++ lib.optional stdenv.isDarwin [
Cocoa SystemConfiguration
];
cmakeFlags = [
"-DDISABLE_STRIP=true"

@ -0,0 +1,63 @@
{ lib, stdenv, fetchFromGitHub, fetchpatch
, cmake, pkg-config
, boost, miniupnpc, openssl, unbound
, zeromq, pcsclite, readline, libsodium, hidapi
, randomx, rapidjson
, easyloggingpp
, CoreData, IOKit, PCSC
, trezorSupport ? true, libusb1, protobuf, python3
}:
stdenv.mkDerivation rec {
pname = "haven-cli";
version = "2.2.3";
src = fetchFromGitHub {
owner = "haven-protocol-org";
repo = "haven-main";
rev = "v${version}";
sha256 = "sha256-nBVLNT0jWIewr6MPDGwDqXoVtyFLyls1IEQraVoWDQ4=";
fetchSubmodules = true;
};
patches = [
./use-system-libraries.patch
];
postPatch = ''
# remove vendored libraries
rm -r external/{miniupnp,randomx,rapidjson,unbound}
# export patched source for haven-gui
cp -r . $source
'';
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [
boost miniupnpc openssl unbound
zeromq pcsclite readline
libsodium hidapi randomx rapidjson
protobuf
readline easyloggingpp
]
++ lib.optionals trezorSupport [ libusb1 protobuf python3 ];
cmakeFlags = [
"-DCMAKE_BUILD_TYPE=Release"
"-DUSE_DEVICE_TREZOR=ON"
"-DBUILD_GUI_DEPS=ON"
"-DReadline_ROOT_DIR=${readline.dev}"
"-DReadline_INCLUDE_DIR=${readline.dev}/include/readline"
"-DRandomX_ROOT_DIR=${randomx}"
] ++ lib.optional stdenv.isDarwin "-DBoost_USE_MULTITHREADED=OFF";
outputs = [ "out" "source" ];
meta = with lib; {
description = "Haven Protocol is the world's only network of private stable asset";
homepage = "https://havenprotocol.org/";
license = licenses.bsd3;
platforms = platforms.all;
maintainers = with maintainers; [ kim0 ];
};
}

@ -0,0 +1,92 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index fb71d2d..3a710a4 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -200,11 +200,11 @@ if(NOT MANUAL_SUBMODULES)
endfunction ()
message(STATUS "Checking submodules")
- check_submodule(external/miniupnp)
- check_submodule(external/unbound)
- check_submodule(external/rapidjson)
+ # check_submodule(external/miniupnp)
+ # check_submodule(external/unbound)
+ # check_submodule(external/rapidjson)
check_submodule(external/trezor-common)
- check_submodule(external/randomx)
+ # check_submodule(external/randomx)
endif()
endif()
@@ -300,7 +300,8 @@ endif()
# elseif(CMAKE_SYSTEM_NAME MATCHES ".*BSDI.*")
# set(BSDI TRUE)
-include_directories(external/rapidjson/include external/easylogging++ src contrib/epee/include external)
+include_directories(external/easylogging++ src contrib/epee/include external)
+#include_directories(external/rapidjson/include external/easylogging++ src contrib/epee/include external)
if(APPLE)
include_directories(SYSTEM /usr/include/malloc)
diff --git a/cmake/FindMiniupnpc.cmake b/cmake/FindMiniupnpc.cmake
index ad2004a..7f4bb68 100644
--- a/cmake/FindMiniupnpc.cmake
+++ b/cmake/FindMiniupnpc.cmake
@@ -37,7 +37,7 @@ set(MINIUPNP_STATIC_LIBRARIES ${MINIUPNP_STATIC_LIBRARY})
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(
- MiniUPnPc DEFAULT_MSG
+ Miniupnpc DEFAULT_MSG
MINIUPNP_INCLUDE_DIR
MINIUPNP_LIBRARY
)
diff --git a/external/CMakeLists.txt b/external/CMakeLists.txt
index 71b165f..10189ce 100644
--- a/external/CMakeLists.txt
+++ b/external/CMakeLists.txt
@@ -37,19 +37,9 @@
find_package(Miniupnpc REQUIRED)
-message(STATUS "Using in-tree miniupnpc")
-add_subdirectory(miniupnp/miniupnpc)
-set_property(TARGET libminiupnpc-static PROPERTY FOLDER "external")
-if(MSVC)
- set_property(TARGET libminiupnpc-static APPEND_STRING PROPERTY COMPILE_FLAGS " -wd4244 -wd4267")
-elseif(NOT MSVC)
- set_property(TARGET libminiupnpc-static APPEND_STRING PROPERTY COMPILE_FLAGS " -Wno-undef -Wno-unused-result -Wno-unused-value")
-endif()
-if(CMAKE_SYSTEM_NAME MATCHES "NetBSD")
- set_property(TARGET libminiupnpc-static APPEND_STRING PROPERTY COMPILE_FLAGS " -D_NETBSD_SOURCE")
-endif()
-
-set(UPNP_LIBRARIES "libminiupnpc-static" PARENT_SCOPE)
+set(UPNP_STATIC false PARENT_SCOPE)
+set(UPNP_INCLUDE ${MINIUPNP_INCLUDE_DIR} PARENT_SCOPE)
+set(UPNP_LIBRARIES ${MINIUPNP_LIBRARY} PARENT_SCOPE)
find_package(Unbound)
@@ -80,4 +70,3 @@ endif()
add_subdirectory(db_drivers)
add_subdirectory(easylogging++)
-add_subdirectory(randomx EXCLUDE_FROM_ALL)
diff --git a/src/p2p/net_node.inl b/src/p2p/net_node.inl
index c626e22..be570ed 100644
--- a/src/p2p/net_node.inl
+++ b/src/p2p/net_node.inl
@@ -60,9 +60,9 @@
#include "cryptonote_core/cryptonote_core.h"
#include "net/parse.h"
-#include <miniupnp/miniupnpc/miniupnpc.h>
-#include <miniupnp/miniupnpc/upnpcommands.h>
-#include <miniupnp/miniupnpc/upnperrors.h>
+#include <miniupnpc/miniupnpc.h>
+#include <miniupnpc/upnpcommands.h>
+#include <miniupnpc/upnperrors.h>
#undef MONERO_DEFAULT_LOG_CATEGORY
#define MONERO_DEFAULT_LOG_CATEGORY "net.p2p"

@ -6,6 +6,7 @@
, cacert
, coreutils
, dbus
, e2fsprogs
, expat
, fetchurl
, findutils
@ -117,6 +118,9 @@ let
libXrender
libXtst
# No crash, but attempted to load at startup
e2fsprogs
# Gradle wants libstdc++.so.6
stdenv.cc.cc.lib
# mksdcard wants 32 bit libstdc++.so.6

@ -4,13 +4,13 @@
stdenv.mkDerivation rec {
pname = "thiefmd";
version = "0.2.4";
version = "0.2.5-stability";
src = fetchFromGitHub {
owner = "kmwallio";
repo = "ThiefMD";
rev = "v${version}-easypdf";
sha256 = "sha256-YN17o6GtpulxhXs+XYZLY36g9S8ggR6URNLrjs5PEoI=";
rev = "v${version}";
sha256 = "sha256-cUZ7NVGe4e9ZISo9gjWFuDNCyF3rsQtrDX+ureyqtwM=";
fetchSubmodules = true;
};

@ -6,39 +6,45 @@
, pkg-config
, fribidi
, harfbuzz
, libunistring
, libwebp
, mpg123
, openssl
, pcre
, SDL2
, the-foundation
, AppKit
, zip
, zlib
, enableTUI ? false, ncurses, sealcurses
}:
stdenv.mkDerivation rec {
pname = "lagrange";
version = "1.12.2";
version = "1.13.3";
src = fetchFromGitHub {
owner = "skyjake";
repo = "lagrange";
rev = "v${version}";
sha256 = "sha256-AVitXfHIJmCBBkhg+DLkHeCSoyH6YMaTMaa4REDXEFg=";
fetchSubmodules = true;
sha256 = "sha256-ZCG7i5WmhONockaTt/YCww7N+WvxCX2DIwQIFjAk+K8=";
};
postPatch = ''
rm -r lib/fribidi lib/harfbuzz
'';
nativeBuildInputs = [ cmake pkg-config zip ];
buildInputs = [ fribidi harfbuzz libunistring libwebp mpg123 openssl pcre SDL2 zlib ]
buildInputs = [ the-foundation ]
++ lib.optionals (!enableTUI) [ fribidi harfbuzz libwebp mpg123 SDL2 ]
++ lib.optionals enableTUI [ ncurses sealcurses ]
++ lib.optional stdenv.isDarwin AppKit;
installPhase = lib.optionalString stdenv.isDarwin ''
cmakeFlags = lib.optionals enableTUI [
"-DENABLE_TUI=YES"
"-DENABLE_MPG123=NO"
"-DENABLE_WEBP=NO"
"-DENABLE_FRIBIDI=NO"
"-DENABLE_HARFBUZZ=NO"
"-DENABLE_POPUP_MENUS=NO"
"-DENABLE_IDLE_SLEEP=NO"
"-DCMAKE_INSTALL_DATADIR=${placeholder "out"}/share"
];
installPhase = lib.optionalString (stdenv.isDarwin && !enableTUI) ''
mkdir -p $out/Applications
mv Lagrange.app $out/Applications
'';

@ -0,0 +1,44 @@
{ lib, buildGoModule, fetchFromGitHub, installShellFiles, testVersion, roxctl }:
buildGoModule rec {
pname = "roxctl";
version = "3.69.1";
src = fetchFromGitHub {
owner = "stackrox";
repo = "stackrox";
rev = version;
sha256 = "sha256-fB43C+gMtUOg/Ah1fOTnOWOUmS0TjXkNCzw/TKfMzj4=";
};
vendorSha256 = "sha256-M+ZueycJEaDVzC2bFwQc5EulCrdz6lvzyD8YCoGyW1g=";
nativeBuildInputs = [ installShellFiles ];
subPackages = [ "roxctl" ];
ldflags = [
"-s"
"-w"
"-X github.com/stackrox/rox/pkg/version/internal.MainVersion=${version}"
];
postInstall = ''
installShellCompletion --cmd roxctl \
--bash <($out/bin/roxctl completion bash) \
--fish <($out/bin/roxctl completion fish) \
--zsh <($out/bin/roxctl completion zsh)
'';
passthru.tests.version = testVersion {
package = roxctl;
command = "roxctl version";
};
meta = with lib; {
description = "Command-line client of the StackRox Kubernetes Security Platform";
license = licenses.asl20;
homepage = "https://www.stackrox.io";
maintainers = with maintainers; [ stehessel ];
};
}

@ -1,48 +0,0 @@
{ lib, stdenv, fetchFromGitHub, nix-update-script, meson, ninja, pkg-config, vala, gettext, python3
, appstream-glib, desktop-file-utils, wrapGAppsHook, gnome-online-accounts
, gtk3, libgee, libpeas, librest, webkitgtk, gsettings-desktop-schemas
, curl, glib, gnome, gst_all_1, json-glib, libnotify, libsecret, sqlite, gumbo, libxml2
}:
stdenv.mkDerivation rec {
pname = "feedreader";
version = "2.11.0";
src = fetchFromGitHub {
owner = "jangernert";
repo = pname;
rev = "v${version}";
sha256 = "1agy1nkpkdsy2kbrrc8nrwphj5n86rikjjvwkr8klbf88mzl6civ";
};
nativeBuildInputs = [
meson ninja pkg-config vala gettext appstream-glib desktop-file-utils
libxml2 python3 wrapGAppsHook
];
buildInputs = [
curl glib json-glib libnotify libsecret sqlite gumbo gtk3
libgee libpeas gnome.libsoup librest webkitgtk gsettings-desktop-schemas
gnome-online-accounts
] ++ (with gst_all_1; [
gstreamer gst-plugins-base gst-plugins-good
]);
postPatch = ''
patchShebangs build-aux/meson_post_install.py
'';
passthru = {
updateScript = nix-update-script {
attrPath = pname;
};
};
meta = with lib; {
description = "A modern desktop application designed to complement existing web-based RSS accounts";
homepage = "https://jangernert.github.io/FeedReader/";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ edwtjo ];
platforms = platforms.linux;
};
}

@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
buildInputs = [ blas lapack ]
++ lib.optionals useMpi [ mpi scalapack ];
enableParallelBuilding = true;
enableParallelBuilding = false; # Started making trouble with gcc-11
# Must do manualy becuase siesta does not do the regular
# ./configure; make; make install
@ -35,17 +35,23 @@ stdenv.mkDerivation rec {
cp gfortran.make arch.make
'';
preBuild = if useMpi then ''
preBuild = ''
# See https://gitlab.com/siesta-project/siesta/-/commit/a10bf1628e7141ba263841889c3503c263de1582
# This may be fixed in the next release.
makeFlagsArray=(
FFLAGS="-fallow-argument-mismatch"
)
'' + (if useMpi then ''
makeFlagsArray+=(
CC="mpicc" FC="mpifort"
FPPFLAGS="-DMPI" MPI_INTERFACE="libmpi_f90.a" MPI_INCLUDE="."
COMP_LIBS="" LIBS="-lblas -llapack -lscalapack"
);
'' else ''
makeFlagsArray=(
makeFlagsArray+=(
COMP_LIBS="" LIBS="-lblas -llapack"
);
'';
'');
installPhase = ''
mkdir -p $out/bin

@ -97,7 +97,7 @@ rec {
};
# Same example, but re-fetches every time the fetcher implementation changes.
# NOTE: Only use this for testing, or you'd be wasting a lot of time, network and space.
testNixFromDockerHub = pkgs.invalidateFetcherByDrvHash pullImage {
testNixFromDockerHub = pkgs.testers.invalidateFetcherByDrvHash pullImage {
imageName = "nixos/nix";
imageDigest = "sha256:85299d86263a3059cf19f419f9d286cc9f06d3c13146a8ebbb21b3437f598357";
sha256 = "19fw0n3wmddahzr20mhdqv6jkjn1kanh6n2mrr08ai53dr8ph5n7";

@ -1,7 +1,7 @@
{ invalidateFetcherByDrvHash, fetchFirefoxAddon, fetchurl, ... }:
{ testers, fetchFirefoxAddon, fetchurl, ... }:
{
simple = invalidateFetcherByDrvHash fetchFirefoxAddon {
simple = testers.invalidateFetcherByDrvHash fetchFirefoxAddon {
name = "image-search-options";
# Chosen because its only 147KB
url = "https://addons.mozilla.org/firefox/downloads/file/3059971/image_search_options-3.0.12-fx.xpi";
@ -14,7 +14,7 @@
sha256 = "sha256-H73YWX/DKxvhEwKpWOo7orAQ7c/rQywpljeyxYxv0Gg=";
};
in
invalidateFetcherByDrvHash fetchFirefoxAddon {
testers.invalidateFetcherByDrvHash fetchFirefoxAddon {
name = "image-search-options";
src = image-search-options;
};

@ -1,14 +1,14 @@
{ invalidateFetcherByDrvHash, fetchgit, ... }:
{ testers, fetchgit, ... }:
{
simple = invalidateFetcherByDrvHash fetchgit {
simple = testers.invalidateFetcherByDrvHash fetchgit {
name = "nix-source";
url = "https://github.com/NixOS/nix";
rev = "9d9dbe6ed05854e03811c361a3380e09183f4f4a";
sha256 = "sha256-7DszvbCNTjpzGRmpIVAWXk20P0/XTrWZ79KSOGLrUWY=";
};
sparseCheckout = invalidateFetcherByDrvHash fetchgit {
sparseCheckout = testers.invalidateFetcherByDrvHash fetchgit {
name = "nix-source";
url = "https://github.com/NixOS/nix";
rev = "9d9dbe6ed05854e03811c361a3380e09183f4f4a";

@ -1,18 +1,18 @@
{ invalidateFetcherByDrvHash, fetchpatch, ... }:
{ testers, fetchpatch, ... }:
{
simple = invalidateFetcherByDrvHash fetchpatch {
simple = testers.invalidateFetcherByDrvHash fetchpatch {
url = "https://github.com/facebook/zstd/pull/2724/commits/e1f85dbca3a0ed5ef06c8396912a0914db8dea6a.patch";
sha256 = "sha256-PuYAqnJWAE+L9bsroOnnBGJhERW8LHrGSLtIEkKU9vg=";
};
relative = invalidateFetcherByDrvHash fetchpatch {
relative = testers.invalidateFetcherByDrvHash fetchpatch {
url = "https://github.com/boostorg/math/commit/7d482f6ebc356e6ec455ccb5f51a23971bf6ce5b.patch";
relative = "include";
sha256 = "sha256-KlmIbixcds6GyKYt1fx5BxDIrU7msrgDdYo9Va/KJR4=";
};
full = invalidateFetcherByDrvHash fetchpatch {
full = testers.invalidateFetcherByDrvHash fetchpatch {
url = "https://github.com/boostorg/math/commit/7d482f6ebc356e6ec455ccb5f51a23971bf6ce5b.patch";
relative = "test";
stripLen = 1;

@ -1,15 +1,15 @@
{ invalidateFetcherByDrvHash, fetchYarnDeps, ... }:
{ testers, fetchYarnDeps, ... }:
{
simple = invalidateFetcherByDrvHash fetchYarnDeps {
simple = testers.invalidateFetcherByDrvHash fetchYarnDeps {
yarnLock = ./simple.lock;
sha256 = "sha256-Erdkw2E8wWT09jFNLXGkrdwKl0HuSZWnUDJUrV95vSE=";
};
gitDep = invalidateFetcherByDrvHash fetchYarnDeps {
gitDep = testers.invalidateFetcherByDrvHash fetchYarnDeps {
yarnLock = ./git.lock;
sha256 = "sha256-lAqN4LpoE+jgsQO1nDtuORwcVEO7ogEV53jCu2jFJUI=";
};
githubDep = invalidateFetcherByDrvHash fetchYarnDeps {
githubDep = testers.invalidateFetcherByDrvHash fetchYarnDeps {
yarnLock = ./github.lock;
sha256 = "sha256-Tsfgyjxz8x6gNmfN0xR7G/NQNoEs4svxRN/N+26vfJU=";
};

@ -1,4 +1,4 @@
{ pkgs, lib, callPackage, runCommand }:
{ pkgs, lib, callPackage, runCommand, stdenv }:
# Documentation is in doc/builders/testers.chapter.md
{
testEqualDerivation = callPackage ./test-equal-derivation.nix { };
@ -15,4 +15,49 @@
echo "$output" >&2 && exit 1
fi
'';
# See doc/builders/testers.chapter.md or
# https://nixos.org/manual/nixpkgs/unstable/#tester-invalidateFetcherByDrvHash
invalidateFetcherByDrvHash = f: args:
let
drvPath = (f args).drvPath;
# It's safe to discard the context, because we don't access the path.
salt = builtins.unsafeDiscardStringContext (lib.substring 0 12 (baseNameOf drvPath));
# New derivation incorporating the original drv hash in the name
salted = f (args // { name = "${args.name or "source"}-salted-${salt}"; });
# Make sure we did change the derivation. If the fetcher ignores `name`,
# `invalidateFetcherByDrvHash` doesn't work.
checked =
if salted.drvPath == drvPath
then throw "invalidateFetcherByDrvHash: Adding the derivation hash to the fixed-output derivation name had no effect. Make sure the fetcher's name argument ends up in the derivation name. Otherwise, the fetcher will not be re-run when its implementation changes. This is important for testing."
else salted;
in checked;
# See doc/builders/testers.chapter.md or
# https://nixos.org/manual/nixpkgs/unstable/#tester-invalidateFetcherByDrvHash
nixosTest =
let
/* The nixos/lib/testing-python.nix module, preapplied with arguments that
* make sense for this evaluation of Nixpkgs.
*/
nixosTesting =
(import ../../../nixos/lib/testing-python.nix {
inherit (stdenv.hostPlatform) system;
inherit pkgs;
extraConfigurations = [(
{ lib, ... }: {
config.nixpkgs.pkgs = lib.mkDefault pkgs;
}
)];
});
in
test:
let
loadedTest = if builtins.typeOf test == "path"
then import test
else test;
calledTest = lib.toFunction loadedTest pkgs;
in
nixosTesting.makeTest calledTest;
}

@ -0,0 +1,8 @@
# Tests _for the testers_
cd nixpkgs
nix-build -A tests.testers
Tests generally derive their own correctness from simplicity, which in the
case of testers (themselves functions) does not always work out.
Hence the need for tests that test the testers.

@ -0,0 +1,27 @@
{ testers, lib, pkgs, ... }:
let
pkgs-with-overlay = pkgs.extend(final: prev: {
proof-of-overlay-hello = prev.hello;
});
dummyVersioning = {
revision = "test";
versionSuffix = "test";
label = "test";
};
in
lib.recurseIntoAttrs {
# Check that the wiring of nixosTest is correct.
# Correct operation of the NixOS test driver should be asserted elsewhere.
nixosTest-example = pkgs-with-overlay.testers.nixosTest ({ lib, pkgs, figlet, ... }: {
name = "nixosTest-test";
nodes.machine = { pkgs, ... }: {
system.nixos = dummyVersioning;
environment.systemPackages = [ pkgs.proof-of-overlay-hello figlet ];
};
testScript = ''
machine.succeed("hello | figlet >/dev/console")
'';
});
}

@ -1,4 +1,4 @@
{ lib, nixosTest, pkgs, writeText, hello, figlet, stdenvNoCC }:
{ lib, testers, pkgs, writeText, hello, figlet, stdenvNoCC }:
# -------------------------------------------------------------------------- #
#
@ -22,7 +22,7 @@ let
lib.attrValues (import file { inherit pkgs; })
);
in
nixosTest {
testers.nixosTest {
name = "nixpkgs-trivial-builders";
nodes.machine = { ... }: {
virtualisation.writableStore = true;

@ -1,4 +1,5 @@
{ lib, stdenv, fetchurl, meson, ninja, pkg-config, wrapGAppsHook, python3
{ lib, stdenv, fetchurl, fetchpatch
, meson, ninja, pkg-config, wrapGAppsHook, python3
, gettext, gnome, glib, gtk3, libgnome-games-support, gdk-pixbuf }:
stdenv.mkDerivation rec {
@ -10,9 +11,24 @@ stdenv.mkDerivation rec {
sha256 = "0h909a4mccf160hi0aimyicqhq2b0gk1dmqp7qwf87qghfrw6m00";
};
patches = [
# Pull upstream fix for -fno-common toolchains like gcc-10:
# https://gitlab.gnome.org/GNOME/atomix/-/merge_requests/2
(fetchpatch {
name = "fno-common.patch";
url = "https://gitlab.gnome.org/GNOME/atomix/-/commit/be7f44f1945a569494d46c60eaf6e7b39b2bb48b.patch";
sha256 = "0nrwl6kb1als9mxd5s0la45z63xwshqlnxqjaax32w8yrl6kz7l8";
})
];
nativeBuildInputs = [ meson ninja pkg-config gettext wrapGAppsHook python3 ];
buildInputs = [ glib gtk3 gdk-pixbuf libgnome-games-support gnome.adwaita-icon-theme ];
# When building with clang ceil() is not inlined:
# ld: src/libatomix.a.p/canvas_helper.c.o: undefined reference to symbol 'ceil@@GLIBC_2.2.5'
# https://gitlab.gnome.org/GNOME/atomix/-/merge_requests/3
NIX_LDFLAGS = "-lm";
postPatch = ''
chmod +x meson_post_install.py
patchShebangs meson_post_install.py

@ -3,7 +3,7 @@
extra-cmake-modules, kdoctools,
bluez-qt, kactivities, kauth, kconfig, kdbusaddons,
kglobalaccel, ki18n, kidletime, kio, knotifyconfig, kwayland, libkscreen,
ddcutil, networkmanager-qt, plasma-workspace, qtx11extras, solid, udev
networkmanager-qt, plasma-workspace, qtx11extras, solid, udev
}:
mkDerivation {
@ -13,9 +13,5 @@ mkDerivation {
kconfig kdbusaddons knotifyconfig solid udev bluez-qt kactivities kauth
kglobalaccel ki18n kio kidletime kwayland libkscreen
networkmanager-qt plasma-workspace qtx11extras
ddcutil
];
cmakeFlags = [
"-DHAVE_DDCUTIL=On"
];
}

@ -1,8 +1,21 @@
{ callPackage, fetchurl, ... } @ args:
{ callPackage, fetchurl, fetchpatch, ... } @ args:
callPackage ./generic.nix (args // rec {
version = "1.59.0";
boostBuildPatches = [
# Fixes a segfault on aarch64-darwin from an implicitly defined varargs function.
# https://github.com/boostorg/build/pull/238
(fetchpatch {
url = "https://github.com/boostorg/build/commit/48e9017139dd94446633480661e5447c7e0d8b1b.diff";
excludes = [
# Doesn't apply, isn't critical.
"src/engine/filesys.h"
];
sha256 = "sha256-/HLOJKBcGqcK9yBYKSRCSMmTNhCH3sSpK1s3OzkIqx8";
})
];
src = fetchurl {
url = "mirror://sourceforge/boost/boost_${builtins.replaceStrings ["."] ["_"] version}.tar.bz2";
sha256 = "1jj1aai5rdmd72g90a3pd8sw9vi32zad46xv5av8fhnr48ir6ykj";

@ -15,6 +15,7 @@
, enableNumpy ? false
, taggedLayout ? ((enableRelease && enableDebug) || (enableSingleThreaded && enableMultiThreaded) || (enableShared && enableStatic))
, patches ? []
, boostBuildPatches ? []
, useMpi ? false
, mpi
, extraB2Args ? []
@ -170,6 +171,10 @@ stdenv.mkDerivation {
(stdenv.hostPlatform.isMips64n64 && (versionOlder version "1.65"));
};
passthru = {
inherit boostBuildPatches;
};
preConfigure = optionalString useMpi ''
cat << EOF >> user-config.jam
using mpi : ${mpi}/bin/mpiCC ;

@ -7,6 +7,21 @@
# LCD filtering is also known as ClearType and covered by several Microsoft patents.
# This option allows it to be disabled. See http://www.freetype.org/patents.html.
useEncumberedCode ? true
# for passthru.tests
, cairo
, fontforge
, ghostscript
, graphicsmagick
, gtk3
, harfbuzz
, imagemagick
, pango
, poppler
, python3
, qt5
, texmacs
, ttfautohint
}:
@ -52,6 +67,23 @@ stdenv.mkDerivation rec {
--set PKG_CONFIG_PATH "$PKG_CONFIG_PATH:$dev/lib/pkgconfig"
'';
passthru.tests = {
inherit
cairo
fontforge
ghostscript
graphicsmagick
gtk3
harfbuzz
imagemagick
pango
poppler
texmacs
ttfautohint;
inherit (python3.pkgs) freetype-py;
inherit (qt5) qtbase;
};
meta = with lib; {
description = "A font rendering engine";
longDescription = ''

@ -0,0 +1,39 @@
{stdenv, lib, vala, meson, ninja, pkg-config, fetchFromGitea, gobject-introspection, glib, gtk3}:
stdenv.mkDerivation rec {
pname = "libgtkflow";
version = "0.8.0";
src = fetchFromGitea {
domain = "notabug.org";
owner = "grindhold";
repo = pname;
rev = version;
hash = "sha256:1m30rvj5hx3b4cj8lbzrxv4j8lp3hx4jlb8vpf4rh46vc1rdkxpz";
};
nativeBuildInputs = [
vala
meson
ninja
pkg-config
gobject-introspection
];
buildInputs = [
gtk3
glib
];
mesonFlags = [
"-Denable_valadoc=true"
];
meta = with lib; {
description = "Flow graph widget for GTK 3";
homepage = "https://notabug.org/grindhold/libgtkflow";
maintainers = with maintainers; [ grindhold ];
license = licenses.lgpl3Plus;
platforms = platforms.unix;
};
}

@ -1,4 +1,17 @@
{ lib, stdenv, fetchFromGitHub, nix-update-script }:
{ lib
, stdenv
, fetchFromGitHub
, nix-update-script
# for passthru.tests
, bazel
, chromium
, grpc
, haskellPackages
, mercurial
, ninja
, python3
}:
stdenv.mkDerivation rec {
pname = "re2";
@ -39,6 +52,16 @@ stdenv.mkDerivation rec {
updateScript = nix-update-script {
attrPath = pname;
};
tests = {
inherit
chromium
grpc
mercurial;
inherit (python3.pkgs)
fb-re2
google-re2;
haskellPackages-re2 = haskellPackages.re2;
};
};
meta = {

@ -0,0 +1,28 @@
{ lib, stdenv, fetchFromGitea, cmake, pkg-config, ncurses, the-foundation }:
stdenv.mkDerivation rec {
pname = "sealcurses";
version = "unstable-2022-04-28"; # No release yet
src = fetchFromGitea {
domain = "git.skyjake.fi";
owner = "skyjake";
repo = pname;
rev = "abf27cfd2567a0765aaa115cabab0abb7f862253";
hash = "sha256-c4zi/orHyr1hkuEisqZ9V8SaiH1IoxIbeGMrLBEkZ0A=";
};
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ ncurses the-foundation ];
cmakeFlags = [ "-DCMAKE_INSTALL_LIBDIR=lib" ];
meta = with lib; {
description = "SDL Emulation and Adaptation Layer for Curses (ncursesw)";
homepage = "https://git.skyjake.fi/skyjake/sealcurses";
license = licenses.bsd2;
maintainers = with maintainers; [ sikmir ];
platforms = platforms.unix;
};
}

@ -0,0 +1,36 @@
{ lib
, stdenv
, fetchFromGitea
, cmake
, pkg-config
, curl
, libunistring
, openssl
, pcre
, zlib
}:
stdenv.mkDerivation rec {
pname = "the-foundation";
version = "1.4.0";
src = fetchFromGitea {
domain = "git.skyjake.fi";
owner = "skyjake";
repo = "the_Foundation";
rev = "v${version}";
hash = "sha256-IHwWJryG4HcrW9Bf8KJrisCrbF86RBQj6Xl1HTmcr6k=";
};
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ curl libunistring openssl pcre zlib ];
meta = with lib; {
description = "Opinionated C11 library for low-level functionality";
homepage = "https://git.skyjake.fi/skyjake/the_Foundation";
license = licenses.bsd2;
maintainers = with maintainers; [ sikmir ];
platforms = platforms.unix;
};
}

@ -97,5 +97,7 @@ in stdenv.mkDerivation rec {
license = licenses.gpl2Only;
platforms = platforms.unix;
maintainers = with maintainers; [ abbradar ];
# no match for 'operator!='
broken = true;
};
}

@ -16,7 +16,7 @@
}:
buildPythonPackage rec {
version = "5.0.1";
version = "5.0.2";
pname = "approvaltests";
format = "setuptools";
@ -27,7 +27,7 @@ buildPythonPackage rec {
owner = "approvals";
repo = "ApprovalTests.Python";
rev = "refs/tags/v${version}";
sha256 = "sha256-lmH/nw/7woLCDepR/rDQUqwrhuLFY+TO8sdgK1+apgc=";
sha256 = "sha256-yEzfDbYHGm3Za4+yIk5lIWM4I+5TnqfluZj8OLN9oK0=";
};
propagatedBuildInputs = [

@ -30,7 +30,7 @@ buildPythonPackage rec {
chmod +w -R source/tests
'';
nativeBuildInputs = [
checkInputs = [
cmake
];
@ -46,8 +46,8 @@ buildPythonPackage rec {
meta = with lib; {
description = "EditorConfig File Locator and Interpreter for Python";
homepage = "https://editorconfig.org";
homepage = "https://github.com/editorconfig/editorconfig-core-py";
license = licenses.psfl;
maintainers = with maintainers; [ ];
maintainers = with maintainers; [ SuperSandro2000 ];
};
}

@ -26,7 +26,7 @@
buildPythonPackage rec {
pname = "exchangelib";
version = "4.7.2";
version = "4.7.3";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -34,8 +34,8 @@ buildPythonPackage rec {
src = fetchFromGitHub {
owner = "ecederstrand";
repo = pname;
rev = "v${version}";
hash = "sha256-fdYc+fJEePgCzAkUWz7pmL/CI/O9zm5G9xh1f4bhrH4=";
rev = "refs/tags/v${version}";
hash = "sha256-79113cUVl07oeXjlDaqfdfwNZvD7EWJK8JKHsPnBRG8=";
};
propagatedBuildInputs = [

@ -80,6 +80,11 @@ buildPythonPackage rec {
"tests"
];
disabledTestPaths = [
# needs a running server
"tests/asgi/test_asgi_servers.py"
];
meta = with lib; {
description = "An unladen web framework for building APIs and app backends";
homepage = "https://falconframework.org/";

@ -3,17 +3,18 @@
, fetchPypi
, twisted
, passlib
, pyopenssl
, pyparsing
, service-identity
, six
, zope_interface
, isPy3k
, pythonOlder
, python
}:
buildPythonPackage rec {
pname = "ldaptor";
version = "21.2.0";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
@ -21,18 +22,27 @@ buildPythonPackage rec {
};
propagatedBuildInputs = [
twisted passlib pyopenssl pyparsing service-identity zope_interface
];
passlib
pyparsing
six
twisted
zope_interface
] ++ twisted.extras-require.tls;
disabled = !isPy3k;
checkInputs = [
twisted
];
checkPhase = ''
${python.interpreter} -m twisted.trial ldaptor
trial -j$NIX_BUILD_CORES ldaptor
'';
meta = {
meta = with lib; {
description = "A Pure-Python Twisted library for LDAP";
homepage = "https://github.com/twisted/ldaptor";
license = lib.licenses.mit;
license = licenses.mit;
maintainers = with maintainers; [ SuperSandro2000 ];
# tests hang or fail with "no space left on device"
broken = true;
};
}

@ -56,5 +56,6 @@ buildPythonPackage rec {
homepage = "https://github.com/ProtonMail/proton-python-client";
license = licenses.gpl3Only;
maintainers = with maintainers; [ wolfangaukang ];
platforms = platforms.linux;
};
}

@ -53,5 +53,6 @@ buildPythonPackage rec {
homepage = "https://github.com/ProtonVPN/protonvpn-nm-lib";
license = licenses.gpl3Only;
maintainers = with maintainers; [ wolfangaukang ];
platforms = platforms.linux;
};
}

@ -1,43 +1,32 @@
{ lib
, buildPythonPackage
, fetchPypi
, matchpy
, pytools
, pytest
, six
, sympy
, pexpect
, symengine
, pytestCheckHook
}:
buildPythonPackage rec {
pname = "pymbolic";
version = "2021.1";
version = "2022.1";
src = fetchPypi {
inherit pname version;
sha256 = "67d08ef95568408901e59f79591ba41fd3f2caaecb42b7497c38fc82fd60358c";
sha256 = "sha256-tS9FHdC5gD4D3jMgrzt85XIwcAYcbSMcACFvbaQlkBI=";
};
postConfigure = ''
substituteInPlace setup.py \
--replace "\"pytest>=2.3\"," ""
'';
checkInputs = [ sympy pexpect symengine pytest ];
propagatedBuildInputs = [
pytools
six
];
# too many tests fail
doCheck = false;
checkPhase = ''
pytest test
'';
checkInputs = [
matchpy
pytestCheckHook
];
meta = with lib; {
description = "A package for symbolic computation";
homepage = "https://mathema.tician.de/software/pymbolic";
homepage = "https://documen.tician.de/pymbolic/";
license = licenses.mit;
maintainers = [ maintainers.costrouc ];
};

@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "pyrogram";
version = "2.0.17";
version = "2.0.19";
disabled = pythonOlder "3.7";
@ -20,7 +20,7 @@ buildPythonPackage rec {
owner = "pyrogram";
repo = "pyrogram";
rev = "v${version}";
hash = "sha256-MzbZVG6/+YirgKsfrsSaT6jS0fTq/TBhlduZzgQKU+M=";
hash = "sha256-HcUawiKlPS0zqB5kEScfV82xnLG0n62owzK5upOLn4I=";
};
propagatedBuildInputs = [

@ -9,7 +9,7 @@
buildPythonPackage rec {
pname = "pyskyqremote";
version = "0.3.6";
version = "0.3.7";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -18,7 +18,7 @@ buildPythonPackage rec {
owner = "RogerSelwyn";
repo = "skyq_remote";
rev = "refs/tags/${version}";
sha256 = "sha256-CCbLRb8eoMuYH3it2onfiUzHLW6sirePR/lqATpp4K0=";
sha256 = "sha256-VdoAtY+uZ4M6UNjYplqxx8S11eyKzqypW7IYCXOO2kQ=";
};
propagatedBuildInputs = [

@ -0,0 +1,42 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, pythonOlder
, pycryptodome
, python
}:
buildPythonPackage rec {
pname = "sjcl";
version = "0.2.1";
format = "setuptools";
# PyPi release is missing tests
src = fetchFromGitHub {
owner = "berlincode";
repo = pname;
# commit from: 2018-08-16, because there aren't any tags on git
rev = "e8bdad312fa99c89c74f8651a1240afba8a9f3bd";
sha256 = "1v8rc55v28v8cl7nxcavj34am005wi63zcvwnbc6pyfbv4ss30ab";
};
propagatedBuildInputs = [ pycryptodome ];
checkPhase = ''
runHook preCheck
${python.interpreter} -m unittest discover
runHook postCheck
'';
pythonImportsCheck = [
"sjcl"
];
meta = with lib; {
description = "Decrypt and encrypt messages compatible to the \"Stanford Javascript Crypto Library (SJCL)\" message format. This is a wrapper around pycrypto.";
homepage = "https://github.com/berlincode/sjcl";
license = licenses.bsd3;
maintainers = with maintainers; [ binsky ];
};
}

@ -5,7 +5,6 @@
, pytest-asyncio
, pytestCheckHook
, pythonOlder
, six
, twisted
, zope_interface
}:

@ -1,4 +1,5 @@
{ lib
, stdenv
, buildPythonPackage
, fetchFromGitHub
, pythonOlder
@ -41,5 +42,6 @@ buildPythonPackage rec {
homepage = "https://github.com/harfbuzz/uharfbuzz";
license = licenses.asl20;
maintainers = with maintainers; [ wolfangaukang ];
broken = stdenv.isDarwin;
};
}

@ -10,7 +10,7 @@
buildPythonPackage rec {
pname = "zeroconf";
version = "0.38.5";
version = "0.38.6";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -19,7 +19,7 @@ buildPythonPackage rec {
owner = "jstasiak";
repo = "python-zeroconf";
rev = version;
hash = "sha256-QmmVxrvBPEwsmD/XJZClNQj4PUX+7X+75ZWSOO4/C24=";
hash = "sha256-P5yAXh/5J5/giOZTOuk9ay3PF8MNxPOJgtoWeX7xxFk=";
};
propagatedBuildInputs = [
@ -39,7 +39,7 @@ buildPythonPackage rec {
"test_launch_and_close_v4_v6"
"test_launch_and_close_v6_only"
"test_integration_with_listener_ipv6"
# Starting with 0.38.5: AssertionError: assert [('add', '_ht..._tcp.local.')]
# Starting with 0.38.6: AssertionError: assert [('add', '_ht..._tcp.local.')]
"test_service_browser_expire_callbacks"
] ++ lib.optionals stdenv.isDarwin [
"test_lots_of_names"

@ -1,4 +1,4 @@
{ lib, stdenv, qmake, qtbase, perl, python2, php, kcachegrind, wrapQtAppsHook }:
{ lib, stdenv, qmake, qtbase, perl, php, kcachegrind, wrapQtAppsHook }:
stdenv.mkDerivation {
pname = "qcachegrind";
@ -6,7 +6,7 @@ stdenv.mkDerivation {
src = kcachegrind.src;
buildInputs = [ qtbase perl python2 php ];
buildInputs = [ qtbase perl php ];
nativeBuildInputs = [ qmake wrapQtAppsHook ];
@ -15,7 +15,6 @@ stdenv.mkDerivation {
postInstall = ''
mkdir -p $out/bin
cp -p converters/dprof2calltree $out/bin/dprof2calltree
cp -p converters/hotshot2calltree.in $out/bin/hotshot2calltree
cp -p converters/memprof2calltree $out/bin/memprof2calltree
cp -p converters/op2calltree $out/bin/op2calltree
cp -p converters/pprof2calltree $out/bin/pprof2calltree

@ -33,6 +33,8 @@ stdenv.mkDerivation {
sourceRoot="$sourceRoot/tools/build"
'';
patches = useBoost.boostBuildPatches or [];
# Upstream defaults to gcc on darwin, but we use clang.
postPatch = ''
substituteInPlace src/build-system.jam \

@ -2,15 +2,15 @@
buildGoModule rec {
pname = "conftest";
version = "0.31.0";
version = "0.32.0";
src = fetchFromGitHub {
owner = "open-policy-agent";
repo = "conftest";
rev = "v${version}";
sha256 = "sha256-p3EzJLq+LH8G8P7x6+47XWn8ckFeW2O7xhQGoRQDOOQ=";
sha256 = "sha256-fPg3376QtbjrUJWZxjRqEFL2cWy1xb7vUX1Lfp5WFmY=";
};
vendorSha256 = "sha256-WFR0DtOz4dteRWWaqjTIiyTpBTnH6qKivH9t+gRWsvg=";
vendorSha256 = "sha256-/RfIjCI2RMktUSVEoyJqMwdmlW6lGvXanX7RBxiaTyE=";
ldflags = [
"-s"

@ -26,6 +26,7 @@ let
in stdenv.mkDerivation rec {
pname = "laminar";
version = "1.2";
outputs = [ "out" "doc" ];
src = fetchFromGitHub {
owner = "ohwgiles";
repo = "laminar";

@ -2,14 +2,14 @@
rustPlatform.buildRustPackage rec {
pname = "dprint";
version = "0.26.0";
version = "0.27.0";
src = fetchCrate {
inherit pname version;
sha256 = "sha256-s8M7xQTADPVRGM3Cu2jmNrdMWBRKNLWsRlXnnB+FHH4=";
sha256 = "sha256-F/uO4hkVL0PczR59TxCTSOOKnQQQoxvAD8b1p1YdcjY=";
};
cargoSha256 = "sha256-UaD85fCWWYyDNF/HiWDRVpQD0snhiQtEWfIq7GSoZts=";
cargoSha256 = "sha256-B9nVsm/ml2hm+Yr6io4tf4JQsPRCtG7dBJQvF2WwWm0=";
buildInputs = lib.optionals stdenv.isDarwin [ Security ];

@ -1,4 +1,4 @@
{lib, stdenv, fetchurl, gtk2, pkg-config }:
{lib, stdenv, fetchurl, fetchpatch, gtk2, pkg-config }:
stdenv.mkDerivation rec {
pname = "gtkdialog";
@ -8,6 +8,14 @@ stdenv.mkDerivation rec {
url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/${pname}/${pname}-${version}.tar.gz";
sha256 = "ff89d2d7f1e6488e5df5f895716ac1d4198c2467a2a5dc1f51ab408a2faec38e";
};
patches = [
# Pull Gentoo patch for -fno-common toolchain fix.
(fetchpatch {
name = "fno-common.patch";
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/x11-misc/gtkdialog/files/gtkdialog-0.8.3-fno-common.patch?id=98692e4c4ad494b88c4902ca1ab3e6541190bbe8";
sha256 = "1mh01krzpfy7lbbqx3xm71xsiqqgg67w4snv794wspfqkk2hicvz";
})
];
nativeBuildInputs = [ pkg-config ];
buildInputs = [ gtk2 ];

@ -1,4 +1,4 @@
{ stdenv, apulse, libpulseaudio, pkg-config, intltool, autoreconfHook }:
{ stdenv, apulse, libpulseaudio, pkg-config, intltool }:
stdenv.mkDerivation {
pname = "libpressureaudio";
@ -6,7 +6,7 @@ stdenv.mkDerivation {
src = libpulseaudio.src;
nativeBuildInputs = [ pkg-config intltool autoreconfHook ];
nativeBuildInputs = [ pkg-config intltool ];
dontConfigure = true;
dontBuild = true;

@ -362,6 +362,13 @@ in {
ubootQemuRiscv64Smode = buildUBoot {
defconfig = "qemu-riscv64_smode_defconfig";
extraPatches = [
# https://patchwork.ozlabs.org/project/uboot/patch/20220128134713.2322800-1-alexandre.ghiti@canonical.com/
(fetchpatch {
url = "https://patchwork.ozlabs.org/series/283391/mbox/";
sha256 = "sha256-V0jDpx6O4bFzuaOQejdrRnLiWb5LBTx47T0TZqNtMXk=";
})
];
extraMeta.platforms = ["riscv64-linux"];
filesToInstall = ["u-boot.bin"];
};

@ -26,6 +26,7 @@ stdenv.mkDerivation rec {
];
meta = with lib; {
broken = kernel.kernelOlder "4.19";
description =
"Experimental implementation of a kvmclock-derived clocksource for Linux guests under OpenBSD's hypervisor";
homepage = "https://github.com/voutilad/vmm_clock";

@ -1 +1 @@
"0qqp05258s2ybzbxfklhya8zw9ha9crkxzwls2kfdhndlrdpgznl"
"1c8f7y580sq9495l2cxb2jkhgqs2wf0j3x073l1xnr9lv6crfvhn"

File diff suppressed because it is too large Load Diff

@ -7,10 +7,10 @@ let archString = if stdenv.isAarch64 then "arm64"
platformString = if stdenv.isDarwin then "osx"
else if stdenv.isLinux then "linux"
else throw "unsupported platform";
platformSha = if (stdenv.isDarwin && stdenv.isx86_64) then "sha256-h5zjn8wtgHmsJFiGq1rja6kZTZj3Q72W2kH3AexRDQs="
else if (stdenv.isDarwin && stdenv.isAarch64) then "sha256-NHM9ZUpBJb59Oq0Ke7DcvaN+bZ9MjSpXBRu5Ng9OVZ0="
else if (stdenv.isLinux && stdenv.isx86_64) then "sha256-QSL0lmxa7rGoNOx7JB310wF3VoUy96e9ZFop5rAvdBM="
else if (stdenv.isLinux && stdenv.isAarch64) then "sha256-bUacA4DwjDNlIG7yooXxUGL9AysAogNWuQDvcTqo1sE="
platformSha = if (stdenv.isDarwin && stdenv.isx86_64) then "sha256-VF8C9JXVureJnMTyQD4SDeq/whyQOpk1dFtu6cJQRO8="
else if (stdenv.isDarwin && stdenv.isAarch64) then "sha256-WqQQFdFTgIGi0fEtHjHf2rtP2l5YqdMQZH09O+34JTo="
else if (stdenv.isLinux && stdenv.isx86_64) then "sha256-oKlX6NfTOxrxMkH+vWGMMTyVJqD2F2CB5qx+8EvNBE8="
else if (stdenv.isLinux && stdenv.isAarch64) then "sha256-sWOmylDyy6n8SbnVDY5+wSJ2PPEd+vuoxbMU2iECyxY="
else throw "unsupported platform";
platformLdLibraryPath = if stdenv.isDarwin then "DYLD_FALLBACK_LIBRARY_PATH"
else if stdenv.isLinux then "LD_LIBRARY_PATH"
@ -20,7 +20,7 @@ let archString = if stdenv.isAarch64 then "arm64"
in
stdenv.mkDerivation rec {
pname = "powershell";
version = "7.2.2";
version = "7.2.3";
src = fetchzip {
url = "https://github.com/PowerShell/PowerShell/releases/download/v${version}/powershell-${version}-${platformString}-${archString}.tar.gz";

@ -67,6 +67,8 @@ with pkgs;
writers = callPackage ../build-support/writers/test.nix {};
testers = callPackage ../build-support/testers/test/default.nix {};
dhall = callPackage ./dhall { };
makeWrapper = callPackage ./make-wrapper {};

@ -1,7 +1,7 @@
/*
This file is a test that makes sure that the `pkgs.nixos` and
`pkgs.nixosTest` functions work. It's far from a perfect test suite,
`pkgs.testers.nixosTest` functions work. It's far from a perfect test suite,
but better than not checking them at all on hydra.
To run this test:
@ -27,17 +27,5 @@ in lib.optionalAttrs stdenv.hostPlatform.isLinux (
system.stateVersion = lib.trivial.release;
}).toplevel;
nixosTest-test = pkgs.nixosTest ({ lib, pkgs, figlet, ... }: {
name = "nixosTest-test";
nodes.machine = { pkgs, ... }: {
system.nixos = dummyVersioning;
environment.systemPackages = [ pkgs.hello figlet ];
system.stateVersion = lib.trivial.release;
};
testScript = ''
machine.succeed("hello | figlet >/dev/console")
'';
});
}
)

@ -1,25 +1,28 @@
{ lib, stdenv, fetchurl, imake, libXt, libXaw, libXtst
, libXi, libXpm, xorgproto, gccmakedep, Xaw3d }:
{ lib, stdenv, fetchurl, libXt, libXaw, libXtst
, libXi, libXpm, pkg-config, xorgproto, Xaw3d }:
stdenv.mkDerivation {
stdenv.mkDerivation rec {
pname = "xvkbd";
version = "3.9";
version = "4.1";
src = fetchurl {
url = "http://t-sato.in.coocan.jp/xvkbd/xvkbd-3.9.tar.gz";
sha256 = "17csj6x5zm3g67izfwhagkal1rbqzpw09lqmmlyrjy3vzgfkf75q";
url = "http://t-sato.in.coocan.jp/xvkbd/xvkbd-${version}.tar.gz";
sha256 = "1x5yldv9y99cw5hzzs73ygdn1z80zns9hz0baa355r711zghfbcm";
};
nativeBuildInputs = [ imake gccmakedep ];
nativeBuildInputs = [ pkg-config ] ;
buildInputs = [ libXt libXaw libXtst xorgproto libXi Xaw3d libXpm ];
installTargets = [ "install" "install.man" ];
makeFlags = [
"BINDIR=${placeholder "out"}/bin"
"CONFDIR=${placeholder "out"}/etc/X11"
"LIBDIR=${placeholder "out"}/lib/X11"
"XAPPLOADDIR=${placeholder "out"}/etc/X11/app-defaults"
"MANPATH=${placeholder "out"}/man"
# avoid default libXt location
"appdefaultdir=${placeholder "out"}/share/X11/app-defaults"
"datarootdir=${placeholder "out"}/share"
];
preInstall = ''
# workaround absence of libXt in $DESTDIR location.
mkdir -p $out/share/X11
'';
meta = with lib; {
description = "Virtual keyboard for X window system";
longDescription = ''

@ -1,4 +1,5 @@
{ lib
, stdenv
, fetchFromGitHub
, rustPlatform
, fetchpatch
@ -6,6 +7,7 @@
, openssl
, testers
, gbl
, Security
}:
rustPlatform.buildRustPackage rec {
@ -31,7 +33,7 @@ rustPlatform.buildRustPackage rec {
cargoSha256 = "sha256-RUZ6wswRtV8chq3+bY9LTRf6IYMbZ9/GPl2X5UcF7d8=";
nativeBuildInputs = [ pkg-config ];
buildInputs = [ openssl ];
buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security ];
passthru.tests.version =
testers.testVersion { package = gbl; };

@ -58,6 +58,7 @@ stdenv.mkDerivation {
passthru.tests = {
smoke-test = nixosTests.bcachefs;
inherit (nixosTests.installer) bcachefsSimple bcachefsEncrypted bcachefsMulti;
};
enableParallelBuilding = true;

@ -9,6 +9,7 @@
, gerbv
, librsvg
, bash
, fetchpatch
}:
stdenv.mkDerivation rec {
@ -22,6 +23,15 @@ stdenv.mkDerivation rec {
sha256 = "sha256-3VQlYtSi6yWWNuxTlBzvBtkM5hAss47xat+sEW+P79E=";
};
patches = [
# the patch below is part of upstream mainline, we can remove this
# when they make their next release
(fetchpatch {
url = "https://github.com/pcb2gcode/pcb2gcode/commit/01cd18a6d859ab1aac6c532c99be9109f083448d.patch";
sha256 = "sha256-5hl8KsDxSWMzXS3oRG0fBfHFq0IpZ//sU8lfY9Yp8L0=";
})
];
nativeBuildInputs = [ autoreconfHook pkg-config ];
buildInputs = [ boost glibmm gtkmm2 gerbv librsvg ];

@ -1,12 +1,12 @@
{ lib, fetchurl, appimageTools }:
let
name = "vial-${version}";
version = "0.5";
version = "0.5.2";
pname = "Vial";
src = fetchurl {
url = "https://github.com/vial-kb/vial-gui/releases/download/v${version}/${pname}-v${version}-x86_64.AppImage";
sha256 = "sha256-11IA8WeDFnukm6kskjA6Qu4+rPoLTBjz6NIixAIOH5U=";
sha256 = "sha256-wKgkEn2BoJfk3kMXOAKlFvXgCcnwHlgu2VgwL2QM06Q=";
};
appimageContents = appimageTools.extractType2 { inherit name src; };

@ -24,6 +24,15 @@
, wolfsslSupport ? false, wolfssl ? null
, zlibSupport ? true, zlib ? null
, zstdSupport ? false, zstd ? null
# for passthru.tests
, coeurl
, curlcpp
, curlpp
, haskellPackages
, ocamlPackages
, phpExtensions
, python3
}:
# Note: this package is used for bootstrapping fetchurl, and thus
@ -158,6 +167,13 @@ stdenv.mkDerivation rec {
passthru = {
inherit opensslSupport openssl;
tests = {
inherit curlpp curlcpp coeurl;
haskell-curl = haskellPackages.curl;
ocaml-curly = ocamlPackages.curly;
php-curl = phpExtensions.curl;
pycurl = python3.pkgs.pycurl;
};
};
meta = with lib; {

@ -11,16 +11,16 @@
rustPlatform.buildRustPackage rec {
pname = "cargo-edit";
version = "0.8.0";
version = "0.9.0";
src = fetchFromGitHub {
owner = "killercup";
repo = pname;
rev = "v${version}";
hash = "sha256-n9Ei1kpbDqOogNJJVvg9DRAPMVGNChCGGiuCVsuK3/8=";
hash = "sha256-4N45IBDlIVbZbZgdX2DBmjolFHwzPjHVyWGadhR1FFw=";
};
cargoSha256 = "sha256-6546jD+zDoScrJmpw5xtNdWeIPJ9Ma0bcIdnI1kFmu8=";
cargoSha256 = "sha256-o7NDw7P6Flut0ZFnDUdVCmuUzW2P+KXyfu0gApTEx60=";
nativeBuildInputs = [ pkg-config ];

@ -19,7 +19,7 @@ stdenv.mkDerivation rec {
];
preConfigure = ''
NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${libXNVCtrl}/include"
NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${libXNVCtrl}/include -Wno-error"
NIX_LDFLAGS="$NIX_LDFLAGS -L${libXNVCtrl}/lib"
'';

@ -384,6 +384,7 @@ mapAliases ({
fast-neural-doodle = throw "fast-neural-doodle has been removed, as the upstream project has been abandoned"; # Added 2020-03-28
fastnlo = fastnlo_toolkit; # Added 2021-04-24
fedora-coreos-config-transpiler = throw "fedora-coreos-config-transpiler has been renamed to 'butane'"; # Added 2021-04-13
feedreader = throw "feedreader is no longer activily maintained since 2019. The developer is working on a spiritual successor called NewsFlash."; # Added 2022-05-03
fetchFromGithub = throw "You meant fetchFromGitHub, with a capital H";
ffadoFull = throw "'ffadoFull' has been renamed to/replaced by 'ffado'"; # Converted to throw 2022-02-22
ffmpeg-sixel = throw "ffmpeg-sixel has been removed, because it was an outdated/unmaintained fork of ffmpeg"; # Added 2022-03-23";
@ -875,6 +876,7 @@ mapAliases ({
nix_2_5 = nixVersions.nix_2_5;
nix_2_6 = nixVersions.nix_2_6;
nixopsUnstable = nixops_unstable; # Added 2022-03-03
nixosTest = testers.nixosTest; # Added 2022-05-05
nmap-unfree = nmap; # Added 2021-04-06
nmap-graphical = throw "nmap graphical support has been removed due to its python2 dependency"; # Added 2022-04-26
nmap_graphical = throw "nmap graphical support has been removed due to its python2 dependency"; # Modified 2022-04-26
@ -1282,6 +1284,7 @@ mapAliases ({
terraform_1_0_0 = throw "terraform_1_0_0 has been renamed to terraform_1"; # Added 2021-06-15
tesseract_4 = throw "'tesseract_4' has been renamed to/replaced by 'tesseract4'"; # Converted to throw 2022-02-22
testVersion = testers.testVersion; # Added 2022-04-20
invalidateFetcherByDrvHash = testers.invalidateFetcherByDrvHash; # Added 2022-05-05
tex-gyre-bonum-math = throw "'tex-gyre-bonum-math' has been renamed to/replaced by 'tex-gyre-math.bonum'"; # Converted to throw 2022-02-22
tex-gyre-pagella-math = throw "'tex-gyre-pagella-math' has been renamed to/replaced by 'tex-gyre-math.pagella'"; # Converted to throw 2022-02-22
tex-gyre-schola-math = throw "'tex-gyre-schola-math' has been renamed to/replaced by 'tex-gyre-math.schola'"; # Converted to throw 2022-02-22

@ -750,28 +750,13 @@ with pkgs;
installShellFiles = callPackage ../build-support/install-shell-files {};
# See doc/builders/testers.chapter.md or
# https://nixos.org/manual/nixpkgs/unstable/#tester-invalidateFetcherByDrvHash
invalidateFetcherByDrvHash = f: args:
let
drvPath = (f args).drvPath;
# It's safe to discard the context, because we don't access the path.
salt = builtins.unsafeDiscardStringContext (lib.substring 0 12 (baseNameOf drvPath));
# New derivation incorporating the original drv hash in the name
salted = f (args // { name = "${args.name or "source"}-salted-${salt}"; });
# Make sure we did change the derivation. If the fetcher ignores `name`,
# `invalidateFetcherByDrvHash` doesn't work.
checked =
if salted.drvPath == drvPath
then throw "invalidateFetcherByDrvHash: Adding the derivation hash to the fixed-output derivation name had no effect. Make sure the fetcher's name argument ends up in the derivation name. Otherwise, the fetcher will not be re-run when its implementation changes. This is important for testing."
else salted;
in checked;
lazydocker = callPackage ../tools/misc/lazydocker { };
ld-is-cc-hook = makeSetupHook { name = "ld-is-cc-hook"; }
../build-support/setup-hooks/ld-is-cc-hook.sh;
libgtkflow = callPackage ../development/libraries/libgtkflow { };
libredirect = callPackage ../build-support/libredirect { };
madonctl = callPackage ../applications/misc/madonctl { };
@ -2214,7 +2199,9 @@ with pkgs;
fxlinuxprintutil = callPackage ../tools/misc/fxlinuxprintutil { };
gbl = callPackage ../tools/archivers/gbl { };
gbl = callPackage ../tools/archivers/gbl {
inherit (darwin.apple_sdk.frameworks) Security;
};
genann = callPackage ../development/libraries/genann { };
@ -5796,8 +5783,6 @@ with pkgs;
featherpad = qt5.callPackage ../applications/editors/featherpad {};
feedreader = callPackage ../applications/networking/feedreaders/feedreader {};
fend = callPackage ../tools/misc/fend { };
ferm = callPackage ../tools/networking/ferm { };
@ -7641,6 +7626,7 @@ with pkgs;
lagrange = callPackage ../applications/networking/browsers/lagrange {
inherit (darwin.apple_sdk.frameworks) AppKit;
};
lagrange-tui = lagrange.override { enableTUI = true; };
kzipmix = pkgsi686Linux.callPackage ../tools/compression/kzipmix { };
@ -20470,6 +20456,8 @@ with pkgs;
selinux-sandbox = callPackage ../os-specific/linux/selinux-sandbox { };
sealcurses = callPackage ../development/libraries/sealcurses { };
seasocks = callPackage ../development/libraries/seasocks { };
serd = callPackage ../development/libraries/serd {};
@ -20822,6 +20810,8 @@ with pkgs;
tet = callPackage ../development/tools/misc/tet { };
the-foundation = callPackage ../development/libraries/the-foundation { };
theft = callPackage ../development/libraries/theft { };
thrift = callPackage ../development/libraries/thrift { };
@ -27019,7 +27009,9 @@ with pkgs;
marker = callPackage ../applications/editors/marker { };
musikcube = callPackage ../applications/audio/musikcube {};
musikcube = callPackage ../applications/audio/musikcube {
inherit (darwin.apple_sdk.frameworks) Cocoa SystemConfiguration;
};
libmt32emu = callPackage ../applications/audio/munt/libmt32emu.nix { };
@ -28449,6 +28441,8 @@ with pkgs;
qemacs = callPackage ../applications/editors/qemacs { };
roxctl = callPackage ../applications/networking/cluster/roxctl { };
rqbit = callPackage ../applications/networking/p2p/rqbit {
inherit (darwin.apple_sdk.frameworks) Security;
};
@ -31144,6 +31138,10 @@ with pkgs;
inherit (darwin.apple_sdk.frameworks) CoreData IOKit PCSC;
};
haven-cli = callPackage ../applications/blockchains/haven-cli {
inherit (darwin.apple_sdk.frameworks) CoreData IOKit PCSC;
};
monero-gui = libsForQt5.callPackage ../applications/blockchains/monero-gui {
boost = boost17x;
};
@ -34175,58 +34173,6 @@ with pkgs;
};
};
/*
* Run a NixOS VM network test using this evaluation of Nixpkgs.
*
* It is mostly equivalent to `import ./make-test-python.nix` from the
* NixOS manual[1], except that your `pkgs` will be used instead of
* letting NixOS invoke Nixpkgs again. If a test machine needs to
* set NixOS options under `nixpkgs`, it must set only the
* `nixpkgs.pkgs` option. For the details, see the Nixpkgs
* `pkgs.nixos` documentation.
*
* Parameter:
* A NixOS VM test network, or path to it. Example:
*
* { lib, ... }:
* { name = "my-test";
* nodes = {
* machine-1 = someNixOSConfiguration;
* machine-2 = ...;
* }
* }
*
* Result:
* A derivation that runs the VM test.
*
* [1]: For writing NixOS tests, see
* https://nixos.org/nixos/manual/index.html#sec-nixos-tests
*/
nixosTest =
let
/* The nixos/lib/testing-python.nix module, preapplied with arguments that
* make sense for this evaluation of Nixpkgs.
*/
nixosTesting =
(import ../../nixos/lib/testing-python.nix {
inherit (stdenv.hostPlatform) system;
inherit pkgs;
extraConfigurations = [(
{ lib, ... }: {
config.nixpkgs.pkgs = lib.mkDefault pkgs;
}
)];
});
in
test:
let
loadedTest = if builtins.typeOf test == "path"
then import test
else test;
calledTest = lib.toFunction loadedTest pkgs;
in
nixosTesting.makeTest calledTest;
nixosOptionsDoc = attrs:
(import ../../nixos/lib/make-options-doc)
({ inherit pkgs lib; } // attrs);

@ -19,7 +19,6 @@
, html-tidy
, icu64
, libXpm
, libedit
, libffi
, libiconv
, libjpeg
@ -80,16 +79,29 @@ lib.makeScope pkgs.newScope (self: with self; {
pname = "php-${name}";
extensionName = name;
outputs = [ "out" "dev" ];
inherit (php.unwrapped) version src;
sourceRoot = "php-${php.version}/ext/${name}";
enableParallelBuilding = true;
nativeBuildInputs = [ php.unwrapped autoconf pkg-config re2c ];
inherit configureFlags internalDeps buildInputs
zendExtension doCheck;
prePatch = "pushd ../..";
postPatch = "popd";
nativeBuildInputs = [
php.unwrapped
autoconf
pkg-config
re2c
];
inherit configureFlags internalDeps buildInputs zendExtension doCheck;
preConfigurePhases = [
"cdToExtensionRootPhase"
];
cdToExtensionRootPhase = ''
# Go to extension source root.
cd "ext/${name}"
'';
preConfigure = ''
nullglobRestore=$(shopt -p nullglob)
@ -101,19 +113,28 @@ lib.makeScope pkgs.newScope (self: with self; {
fi
$nullglobRestore
phpize
${postPhpize}
${lib.concatMapStringsSep "\n"
${lib.concatMapStringsSep
"\n"
(dep: "mkdir -p ext; ln -s ${dep.dev}/include ext/${dep.extensionName}")
internalDeps}
internalDeps
}
'';
checkPhase = ''
runHook preCheck
NO_INTERACTON=yes SKIP_PERF_SENSITIVE=yes make test
runHook postCheck
'';
outputs = [ "out" "dev" ];
installPhase = ''
runHook preInstall
mkdir -p $out/lib/php/extensions
cp modules/${name}.so $out/lib/php/extensions/${name}.so
mkdir -p $dev/include
@ -122,6 +143,8 @@ lib.makeScope pkgs.newScope (self: with self; {
--filter="- *" \
--prune-empty-dirs \
. $dev/include/
runHook postInstall
'';
meta = {
@ -520,10 +543,23 @@ lib.makeScope pkgs.newScope (self: with self; {
{ name = "pspell"; configureFlags = [ "--with-pspell=${aspell}" ]; }
{
name = "readline";
buildInputs = [ libedit readline ];
configureFlags = [ "--with-readline=${readline.dev}" ];
postPhpize = lib.optionalString (lib.versionOlder php.version "7.4") ''
substituteInPlace configure --replace 'as_fn_error $? "Please reinstall libedit - I cannot find readline.h" "$LINENO" 5' ':'
buildInputs = [
readline
];
configureFlags = [
"--with-readline=${readline.dev}"
];
postPatch = ''
# Fix `--with-readline` option not being available.
# `PHP_ALWAYS_SHARED` generated by phpize enables all options
# without the possibility to override them. But when `--with-libedit`
# is enabled, `--with-readline` is not registered.
echo '
AC_DEFUN([PHP_ALWAYS_SHARED],[
test "[$]$1" != "no" && ext_shared=yes
])dnl
' | cat - ext/readline/config.m4 > ext/readline/config.m4.tmp
mv ext/readline/config.m4{.tmp,}
'';
doCheck = false;
}

@ -9499,6 +9499,8 @@ in {
six = callPackage ../development/python-modules/six { };
sjcl = callPackage ../development/python-modules/sjcl { };
skein = callPackage ../development/python-modules/skein { };
skidl = callPackage ../development/python-modules/skidl { };

Loading…
Cancel
Save