Merge master into staging-next

Changed files
+870 -592
nixos
doc
manual
configuration
modules
services
continuous-integration
hercules-ci-agent
databases
tasks
tests
pkgs
applications
audio
audacity
blockchains
editors
graphics
solvespace
misc
dbeaver
networking
browsers
brave
chromium
lagrange
instant-messengers
mattermost-desktop
office
libreoffice
version-management
git-and-tools
stgit
video
jellyfin-media-player
window-managers
development
compilers
interpreters
spidermonkey
libraries
libplacebo
physics
fastnlo_toolkit
python-modules
aiohue
aiopvpc
asyncstdlib
chalice
denonavr
netdisco
pgspecial
pyclimacell
pycm
pytest-annotate
python-redis-lock
python-snap7
zeroconf
tools
analysis
continuous-integration
hercules-ci-agent
esbuild
go-mockery
misc
rust
cargo-watch
vultr-cli
games
colobot
cutemaze
misc
uboot
vim-plugins
vscode-extensions
servers
tools
admin
fioctl
trivy
misc
hdf5
networking
boundary
security
expliot
top-level
+6 -2
nixos/doc/manual/configuration/ipv6-config.xml
···
<para>
IPv6 is enabled by default. Stateless address autoconfiguration is used to
-
automatically assign IPv6 addresses to all interfaces. You can disable IPv6
-
support globally by setting:
+
automatically assign IPv6 addresses to all interfaces, and Privacy
+
Extensions (RFC 4946) are enabled by default. You can adjust the default
+
for this by setting <xref linkend="opt-networking.tempAddresses"/>.
+
This option may be overridden on a per-interface basis by
+
<xref linkend="opt-networking.interfaces._name_.tempAddress"/>.
+
You can disable IPv6 support globally by setting:
<programlisting>
<xref linkend="opt-networking.enableIPv6"/> = false;
</programlisting>
+23 -5
nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix
···
description = ''
Number of tasks to perform simultaneously.
-
A task is a single derivation build or an evaluation.
+
A task is a single derivation build, an evaluation or an effect run.
At minimum, you need 2 concurrent tasks for <literal>x86_64-linux</literal>
in your cluster, to allow for import from derivation.
<literal>concurrentTasks</literal> can be around the CPU core count or lower if memory is
the bottleneck.
+
+
The optimal value depends on the resource consumption characteristics of your workload,
+
including memory usage and in-task parallelism. This is typically determined empirically.
+
+
When scaling, it is generally better to have a double-size machine than two machines,
+
because each split of resources causes inefficiencies; particularly with regards
+
to build latency because of extra downloads.
'';
-
type = types.int;
-
default = 4;
+
type = types.either types.ints.positive (types.enum [ "auto" ]);
+
default = "auto";
};
workDirectory = mkOption {
description = ''
···
# even shortly after the previous lookup. This *also* applies to the daemon.
narinfo-cache-negative-ttl = 0
'';
-
services.hercules-ci-agent.tomlFile =
-
format.generate "hercules-ci-agent.toml" cfg.settings;
+
services.hercules-ci-agent = {
+
tomlFile =
+
format.generate "hercules-ci-agent.toml" cfg.settings;
+
+
settings.labels = {
+
agent.source =
+
if options.services.hercules-ci-agent.package.highestPrio == (lib.modules.mkOptionDefault { }).priority
+
then "nixpkgs"
+
else lib.mkOptionDefault "override";
+
pkgs.version = pkgs.lib.version;
+
lib.version = lib.version;
+
};
+
};
};
}
+17 -1
nixos/modules/services/continuous-integration/hercules-ci-agent/default.nix
···
# Trusted user allows simplified configuration and better performance
# when operating in a cluster.
nix.trustedUsers = [ config.systemd.services.hercules-ci-agent.serviceConfig.User ];
-
services.hercules-ci-agent.settings.nixUserIsTrusted = true;
+
services.hercules-ci-agent = {
+
settings = {
+
nixUserIsTrusted = true;
+
labels =
+
let
+
mkIfNotNull = x: mkIf (x != null) x;
+
in
+
{
+
nixos.configurationRevision = mkIfNotNull config.system.configurationRevision;
+
nixos.release = config.system.nixos.release;
+
nixos.label = mkIfNotNull config.system.nixos.label;
+
nixos.codeName = config.system.nixos.codeName;
+
nixos.tags = config.system.nixos.tags;
+
nixos.systemName = mkIfNotNull config.system.name;
+
};
+
};
+
};
users.users.hercules-ci-agent = {
home = cfg.settings.baseDirectory;
+5 -14
nixos/modules/services/databases/couchdb.nix
···
let
cfg = config.services.couchdb;
-
useVersion2 = strings.versionAtLeast (strings.getVersion cfg.package) "2.0";
configFile = pkgs.writeText "couchdb.ini" (
''
[couchdb]
database_dir = ${cfg.databaseDir}
uri_file = ${cfg.uriFile}
view_index_dir = ${cfg.viewIndexDir}
-
'' + (if cfg.adminPass != null then
-
''
+
'' + (optionalString (cfg.adminPass != null) ''
[admins]
${cfg.adminUser} = ${cfg.adminPass}
-
'' else
-
"") + (if useVersion2 then
-
''
+
'' + ''
[chttpd]
-
'' else
-
''
-
[httpd]
'') +
''
port = ${toString cfg.port}
···
[log]
file = ${cfg.logFile}
'');
-
executable = if useVersion2 then "${cfg.package}/bin/couchdb"
-
else ''${cfg.package}/bin/couchdb -a ${configFile} -a ${pkgs.writeText "couchdb-extra.ini" cfg.extraConfig} -a ${cfg.configFile}'';
+
executable = "${cfg.package}/bin/couchdb";
in {
···
environment.systemPackages = [ cfg.package ];
-
services.couchdb.configFile = mkDefault
-
(if useVersion2 then "/var/lib/couchdb/local.ini" else "/var/lib/couchdb/couchdb.ini");
+
services.couchdb.configFile = mkDefault "/var/lib/couchdb/local.ini";
systemd.tmpfiles.rules = [
"d '${dirOf cfg.uriFile}' - ${cfg.user} ${cfg.group} - -"
···
touch ${cfg.configFile}
'';
-
environment = mkIf useVersion2 {
+
environment = {
# we are actually specifying 4 configuration files:
# 1. the preinstalled default.ini
# 2. the module configuration
+61 -33
nixos/modules/tasks/network-interfaces.nix
···
};
tempAddress = mkOption {
-
type = types.enum [ "default" "enabled" "disabled" ];
-
default = if cfg.enableIPv6 then "default" else "disabled";
-
defaultText = literalExample ''if cfg.enableIPv6 then "default" else "disabled"'';
+
type = types.enum (lib.attrNames tempaddrValues);
+
default = cfg.tempAddresses;
+
defaultText = literalExample ''config.networking.tempAddresses'';
description = ''
When IPv6 is enabled with SLAAC, this option controls the use of
-
temporary address (aka privacy extensions). This is used to reduce tracking.
-
The three possible values are:
+
temporary address (aka privacy extensions) on this
+
interface. This is used to reduce tracking.
+
+
See also the global option
+
<xref linkend="opt-networking.tempAddresses"/>, which
+
applies to all interfaces where this is not set.
-
<itemizedlist>
-
<listitem>
-
<para>
-
<literal>"default"</literal> to generate temporary addresses and use
-
them by default;
-
</para>
-
</listitem>
-
<listitem>
-
<para>
-
<literal>"enabled"</literal> to generate temporary addresses but keep
-
using the standard EUI-64 ones by default;
-
</para>
-
</listitem>
-
<listitem>
-
<para>
-
<literal>"disabled"</literal> to completely disable temporary addresses.
-
</para>
-
</listitem>
-
</itemizedlist>
+
Possible values are:
+
${tempaddrDoc}
'';
};
···
hexChars = stringToCharacters "0123456789abcdef";
isHexString = s: all (c: elem c hexChars) (stringToCharacters (toLower s));
+
+
tempaddrValues = {
+
disabled = {
+
sysctl = "0";
+
description = "completely disable IPv6 temporary addresses";
+
};
+
enabled = {
+
sysctl = "1";
+
description = "generate IPv6 temporary addresses but still use EUI-64 addresses as source addresses";
+
};
+
default = {
+
sysctl = "2";
+
description = "generate IPv6 temporary addresses and use these as source addresses in routing";
+
};
+
};
+
tempaddrDoc = ''
+
<itemizedlist>
+
${concatStringsSep "\n" (mapAttrsToList (name: { description, ... }: ''
+
<listitem>
+
<para>
+
<literal>"${name}"</literal> to ${description};
+
</para>
+
</listitem>
+
'') tempaddrValues)}
+
</itemizedlist>
+
'';
in
···
'';
};
+
networking.tempAddresses = mkOption {
+
default = if cfg.enableIPv6 then "default" else "disabled";
+
type = types.enum (lib.attrNames tempaddrValues);
+
description = ''
+
Whether to enable IPv6 Privacy Extensions for interfaces not
+
configured explicitly in
+
<xref linkend="opt-networking.interfaces._name_.tempAddress" />.
+
+
This sets the ipv6.conf.*.use_tempaddr sysctl for all
+
interfaces. Possible values are:
+
+
${tempaddrDoc}
+
'';
+
};
+
};
···
// listToAttrs (forEach interfaces
(i: let
opt = i.tempAddress;
-
val = { disabled = 0; enabled = 1; default = 2; }.${opt};
+
val = tempaddrValues.${opt}.sysctl;
in nameValuePair "net.ipv6.conf.${replaceChars ["."] ["/"] i.name}.use_tempaddr" val));
# Capabilities won't work unless we have at-least a 4.3 Linux
···
(pkgs.writeTextFile rec {
name = "ipv6-privacy-extensions.rules";
destination = "/etc/udev/rules.d/98-${name}";
-
text = ''
+
text = let
+
sysctl-value = tempaddrValues.${cfg.tempAddresses}.sysctl;
+
in ''
# enable and prefer IPv6 privacy addresses by default
-
ACTION=="add", SUBSYSTEM=="net", RUN+="${pkgs.bash}/bin/sh -c 'echo 2 > /proc/sys/net/ipv6/conf/%k/use_tempaddr'"
+
ACTION=="add", SUBSYSTEM=="net", RUN+="${pkgs.bash}/bin/sh -c 'echo ${sysctl-value} > /proc/sys/net/ipv6/conf/%k/use_tempaddr'"
'';
})
(pkgs.writeTextFile rec {
···
text = concatMapStrings (i:
let
opt = i.tempAddress;
-
val = if opt == "disabled" then 0 else 1;
-
msg = if opt == "disabled"
-
then "completely disable IPv6 privacy addresses"
-
else "enable IPv6 privacy addresses but prefer EUI-64 addresses";
+
val = tempaddrValues.${opt}.sysctl;
+
msg = tempaddrValues.${opt}.description;
in
''
# override to ${msg} for ${i.name}
-
ACTION=="add", SUBSYSTEM=="net", RUN+="${pkgs.procps}/bin/sysctl net.ipv6.conf.${replaceChars ["."] ["/"] i.name}.use_tempaddr=${toString val}"
-
'') (filter (i: i.tempAddress != "default") interfaces);
+
ACTION=="add", SUBSYSTEM=="net", RUN+="${pkgs.procps}/bin/sysctl net.ipv6.conf.${replaceChars ["."] ["/"] i.name}.use_tempaddr=${val}"
+
'') (filter (i: i.tempAddress != cfg.tempAddresses) interfaces);
})
] ++ lib.optional (cfg.wlanInterfaces != {})
(pkgs.writeTextFile {
-38
nixos/tests/couchdb.nix
···
};
nodes = {
-
couchdb1 = makeNode pkgs.couchdb testuser testpass;
-
couchdb2 = makeNode pkgs.couchdb2 testuser testpass;
couchdb3 = makeNode pkgs.couchdb3 testuser testpass;
};
···
'';
in ''
start_all()
-
-
couchdb1.wait_for_unit("couchdb.service")
-
couchdb1.wait_until_succeeds(
-
"${curlJqCheck "" "GET" "" ".couchdb" "Welcome"}"
-
)
-
couchdb1.wait_until_succeeds(
-
"${curlJqCheck "" "GET" "_all_dbs" ". | length" "2"}"
-
)
-
couchdb1.succeed("${curlJqCheck testlogin "PUT" "foo" ".ok" "true"}")
-
couchdb1.succeed(
-
"${curlJqCheck "" "GET" "_all_dbs" ". | length" "3"}"
-
)
-
couchdb1.succeed(
-
"${curlJqCheck testlogin "DELETE" "foo" ".ok" "true"}"
-
)
-
couchdb1.succeed(
-
"${curlJqCheck "" "GET" "_all_dbs" ". | length" "2"}"
-
)
-
-
couchdb2.wait_for_unit("couchdb.service")
-
couchdb2.wait_until_succeeds(
-
"${curlJqCheck "" "GET" "" ".couchdb" "Welcome"}"
-
)
-
couchdb2.wait_until_succeeds(
-
"${curlJqCheck "" "GET" "_all_dbs" ". | length" "0"}"
-
)
-
couchdb2.succeed("${curlJqCheck testlogin "PUT" "foo" ".ok" "true"}")
-
couchdb2.succeed(
-
"${curlJqCheck "" "GET" "_all_dbs" ". | length" "1"}"
-
)
-
couchdb2.succeed(
-
"${curlJqCheck testlogin "DELETE" "foo" ".ok" "true"}"
-
)
-
couchdb2.succeed(
-
"${curlJqCheck "" "GET" "_all_dbs" ". | length" "0"}"
-
)
couchdb3.wait_for_unit("couchdb.service")
couchdb3.wait_until_succeeds(
+60 -21
nixos/tests/ipv6.nix
···
};
nodes =
-
# Remove the interface configuration provided by makeTest so that the
-
# interfaces are all configured implicitly
-
{ client = { ... }: { networking.interfaces = lib.mkForce {}; };
+
{
+
# We use lib.mkForce here to remove the interface configuration
+
# provided by makeTest, so that the interfaces are all configured
+
# implicitly.
+
+
# This client should use privacy extensions fully, having a
+
# completely-default network configuration.
+
client_defaults.networking.interfaces = lib.mkForce {};
+
+
# Both of these clients should obtain temporary addresses, but
+
# not use them as the default source IP. We thus run the same
+
# checks against them — but the configuration resulting in this
+
# behaviour is different.
+
+
# Here, by using an altered default value for the global setting...
+
client_global_setting = {
+
networking.interfaces = lib.mkForce {};
+
networking.tempAddresses = "enabled";
+
};
+
# and here, by setting this on the interface explicitly.
+
client_interface_setting = {
+
networking.tempAddresses = "disabled";
+
networking.interfaces = lib.mkForce {
+
eth1.tempAddress = "enabled";
+
};
+
};
server =
-
{ ... }:
{ services.httpd.enable = true;
services.httpd.adminAddr = "foo@example.org";
networking.firewall.allowedTCPPorts = [ 80 ];
···
# Start the router first so that it respond to router solicitations.
router.wait_for_unit("radvd")
+
clients = [client_defaults, client_global_setting, client_interface_setting]
+
start_all()
-
client.wait_for_unit("network.target")
+
for client in clients:
+
client.wait_for_unit("network.target")
server.wait_for_unit("network.target")
server.wait_for_unit("httpd.service")
···
with subtest("Loopback address can be pinged"):
-
client.succeed("ping -c 1 ::1 >&2")
-
client.fail("ping -c 1 ::2 >&2")
+
client_defaults.succeed("ping -c 1 ::1 >&2")
+
client_defaults.fail("ping -c 1 2001:db8:: >&2")
with subtest("Local link addresses can be obtained and pinged"):
-
client_ip = wait_for_address(client, "eth1", "link")
-
server_ip = wait_for_address(server, "eth1", "link")
-
client.succeed(f"ping -c 1 {client_ip}%eth1 >&2")
-
client.succeed(f"ping -c 1 {server_ip}%eth1 >&2")
+
for client in clients:
+
client_ip = wait_for_address(client, "eth1", "link")
+
server_ip = wait_for_address(server, "eth1", "link")
+
client.succeed(f"ping -c 1 {client_ip}%eth1 >&2")
+
client.succeed(f"ping -c 1 {server_ip}%eth1 >&2")
with subtest("Global addresses can be obtained, pinged, and reached via http"):
-
client_ip = wait_for_address(client, "eth1", "global")
-
server_ip = wait_for_address(server, "eth1", "global")
-
client.succeed(f"ping -c 1 {client_ip} >&2")
-
client.succeed(f"ping -c 1 {server_ip} >&2")
-
client.succeed(f"curl --fail -g http://[{server_ip}]")
-
client.fail(f"curl --fail -g http://[{client_ip}]")
+
for client in clients:
+
client_ip = wait_for_address(client, "eth1", "global")
+
server_ip = wait_for_address(server, "eth1", "global")
+
client.succeed(f"ping -c 1 {client_ip} >&2")
+
client.succeed(f"ping -c 1 {server_ip} >&2")
+
client.succeed(f"curl --fail -g http://[{server_ip}]")
+
client.fail(f"curl --fail -g http://[{client_ip}]")
-
with subtest("Privacy extensions: Global temporary address can be obtained and pinged"):
-
ip = wait_for_address(client, "eth1", "global", temporary=True)
+
with subtest(
+
"Privacy extensions: Global temporary address is used as default source address"
+
):
+
ip = wait_for_address(client_defaults, "eth1", "global", temporary=True)
# Default route should have "src <temporary address>" in it
-
client.succeed(f"ip r g ::2 | grep {ip}")
+
client_defaults.succeed(f"ip route get 2001:db8:: | grep 'src {ip}'")
-
# TODO: test reachability of a machine on another network.
+
for client, setting_desc in (
+
(client_global_setting, "global"),
+
(client_interface_setting, "interface"),
+
):
+
with subtest(f'Privacy extensions: "enabled" through {setting_desc} setting)'):
+
# We should be obtaining both a temporary address and an EUI-64 address...
+
ip = wait_for_address(client, "eth1", "global")
+
assert "ff:fe" in ip
+
ip_temp = wait_for_address(client, "eth1", "global", temporary=True)
+
# But using the EUI-64 one.
+
client.succeed(f"ip route get 2001:db8:: | grep 'src {ip}'")
'';
})
+2
pkgs/applications/audio/audacity/default.nix
···
, lilv
, serd
, sord
+
, sqlite
, sratom
, suil
, alsaLib
···
sord
soundtouch
soxr
+
sqlite
sratom
suil
twolame
+3 -3
pkgs/applications/blockchains/turbo-geth.nix
···
buildGoModule rec {
pname = "turbo-geth";
-
version = "2021.04.05";
+
version = "2021.05.01";
src = fetchFromGitHub {
owner = "ledgerwatch";
repo = pname;
rev = "v${version}";
-
sha256 = "sha256-RTPNJASNFyZ6tDJj0WOqALyxRsOLJzPy0qA1c2sSxys=";
+
sha256 = "sha256-zvxtBK0/6fShxAZfU4gTV0XiP6TzhKFNsADSZA9gv0Y=";
};
-
vendorSha256 = "01c7lb6n00ws60dfybir0z5dbn6h68p5s4hbq0ga2g7drf3l3y0p";
+
vendorSha256 = "0c8p6djs0zcci8sh4zgzky89155mr4cfqlax025618x8vngrsxf2";
runVend = true;
subPackages = [
+2 -2
pkgs/applications/editors/zile/default.nix
···
stdenv.mkDerivation rec {
pname = "zile";
-
version = "2.6.1";
+
version = "2.6.2";
src = fetchurl {
url = "mirror://gnu/zile/${pname}-${version}.tar.gz";
-
hash = "sha256-v7rN33aOORc6J0Z5JP5AmZCj6XvjYyoCl5hl+7mvAnc=";
+
hash = "sha256-d+t9r/PJi9yI2qGsBA3MynK4HcMvwxZuB53Xpj5Cx0E=";
};
buildInputs = [
+2 -2
pkgs/applications/graphics/solvespace/default.nix
···
}:
stdenv.mkDerivation rec {
pname = "solvespace";
-
version = "v3.0.rc2";
+
version = "v3.0";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = version;
-
sha256 = "1z0873gwcr0hybrpqy4hwislir6k2zb4s62lbsivq5nbkizy7gjm";
+
sha256 = "04aympdsjp37vp0p13mb8nwkc080hp9cdrjpyy5m1mhwkm8jm9k9";
fetchSubmodules = true;
};
+1 -1
pkgs/applications/misc/dbeaver/default.nix
···
}:
stdenv.mkDerivation rec {
-
pname = "dbeaver-ce";
+
pname = "dbeaver";
version = "21.0.4"; # When updating also update fetchedMavenDeps.sha256
src = fetchFromGitHub {
+6 -2
pkgs/applications/networking/browsers/brave/default.nix
···
stdenv.mkDerivation rec {
pname = "brave";
-
version = "1.23.71";
+
version = "1.24.82";
src = fetchurl {
url = "https://github.com/brave/brave-browser/releases/download/v${version}/brave-browser_${version}_amd64.deb";
-
sha256 = "17ajn1vx5xwlp2yvjf1hr8vw3b7hiribv5gaipyb37zrhkff241h";
+
sha256 = "iWUJ5yLWWQvg510Atf+Pd9ya/1NnMNW2Sp/RVFn4PCc=";
};
dontConfigure = true;
···
unpackPhase = "dpkg-deb --fsys-tarfile $src | tar -x --no-same-permissions --no-same-owner";
installPhase = ''
+
runHook preInstall
+
mkdir -p $out $out/bin
cp -R usr/share $out
···
# Replace xdg-settings and xdg-mime
ln -sf ${xdg-utils}/bin/xdg-settings $out/opt/brave.com/brave/xdg-settings
ln -sf ${xdg-utils}/bin/xdg-mime $out/opt/brave.com/brave/xdg-mime
+
+
runHook postInstall
'';
installCheckPhase = ''
+2
pkgs/applications/networking/browsers/chromium/common.nix
···
, pipewire
, libva
, libdrm, wayland, mesa, libxkbcommon # Ozone
+
, curl
# optional dependencies
, libgcrypt ? null # gnomeSupport || cupsSupport
···
pipewire
libva
libdrm wayland mesa.drivers libxkbcommon
+
curl
] ++ optional gnomeKeyringSupport libgnome-keyring3
++ optionals gnomeSupport [ gnome.GConf libgcrypt ]
++ optionals cupsSupport [ libgcrypt cups ]
+4 -3
pkgs/applications/networking/browsers/lagrange/default.nix
···
, pcre
, SDL2
, AppKit
+
, zlib
}:
stdenv.mkDerivation rec {
pname = "lagrange";
-
version = "1.3.4";
+
version = "1.4.0";
src = fetchFromGitHub {
owner = "skyjake";
repo = "lagrange";
rev = "v${version}";
-
sha256 = "sha256-hPNqyTH2oMPytvYAF9sjEQ9ibaJYDODA33ZrDuWnloU=";
+
sha256 = "sha256-l8k81w+ilkOk8iQTc46+HK40JQZ0dCYVAvkGTrEpZSQ=";
fetchSubmodules = true;
};
nativeBuildInputs = [ cmake pkg-config ];
-
buildInputs = [ libunistring mpg123 openssl pcre SDL2 ]
+
buildInputs = [ libunistring mpg123 openssl pcre SDL2 zlib ]
++ lib.optional stdenv.isDarwin AppKit;
hardeningDisable = lib.optional (!stdenv.cc.isClang) "format";
+10 -4
pkgs/applications/networking/instant-messengers/mattermost-desktop/default.nix
···
in
stdenv.mkDerivation rec {
pname = "mattermost-desktop";
-
version = "4.5.2";
+
version = "4.6.2";
src =
if stdenv.hostPlatform.system == "x86_64-linux" then
fetchurl {
url = "https://releases.mattermost.com/desktop/${version}/${pname}-${version}-linux-x64.tar.gz";
-
sha256 = "0r9xmhzif1ia1m53yr59q6p3niyq3jv3vgv4703x68jmd46f91n6";
+
sha256 = "0i836bc0gx375a9fm2cdxg84k03zhpx1z6jqxndf2m8pkfsblc3x";
}
else if stdenv.hostPlatform.system == "i686-linux" then
fetchurl {
url = "https://releases.mattermost.com/desktop/${version}/${pname}-${version}-linux-ia32.tar.gz";
-
sha256 = "1h8lw06p3cqz9dkgbhfmzcrzjsir5cfhx28xm4zrmvkj4yfzbcnv";
+
sha256 = "04jv9hkmkh0jipv0fjdprnp5kmkjvf3c0fah6ysi21wmnmp5ab3m";
}
else
throw "Mattermost-Desktop is not currently supported on ${stdenv.hostPlatform.system}";
···
dontConfigure = true;
dontPatchELF = true;
-
buildInputs = [ wrapGAppsHook gtk3 hicolor-icon-theme ];
+
nativeBuildInputs = [ wrapGAppsHook ];
+
+
buildInputs = [ gtk3 hicolor-icon-theme ];
installPhase = ''
+
runHook preInstall
+
mkdir -p $out/share/mattermost-desktop
cp -R . $out/share/mattermost-desktop
···
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
--set-rpath "${rpath}:$out/share/mattermost-desktop" \
$out/share/mattermost-desktop/mattermost-desktop
+
+
runHook postInstall
'';
meta = with lib; {
+4 -4
pkgs/applications/office/libreoffice/src-fresh/download.nix
···
md5name = "a8c2c5b8f09e7ede322d5c602ff6a4b6-mythes-1.2.4.tar.gz";
}
{
-
name = "neon-0.31.1.tar.gz";
-
url = "https://dev-www.libreoffice.org/src/neon-0.31.1.tar.gz";
-
sha256 = "c9dfcee723050df37ce18ba449d7707b78e7ab8230f3a4c59d9112e17dc2718d";
+
name = "neon-0.31.2.tar.gz";
+
url = "https://dev-www.libreoffice.org/src/neon-0.31.2.tar.gz";
+
sha256 = "cf1ee3ac27a215814a9c80803fcee4f0ede8466ebead40267a9bd115e16a8678";
md5 = "";
-
md5name = "c9dfcee723050df37ce18ba449d7707b78e7ab8230f3a4c59d9112e17dc2718d-neon-0.31.1.tar.gz";
+
md5name = "cf1ee3ac27a215814a9c80803fcee4f0ede8466ebead40267a9bd115e16a8678-neon-0.31.2.tar.gz";
}
{
name = "nss-3.55-with-nspr-4.27.tar.gz";
+4 -4
pkgs/applications/office/libreoffice/src-fresh/primary.nix
···
major = "7";
minor = "1";
-
patch = "2";
+
patch = "3";
tweak = "2";
subdir = "${major}.${minor}.${patch}";
···
src = fetchurl {
url = "https://download.documentfoundation.org/libreoffice/src/${subdir}/libreoffice-${version}.tar.xz";
-
sha256 = "1y19p9701msf6jjzp9d5ighvmyjzj68qzhm2bk3l5p16ys8qk9bb";
+
sha256 = "1gr9c8kv7nc9kaag1sw9r36843pfba1my80afx7p0lxj0k8pzbrm";
};
# FIXME rename
translations = fetchSrc {
name = "translations";
-
sha256 = "1j5251lbc35d521d92w52lgps0v5pg8mhr8y3r6x2nl9p0gvw957";
+
sha256 = "09xkr6jmnwq55savw9xjsy8l8zcyflnsg4nfwhknvm3ls8sqj4w6";
};
# the "dictionaries" archive is not used for LO build because we already build hunspellDicts packages from
···
help = fetchSrc {
name = "help";
-
sha256 = "1bsrkmzhhpyrmi7akmdfvz4zb543fc093az9965k14rp8l6rhnvf";
+
sha256 = "0dc981vmxfdwlyfgq84axkr99d8chm1ypknj39v0cmaqn56lpwg0";
};
}
+4 -3
pkgs/applications/version-management/git-and-tools/stgit/default.nix
···
python3Packages.buildPythonApplication rec {
pname = "stgit";
-
version = "1.0";
+
version = "1.1";
src = fetchFromGitHub {
owner = "stacked-git";
repo = "stgit";
rev = "v${version}";
-
sha256 = "16q8994widg040n1ag4m82kbn3r02n39ah7dvwa7aixhw5y35vlm";
+
sha256 = "sha256-gfPf1yRmx1Mn1TyCBWmjQJBgXLlZrDcew32C9o6uNYk=";
};
nativeBuildInputs = [ installShellFiles ];
···
meta = with lib; {
description = "A patch manager implemented on top of Git";
homepage = "https://stacked-git.github.io/";
-
license = licenses.gpl2;
+
license = licenses.gpl2Only;
platforms = platforms.unix;
+
maintainers = with maintainers; [ jshholland ];
};
}
+5 -4
pkgs/applications/video/jellyfin-media-player/default.nix
···
mkDerivation rec {
pname = "jellyfin-media-player";
-
version = "1.5.0";
+
version = "1.6.0";
src = fetchFromGitHub {
owner = "jellyfin";
repo = "jellyfin-media-player";
rev = "v${version}";
-
sha256 = "sha256-A3vo6678XFUV2RN1lcGYbIjCbBjR1oeORcidKZVnImg=";
+
sha256 = "sha256-u19WJupSqIzA8W0QG9mue8Ticy+HxBAniuKIUFl7ONs=";
};
jmpDist = fetchzip {
-
url = "https://github.com/iwalton3/jellyfin-web-jmp/releases/download/jwc-10.7.2-3/dist.zip";
-
sha256 = "sha256-Rb0q3NFmnYkueq0JkIWkX0C/oL+gFrNOELCNfh9X/P4=";
+
url = "https://github.com/iwalton3/jellyfin-web-jmp/releases/download/jwc-10.7.3/dist.zip";
+
sha256 = "sha256-P7WEYbVvpaVLwMgqC2e8QtMOaJclg0bX78J1fdGzcCU=";
};
patches = [
···
license = with licenses; [ gpl2Only mit ];
platforms = [ "x86_64-linux" "x86_64-darwin" ];
maintainers = with maintainers; [ jojosch ];
+
mainProgram = "jellyfinmediaplayer";
};
}
+5 -17
pkgs/applications/window-managers/dwl/default.nix
···
, libinput
, libxcb
, libxkbcommon
+
, pixman
, wayland
, wayland-protocols
, wlroots
···
}:
let
-
# Add two patches to fix compile errors with wlroots 0.13:
-
totalPatches = patches ++ [
-
# Fix the renamed constant WLR_KEY_PRESSED => WL_KEYBOARD_KEY_STATE_PRESSED
-
# https://github.com/djpohly/dwl/pull/66
-
(fetchpatch {
-
url = "https://github.com/djpohly/dwl/commit/a42613db9d9f6debfa4fb2363d75af9457d238ed.patch";
-
sha256 = "0h76hx1fhazi07gqg7sljh13f91v6bvjy7m9qqmimhvqgfwdcc0j";
-
})
-
# Use the new signature for wlr_backend_autocreate, which removes an argument:
-
# https://github.com/djpohly/dwl/pull/76
-
(fetchpatch {
-
url = "https://github.com/djpohly/dwl/commit/0ff13cf216056a36a261f4eed53c6a864989a9fb.patch";
-
sha256 = "18clpdb4il1vxf1b0cx0qrwild68s9dism8ab66zpmvxs5qag2dm";
-
})
-
];
+
totalPatches = patches ++ [ ];
in
stdenv.mkDerivation rec {
pname = "dwl";
-
version = "0.2";
+
version = "0.2.1";
src = fetchFromGitHub {
owner = "djpohly";
repo = pname;
rev = "v${version}";
-
sha256 = "gUaFTkpIQDswEubllMgvxPfCaEYFO7mODzjPyW7XsGQ=";
+
sha256 = "sha256-lfUAymLA4+E9kULZIueA+9gyVZYgaVS0oTX0LJjsSEs=";
};
nativeBuildInputs = [ pkg-config ];
···
libinput
libxcb
libxkbcommon
+
pixman
wayland
wayland-protocols
wlroots
+2 -1
pkgs/development/compilers/ghc/8.10.2-binary.nix
···
enableShared = true;
};
-
meta = {
+
meta = rec {
homepage = "http://haskell.org/ghc";
description = "The Glasgow Haskell Compiler";
license = lib.licenses.bsd3;
platforms = ["x86_64-linux" "armv7l-linux" "aarch64-linux" "i686-linux" "x86_64-darwin"];
+
hydraPlatforms = builtins.filter (p: minimal || p != "aarch64-linux") platforms;
maintainers = with lib.maintainers; [ lostnet ];
};
}
+5 -2
pkgs/development/compilers/ghc/8.6.5-binary.nix
···
enableShared = true;
};
-
meta.license = lib.licenses.bsd3;
-
meta.platforms = ["x86_64-linux" "aarch64-linux" "i686-linux" "x86_64-darwin"];
+
meta = rec {
+
license = lib.licenses.bsd3;
+
platforms = ["x86_64-linux" "aarch64-linux" "i686-linux" "x86_64-darwin"];
+
hydraPlatforms = builtins.filter (p: p != "aarch64-linux") platforms;
+
};
}
+3 -5
pkgs/development/compilers/kotlin/default.nix
···
{ lib, stdenv, fetchurl, makeWrapper, jre, unzip }:
-
let
-
version = "1.4.21";
-
in stdenv.mkDerivation {
-
inherit version;
+
stdenv.mkDerivation rec {
pname = "kotlin";
+
version = "1.4.32";
src = fetchurl {
url = "https://github.com/JetBrains/kotlin/releases/download/v${version}/kotlin-compiler-${version}.zip";
-
sha256 = "1ixnwrvgs14f9160d9d69r7w2dfp5cdwiwpk1ky0ps8nly8hjwj6";
+
hash = "sha256-3+8ju4a9XzYWbU7BJnyN5Ts4J8RG1U6CMixrbarTWUw=";
};
propagatedBuildInputs = [ jre ] ;
-79
pkgs/development/interpreters/spidermonkey/1.8.5.nix
···
-
{ stdenv, lib, autoconf213, fetchurl, fetchpatch, pkg-config, nspr, perl, python2, zip }:
-
-
stdenv.mkDerivation {
-
pname = "spidermonkey";
-
version = "1.8.5";
-
-
src = fetchurl {
-
url = "mirror://mozilla/js/js185-1.0.0.tar.gz";
-
sha256 = "5d12f7e1f5b4a99436685d97b9b7b75f094d33580227aa998c406bbae6f2a687";
-
};
-
-
propagatedBuildInputs = [ nspr ];
-
-
nativeBuildInputs = [ pkg-config ] ++ lib.optional stdenv.isAarch32 autoconf213;
-
buildInputs = [ perl python2 zip ];
-
-
postUnpack = "sourceRoot=\${sourceRoot}/js/src";
-
-
preConfigure = ''
-
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${nspr.dev}/include/nspr"
-
export LIBXUL_DIST=$out
-
${lib.optionalString stdenv.isAarch32 "autoreconf --verbose --force"}
-
'';
-
-
patches = [
-
(fetchpatch {
-
name = "gcc6.patch";
-
url = "https://sources.debian.org/data/main/m/mozjs/1.8.5-1.0.0+dfsg-6/debian/patches/fix-811665.patch";
-
sha256 = "1q8477xqxiy5d8376k5902l45gd0qkd4nxmhl8vr6rr1pxfcny99";
-
})
-
] ++ lib.optionals stdenv.isAarch32 [
-
# Explained below in configureFlags for ARM
-
./1.8.5-findvanilla.patch
-
# Fix for hard float flags.
-
./1.8.5-arm-flags.patch
-
];
-
-
patchFlags = [ "-p3" ];
-
-
# fixes build on gcc8
-
postPatch = ''
-
substituteInPlace ./methodjit/MethodJIT.cpp \
-
--replace 'asm volatile' 'asm'
-
'';
-
-
# On the Sheevaplug, ARM, its nanojit thing segfaults in japi-tests in
-
# "make check". Disabling tracejit makes it work, but then it needs the
-
# patch findvanilla.patch do disable a checker about allocator safety. In case
-
# of polkit, which is what matters most, it does not override the allocator
-
# so the failure of that test does not matter much.
-
configureFlags = [ "--enable-threadsafe" "--with-system-nspr" ] ++
-
lib.optionals (stdenv.hostPlatform.system == "armv5tel-linux") [
-
"--with-cpu-arch=armv5t"
-
"--disable-tracejit" ];
-
-
# hack around a make problem, see https://github.com/NixOS/nixpkgs/issues/1279#issuecomment-29547393
-
preBuild = ''
-
touch -- {.,shell,jsapi-tests}/{-lpthread,-ldl}
-
${if stdenv.isAarch32 then "rm -r jit-test/tests/jaeger/bug563000" else ""}
-
'';
-
-
enableParallelBuilding = true;
-
-
doCheck = true;
-
-
preCheck = ''
-
rm jit-test/tests/sunspider/check-date-format-tofte.js # https://bugzil.la/600522
-
'';
-
-
meta = with lib; {
-
description = "Mozilla's JavaScript engine written in C/C++";
-
homepage = "https://developer.mozilla.org/en/SpiderMonkey";
-
# TODO: MPL/GPL/LGPL tri-license.
-
maintainers = [ maintainers.goibhniu ];
-
platforms = platforms.linux;
-
broken = stdenv.isAarch64; # 2018-08-21, broken since 2017-03-08
-
};
-
}
-
+2 -2
pkgs/development/libraries/libplacebo/default.nix
···
stdenv.mkDerivation rec {
pname = "libplacebo";
-
version = "3.120.2";
+
version = "3.120.3";
src = fetchFromGitLab {
domain = "code.videolan.org";
owner = "videolan";
repo = pname;
rev = "v${version}";
-
sha256 = "0wh5w7bx789ynnzr27xi0csql4jaxq80csawg6znabw3ld54wb86";
+
sha256 = "02hiyhnjdz3zqnzks9bi7my62a85k9k9vfgmh9fy19snsbkd6l80";
};
nativeBuildInputs = [
+18 -12
pkgs/development/libraries/physics/fastnlo/default.nix pkgs/development/libraries/physics/fastnlo_toolkit/default.nix
···
{ lib
, stdenv
, fetchurl
+
, autoreconfHook
, boost
-
, fastjet
, gfortran
, lhapdf
-
, python2
-
, root
+
, ncurses
+
, python
+
, swig
, yoda
, zlib
+
, withPython ? false
}:
stdenv.mkDerivation rec {
pname = "fastnlo_toolkit";
-
version = "2.3.1pre-2402";
+
version = "2.3.1pre-2411";
src = fetchurl {
-
url = "https://fastnlo.hepforge.org/code/v23/${pname}-${version}.tar.gz";
-
sha256 = "1h41xnqcz401x3zbs8i2dsb4xlhbv8i5ps0561p6y7gcyridgcbl";
+
urls = [
+
"https://fastnlo.hepforge.org/code/v23/${pname}-${version}.tar.gz"
+
"https://sid.ethz.ch/debian/fastnlo/${pname}-${version}.tar.gz"
+
];
+
sha256 = "0fm9k732pmi3prbicj2yaq815nmcjll95fagjqzf542ng3swpqnb";
};
+
+
nativeBuildInputs = lib.optional withPython autoreconfHook;
buildInputs = [
boost
-
fastjet
gfortran
gfortran.cc.lib
lhapdf
-
python2
-
root
yoda
-
];
+
] ++ lib.optional withPython python
+
++ lib.optional (withPython && python.isPy3k) ncurses;
+
propagatedBuildInputs = [
zlib
-
];
+
] ++ lib.optional withPython swig;
preConfigure = ''
substituteInPlace ./fastnlotoolkit/Makefile.in \
···
configureFlags = [
"--with-yoda=${yoda}"
-
];
+
] ++ lib.optional withPython "--enable-pyext";
enableParallelBuilding = true;
+18 -4
pkgs/development/python-modules/aiohue/default.nix
···
-
{ lib, buildPythonPackage, fetchPypi, aiohttp }:
+
{ lib
+
, buildPythonPackage
+
, fetchPypi
+
, aiohttp
+
}:
buildPythonPackage rec {
pname = "aiohue";
-
version = "2.2.0";
+
version = "2.3.0";
src = fetchPypi {
inherit pname version;
-
sha256 = "35696d04d6eb0328b7031ea3c0a3cfe5d83dfcf62f920522e4767d165c6bc529";
+
sha256 = "1xinllv2cvxl9fxi15nayzw9lfzijb3m7i49gkkr46qr8xvsavyk";
};
-
propagatedBuildInputs = [ aiohttp ];
+
propagatedBuildInputs = [
+
aiohttp
+
];
+
+
pythonImportsCheck = [
+
"aiohue"
+
"aiohue.discovery"
+
];
+
+
# has no tests
+
doCheck = false;
meta = with lib; {
description = "asyncio package to talk to Philips Hue";
+66
pkgs/development/python-modules/aiopvpc/default.nix
···
+
{ lib
+
, aiohttp
+
, async-timeout
+
, buildPythonPackage
+
, fetchFromGitHub
+
, fetchpatch
+
, poetry-core
+
, pytest-asyncio
+
, pytest-timeout
+
, pytestCheckHook
+
, pythonOlder
+
, pytz
+
}:
+
+
buildPythonPackage rec {
+
pname = "aiopvpc";
+
version = "2.0.2";
+
disabled = pythonOlder "3.7";
+
format = "pyproject";
+
+
src = fetchFromGitHub {
+
owner = "azogue";
+
repo = pname;
+
rev = "v${version}";
+
sha256 = "1ajs4kbdlfn4h7f3d6lwkp4yl1rl7zyvj997nhsz93jjwxbajkpv";
+
};
+
+
nativeBuildInputs = [
+
poetry-core
+
];
+
+
propagatedBuildInputs = [
+
aiohttp
+
pytz
+
async-timeout
+
];
+
+
checkInputs = [
+
pytest-asyncio
+
pytest-timeout
+
pytestCheckHook
+
];
+
+
patches = [
+
# Switch to poetry-core, https://github.com/azogue/aiopvpc/pull/10
+
(fetchpatch {
+
name = "use-peotry-core.patch";
+
url = "https://github.com/azogue/aiopvpc/commit/4bc2740ffd485a60acf579b4f3eb5ee6a353245c.patch";
+
sha256 = "0ynj7pqq3akdvdrvqcwnnslay3mn1q92qhk8fg95ppflzscixli6";
+
})
+
];
+
+
postPatch = ''
+
substituteInPlace pytest.ini --replace \
+
" --cov --cov-report term --cov-report html" ""
+
'';
+
+
pythonImportsCheck = [ "aiopvpc" ];
+
+
meta = with lib; {
+
description = "Python module to download Spanish electricity hourly prices (PVPC)";
+
homepage = "https://github.com/azogue/aiopvpc";
+
license = with licenses; [ mit ];
+
maintainers = with maintainers; [ fab ];
+
};
+
}
+38
pkgs/development/python-modules/asyncstdlib/default.nix
···
+
{ lib
+
, buildPythonPackage
+
, fetchFromGitHub
+
, typing-extensions
+
, pytestCheckHook
+
, pythonOlder
+
}:
+
+
buildPythonPackage rec {
+
pname = "asyncstdlib";
+
version = "3.9.1";
+
disabled = pythonOlder "3.7";
+
format = "flit";
+
+
src = fetchFromGitHub {
+
owner = "maxfischer2781";
+
repo = pname;
+
rev = "v${version}";
+
sha256 = "13ranr7zi61w52vfrxwkf32bbhk88j0r5c5z2x2h5vw268001lk2";
+
};
+
+
propagatedBuildInputs = [
+
typing-extensions
+
];
+
+
checkInputs = [
+
pytestCheckHook
+
];
+
+
pythonImportsCheck = [ "asyncstdlib" ];
+
+
meta = with lib; {
+
description = "Python library that extends the Python asyncio standard library";
+
homepage = "https://asyncstdlib.readthedocs.io/";
+
license = with licenses; [ mit ];
+
maintainers = with maintainers; [ fab ];
+
};
+
}
+2
pkgs/development/python-modules/chalice/default.nix
···
, click
, enum-compat
, hypothesis
+
, inquirer
, jmespath
, mock
, mypy-extensions
···
botocore
click
enum-compat
+
inquirer
jmespath
mypy-extensions
pip
+29 -11
pkgs/development/python-modules/denonavr/default.nix
···
-
{ lib, buildPythonPackage, fetchFromGitHub, isPy27, requests, netifaces
-
, pytestCheckHook, testtools, requests-mock }:
+
{ lib
+
, asyncstdlib
+
, attrs
+
, buildPythonPackage
+
, defusedxml
+
, fetchFromGitHub
+
, httpx
+
, netifaces
+
, pytest-asyncio
+
, pytestCheckHook
+
, pytest-httpx
+
, pytest-timeout
+
, pythonOlder
+
}:
buildPythonPackage rec {
pname = "denonavr";
-
version = "0.9.10";
-
disabled = isPy27;
+
version = "0.10.6";
+
disabled = pythonOlder "3.6";
src = fetchFromGitHub {
owner = "scarface-4711";
-
repo = "denonavr";
+
repo = pname;
rev = version;
-
sha256 = "sha256-3ap8F3ayBTpaR98md+gT0+hkIWlFBNxStTGWT5AL//A=";
+
sha256 = "sha256-jcbjExcyZSE+qVPuYiMmuneugDMBoYz4apY/lz4JnMI=";
};
propagatedBuildInputs = [
-
requests
+
asyncstdlib
+
attrs
+
defusedxml
+
httpx
netifaces
];
checkInputs = [
+
pytest-asyncio
pytestCheckHook
-
testtools
-
requests-mock
+
pytest-httpx
+
pytest-timeout
];
+
pythonImportsCheck = [ "denonavr" ];
+
meta = with lib; {
+
description = "Automation Library for Denon AVR receivers";
homepage = "https://github.com/scarface-4711/denonavr";
-
description = "Automation Library for Denon AVR receivers.";
-
license = licenses.mit;
+
license = with licenses; [ mit ];
maintainers = with maintainers; [ colemickens ];
};
}
+9 -8
pkgs/development/python-modules/netdisco/default.nix
···
-
{ lib, buildPythonPackage, isPy3k, fetchPypi, requests, zeroconf, netifaces, pytest }:
+
{ lib, buildPythonPackage, isPy3k, fetchPypi, requests, zeroconf, pytestCheckHook }:
buildPythonPackage rec {
pname = "netdisco";
-
version = "2.8.2";
+
version = "2.8.3";
disabled = !isPy3k;
src = fetchPypi {
inherit pname version;
-
sha256 = "dcaabf83b204282aacfb213b18799eb7af2d5a6defe529487bbd0548036392fe";
+
sha256 = "sha256-4WS9PiErB6U7QuejTvbrOmnHetbE5S4zaUyhLCbyihM=";
};
-
propagatedBuildInputs = [ requests zeroconf netifaces ];
+
propagatedBuildInputs = [ requests zeroconf ];
-
checkInputs = [ pytest ];
+
checkInputs = [ pytestCheckHook ];
-
checkPhase = ''
-
py.test
-
'';
+
pythonImportsCheck = [
+
"netdisco"
+
"netdisco.discovery"
+
];
meta = with lib; {
description = "Python library to scan local network for services and devices";
+18 -7
pkgs/development/python-modules/pgspecial/default.nix
···
-
{ lib, buildPythonPackage, fetchPypi, pytest, psycopg2, click, sqlparse }:
+
{ lib
+
, buildPythonPackage
+
, fetchPypi
+
, pytestCheckHook
+
, psycopg2
+
, click
+
, configobj
+
, sqlparse
+
}:
buildPythonPackage rec {
pname = "pgspecial";
···
sha256 = "b68feb0005f57861573d3fbb82c5c777950decfbb2d1624af57aec825db02c02";
};
-
checkInputs = [ pytest ];
-
propagatedBuildInputs = [ click sqlparse psycopg2 ];
+
propagatedBuildInputs = [
+
click
+
sqlparse
+
psycopg2
+
];
-
checkPhase = ''
-
find tests -name \*.pyc -delete
-
py.test tests
-
'';
+
checkInputs = [
+
configobj
+
pytestCheckHook
+
];
meta = with lib; {
description = "Meta-commands handler for Postgres Database";
+2 -2
pkgs/development/python-modules/pyclimacell/default.nix
···
buildPythonPackage rec {
pname = "pyclimacell";
-
version = "0.18.0";
+
version = "0.18.2";
disabled = pythonOlder "3.6";
src = fetchFromGitHub {
owner = "raman325";
repo = pname;
rev = "v${version}";
-
sha256 = "0pxlh3lwd1az6v7vbaz9kv6ngqxf34iddp7vr0d0p8apbvinwrha";
+
sha256 = "sha256-jWHjnebg4Aar48gid7bB7XYXOQtSqbmVmASsZd0YoPc=";
};
propagatedBuildInputs = [
+2 -2
pkgs/development/python-modules/pycm/default.nix
···
-
{ lib, buildPythonPackage, fetchFromGitHub, isPy3k, numpy, pytest }:
+
{ lib, buildPythonPackage, fetchFromGitHub, isPy3k, matplotlib, numpy, pytest, seaborn }:
buildPythonPackage rec {
pname = "pycm";
···
'';
checkInputs = [ pytest ];
-
propagatedBuildInputs = [ numpy ];
+
propagatedBuildInputs = [ matplotlib numpy seaborn ];
checkPhase = ''
pytest Test/
+1
pkgs/development/python-modules/pytest-annotate/default.nix
···
doCheck = false;
meta = with lib; {
+
broken = true; # unmaintained and incompatible with pytest>=6.0
homepage = "https://github.com/kensho-technologies/pytest-annotate";
description = "Generate PyAnnotate annotations from your pytest tests";
license = licenses.asl20;
+13 -8
pkgs/development/python-modules/python-redis-lock/default.nix
···
, buildPythonPackage
, fetchPypi
, redis
-
, pytest
+
, pytestCheckHook
, process-tests
, pkgs
, withDjango ? false, django_redis
···
sha256 = "4265a476e39d476a8acf5c2766485c44c75f3a1bd6cf73bb195f3079153b8374";
};
-
checkInputs = [ pytest process-tests pkgs.redis ];
+
propagatedBuildInputs = [
+
redis
+
] ++ lib.optional withDjango django_redis;
-
checkPhase = ''
-
pytest tests/
-
'';
+
checkInputs = [
+
pytestCheckHook
+
process-tests
+
pkgs.redis
+
];
-
propagatedBuildInputs = [ redis ]
-
++ lib.optional withDjango django_redis;
-
+
disabledTests = [
+
# https://github.com/ionelmc/python-redis-lock/issues/86
+
"test_no_overlap2"
+
];
meta = with lib; {
homepage = "https://github.com/ionelmc/python-redis-lock";
-1
pkgs/development/python-modules/python-snap7/default.nix
···
pythonImportsCheck = [
"snap7"
-
"snap7.six"
"snap7.util"
];
+3 -2
pkgs/development/python-modules/zeroconf/default.nix
···
buildPythonPackage rec {
pname = "zeroconf";
-
version = "0.29.0";
+
version = "0.30.0";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
-
sha256 = "sha256-eu+7ZYtFKx/X5REkNk+TjG9eQtbqiT+iVXvqjAbFQK8=";
+
sha256 = "sha256-elpjZq4FpI2wTf1ciILumKE/LQ4fxtCaXxvQo9HRCcc=";
};
propagatedBuildInputs = [ ifaddr ];
···
disabledTests = [
# disable tests that expect some sort of networking in the build container
+
"test_close_multiple_times"
"test_launch_and_close"
"test_launch_and_close_v4_v6"
"test_launch_and_close_v6_only"
+2 -2
pkgs/development/tools/analysis/flow/default.nix
···
stdenv.mkDerivation rec {
pname = "flow";
-
version = "0.150.0";
+
version = "0.150.1";
src = fetchFromGitHub {
owner = "facebook";
repo = "flow";
rev = "refs/tags/v${version}";
-
sha256 = "sha256-75QSM2v4xDCkDnxW6Qb2ZGiWClOSDCd0jSrUdupMXxY=";
+
sha256 = "sha256-waQdS0HJVW2WFQFklmZJC0jr09JrDP5Fl7SxVS0dsgU=";
};
installPhase = ''
+12 -4
pkgs/development/tools/continuous-integration/hercules-ci-agent/default.nix
···
-
{ gnutar, gzip, git, haskell, haskellPackages, lib, makeWrapper, runc, stdenv }:
+
{ gnutar, gzip, git, haskell, haskellPackages, lib, makeWrapper, nixos, runc, stdenv }:
let
inherit (haskell.lib) overrideCabal addBuildDepends;
inherit (lib) makeBinPath;
···
makeWrapper $out/libexec/hercules-ci-agent $out/bin/hercules-ci-agent --prefix PATH : ${makeBinPath bundledBins}
'';
});
-
in pkg // {
-
meta = pkg.meta // {
+
in pkg.overrideAttrs (o: {
+
meta = o.meta // {
position = toString ./default.nix + ":1";
};
-
}
+
passthru = o.passthru // {
+
# Does not test the package, but evaluation of the related NixOS module.
+
tests.nixos-minimal-config = nixos {
+
boot.loader.grub.enable = false;
+
fileSystems."/".device = "bogus";
+
services.hercules-ci-agent.enable = true;
+
};
+
};
+
})
+2 -2
pkgs/development/tools/esbuild/default.nix
···
buildGoModule rec {
pname = "esbuild";
-
version = "0.11.15";
+
version = "0.11.19";
src = fetchFromGitHub {
owner = "evanw";
repo = "esbuild";
rev = "v${version}";
-
sha256 = "1j6qli26i2hwkjqcigz7vyx6hg9daq4vlqigv7ddslw3h8hnp0md";
+
sha256 = "1cg1qjjsbqr9xbgh8m48vkcb52vf64ycd5x86px60apr068y9df9";
};
vendorSha256 = "1n5538yik72x94vzfq31qaqrkpxds5xys1wlibw2gn2am0z5c06q";
+2 -2
pkgs/development/tools/go-mockery/default.nix
···
buildGoModule rec {
pname = "go-mockery";
-
version = "2.7.4";
+
version = "2.7.5";
src = fetchFromGitHub {
owner = "vektra";
repo = "mockery";
rev = "v${version}";
-
sha256 = "sha256-St8QgUZUU7THM9H8i7Z+bgKu9LhXhUqH/B14LGmDCn0=";
+
sha256 = "sha256-RdXViEEJR8yud2coSmAUfIe1mTCHiZHALrcGRslNfEg=";
};
vendorSha256 = "sha256-//V3ia3YP1hPgC1ipScURZ5uXU4A2keoG6dGuwaPBcA=";
+3 -3
pkgs/development/tools/misc/act/default.nix
···
buildGoModule rec {
pname = "act";
-
version = "0.2.21";
+
version = "0.2.22";
src = fetchFromGitHub {
owner = "nektos";
repo = pname;
rev = "v${version}";
-
sha256 = "sha256-XDxG7F+oBatlb4ROBryt2Fop402riKmYoqZLJrUzBUQ=";
+
sha256 = "sha256-a+yw7QSLNX3hO2GnFCifYMbPWYwtleUZS1AqPsxw9t8=";
};
-
vendorSha256 = "sha256-PwVDMSl36m+6ISJQvyrkCjaL3xp5VkaZtfxyMpNn+KI=";
+
vendorSha256 = "sha256-6jD+gY/TmO/Ot507IlTLNdWv7G4BHYlk/E9rVoRD65A=";
doCheck = false;
+3 -3
pkgs/development/tools/rust/cargo-watch/default.nix
···
rustPlatform.buildRustPackage rec {
pname = "cargo-watch";
-
version = "7.7.2";
+
version = "7.8.0";
src = fetchFromGitHub {
owner = "passcod";
repo = pname;
rev = "v${version}";
-
sha256 = "sha256-ocibNgH2xw0BrJRmHCAahO6hPLmlDmwjjzo7mMWp9FU=";
+
sha256 = "sha256-ZbVBwSg3roIMA+5LVP3omtTgbAJ7HAdJDXyAybWuRLw=";
};
-
cargoSha256 = "sha256-6ztMEfVOlsyUtIeH+Qd/l7khC7XOHKc4bWsDd27RNu8=";
+
cargoSha256 = "sha256-6aoi/CLla/yKa5RuVgn8RJ9AK1j1wtZeBn+6tpXrJvA=";
buildInputs = lib.optionals stdenv.isDarwin [ CoreServices libiconv ];
+2 -2
pkgs/development/tools/vultr-cli/default.nix
···
buildGoModule rec {
pname = "vultr-cli";
-
version = "2.4.0";
+
version = "2.4.1";
src = fetchFromGitHub {
owner = "vultr";
repo = pname;
rev = "v${version}";
-
sha256 = "sha256-TNytKq2LqLWxNrqesOJbNQUTirvPkxLMqJmtbmFq+0Y=";
+
sha256 = "sha256:0qbsybs91v9vnkxj4kpwqhzk4hgpkq36wnixxjajg038x7slds4i";
};
vendorSha256 = null;
+10 -1
pkgs/games/colobot/default.nix
···
-
{ lib, stdenv, fetchFromGitHub, cmake, boost, SDL2, SDL2_image, SDL2_ttf, libpng
+
{ lib, stdenv, fetchFromGitHub, fetchpatch, cmake, boost, SDL2, SDL2_image, SDL2_ttf, libpng
, glew, gettext, libsndfile, libvorbis, libogg, physfs, openal
, xmlstarlet, doxygen, python3, callPackage }:
···
rev = "colobot-gold-${version}";
sha256 = "0viq5s4zqs33an7rdmc3anf74ml7mwwcwf60alhvp9hj5jr547s2";
};
+
+
patches = [
+
# Fix issue with newer compilers, like used in nixpkgs
+
# https://github.com/colobot/colobot/pull/1291
+
(fetchpatch {
+
url = "https://github.com/colobot/colobot/commit/fc2bd68876ac6302dbc8e91e8ffa33592db14b21.patch";
+
sha256 = "sha256-PKe8jeyHpTT86tprSafQhNqTYBrSonz+r2fL1lVJdfo=";
+
})
+
];
nativeBuildInputs = [ cmake xmlstarlet doxygen python3 ];
buildInputs = [ boost SDL2 SDL2_image SDL2_ttf libpng glew gettext libsndfile libvorbis libogg physfs openal ];
+2 -2
pkgs/games/cutemaze/default.nix
···
mkDerivation rec {
pname = "cutemaze";
-
version = "1.2.6";
+
version = "1.3.0";
src = fetchurl {
url = "https://gottcode.org/cutemaze/${pname}-${version}-src.tar.bz2";
-
sha256 = "0pw31j2i3ifndikhz9w684ia00r8zvcgnb66ign9w4lgs1zjgcrw";
+
sha256 = "sha256-h7+H2E37ZVSnlPa6ID+lNEvFtU5PfdMSlBjqBumojoU=";
};
nativeBuildInputs = [ qmake qttools ];
+2 -2
pkgs/misc/uboot/default.nix
···
}:
let
-
defaultVersion = "2021.01";
+
defaultVersion = "2021.04";
defaultSrc = fetchurl {
url = "ftp://ftp.denx.de/pub/u-boot/u-boot-${defaultVersion}.tar.bz2";
-
sha256 = "0m04glv9kn3bhs62sn675w60wkrl4m3a4hnbnnw67s3l198y21xl";
+
sha256 = "06p1vymf0dl6jc2xy5w7p42mpgppa46lmpm2ishmgsycnldqnhqd";
};
buildUBoot = {
version ? null
-10
pkgs/misc/vim-plugins/overrides.nix
···
meta.platforms = lib.platforms.all;
});
-
vim-closer = super.vim-closer.overrideAttrs (old: {
-
patches = [
-
# Fix duplicate tag in doc
-
(fetchpatch {
-
url = "https://github.com/rstacruz/vim-closer/commit/a504be8c7050e41b7dfc50c2362948e2cf7c5422.patch";
-
sha256 = "065q30d913fm3pc7r5y53wmnb7q7bhv21qxavm65bkb91242d409";
-
})
-
];
-
});
-
vim-codefmt = super.vim-codefmt.overrideAttrs (old: {
dependencies = with self; [ vim-maktaba ];
});
+2 -2
pkgs/misc/vscode-extensions/default.nix
···
mktplcRef = {
name = "todo-tree";
publisher = "Gruntfuggly";
-
version = "0.0.211";
-
sha256 = "1di2v1bhlhl1yi9rrmbq0r9gypiydl8xvj24yw64vsnkqs9yxbp3";
+
version = "0.0.213";
+
sha256 = "0fj7vvaqdldhbzm9dqh2plqlhg34jv5khd690xd87h418sv8rk95";
};
meta = with lib; {
license = licenses.mit;
+2 -2
pkgs/servers/home-assistant/component-packages.nix
···
# Do not edit!
{
-
version = "2021.5.0";
+
version = "2021.5.1";
components = {
"abode" = ps: with ps; [ abodepy ];
"accuweather" = ps: with ps; [ accuweather ];
···
"pushover" = ps: with ps; [ pushover-complete ];
"pushsafer" = ps: with ps; [ ];
"pvoutput" = ps: with ps; [ jsonpath xmltodict ];
-
"pvpc_hourly_pricing" = ps: with ps; [ ]; # missing inputs: aiopvpc
+
"pvpc_hourly_pricing" = ps: with ps; [ aiopvpc ];
"pyload" = ps: with ps; [ ];
"python_script" = ps: with ps; [ restrictedpython ];
"qbittorrent" = ps: with ps; [ ]; # missing inputs: python-qbittorrent
+5 -2
pkgs/servers/home-assistant/default.nix
···
extraBuildInputs = extraPackages py.pkgs;
# Don't forget to run parse-requirements.py after updating
-
hassVersion = "2021.5.0";
+
hassVersion = "2021.5.1";
in with py.pkgs; buildPythonApplication rec {
pname = "homeassistant";
···
owner = "home-assistant";
repo = "core";
rev = version;
-
sha256 = "1kwx0bq2i76p9gbx5kkzkjxd88vzf2daccm0wf123693isk1nwzs";
+
sha256 = "0bipjfkz4zqhy84jgrn3qxvs4nxya3j08lcsq3xa31xfz8wnpxwj";
};
# leave this in, so users don't have to constantly update their downstream patch handling
···
"calendar"
"camera"
"cast"
+
"climacell"
"climate"
"cloud"
"comfoconnect"
···
"deconz"
"default_config"
"demo"
+
"denonavr"
"derivative"
"device_automation"
"device_sun_light_trigger"
···
"prometheus"
"proximity"
"push"
+
"pvpc_hourly_pricing"
"python_script"
"random"
"recorder"
-57
pkgs/servers/http/couchdb/2.0.0.nix
···
-
{ lib, stdenv, fetchurl, erlang, icu, openssl, spidermonkey_1_8_5
-
, coreutils, bash, makeWrapper, python3 }:
-
-
stdenv.mkDerivation rec {
-
pname = "couchdb";
-
version = "2.3.1";
-
-
-
# when updating this, please consider bumping the OTP version
-
# in all-packages.nix
-
src = fetchurl {
-
url = "mirror://apache/couchdb/source/${version}/apache-${pname}-${version}.tar.gz";
-
sha256 = "0z926hjqyhxhyr65kqxwpmp80nyfqbig6d9dy8dqflpb87n8rss3";
-
};
-
-
nativeBuildInputs = [ makeWrapper ];
-
buildInputs = [ erlang icu openssl spidermonkey_1_8_5 (python3.withPackages(ps: with ps; [ requests ]))];
-
-
patches = [ ./jsapi.patch ];
-
postPatch = ''
-
substituteInPlace src/couch/rebar.config.script --replace '-DHAVE_CURL -I/usr/local/include' "-DHAVE_CURL -I/usr/local/include $NIX_CFLAGS_COMPILE"
-
-
patch bin/rebar <<EOF
-
1c1
-
< #!/usr/bin/env escript
-
---
-
> #!${coreutils}/bin/env escript
-
EOF
-
-
'';
-
-
# Configure a username. The build system would use "couchdb" as
-
# default if none is provided. Note that it is unclear where this
-
# username is actually used in the build, as any choice seems to be
-
# working.
-
configurePhase = ''
-
./configure -u nobody
-
'';
-
-
buildPhase = ''
-
make release
-
'';
-
-
installPhase = ''
-
mkdir -p $out
-
cp -r rel/couchdb/* $out
-
wrapProgram $out/bin/couchdb --suffix PATH : ${bash}/bin
-
'';
-
-
meta = with lib; {
-
description = "A database that uses JSON for documents, JavaScript for MapReduce queries, and regular HTTP for an API";
-
homepage = "http://couchdb.apache.org";
-
license = licenses.asl20;
-
platforms = platforms.all;
-
maintainers = with maintainers; [ ];
-
};
-
}
-39
pkgs/servers/http/couchdb/default.nix
···
-
{ lib, stdenv, fetchurl, erlang, icu, openssl, spidermonkey_1_8_5, curl, help2man
-
, sphinx, which, file, pkg-config, getopt }:
-
-
stdenv.mkDerivation rec {
-
pname = "couchdb";
-
version = "1.7.1";
-
-
src = fetchurl {
-
url = "mirror://apache/couchdb/source/${version}/apache-${pname}-${version}.tar.gz";
-
sha256 = "1b9cbdrmh1i71mrwvhm17v4cf7lckpil1vvq7lpmxyn6zfk0l84i";
-
};
-
-
nativeBuildInputs = [ help2man which file pkg-config sphinx ];
-
buildInputs = [ erlang icu openssl spidermonkey_1_8_5 curl ];
-
-
postInstall = ''
-
substituteInPlace $out/bin/couchdb --replace getopt "${getopt}/bin/getopt"
-
'';
-
-
/*
-
Versions of SpiderMonkey after the js185-1.0.0 release remove the optional
-
enforcement of preventing anonymous functions in a statement context. This
-
will most likely break your existing JavaScript code as well as render all
-
example code invalid.
-
-
If you wish to ignore this error pass --enable-js-trunk to ./configure.
-
*/
-
configureFlags = [
-
"--enable-js-trunk"
-
];
-
-
meta = with lib; {
-
description = "A database that uses JSON for documents, JavaScript for MapReduce queries, and regular HTTP for an API";
-
homepage = "http://couchdb.apache.org";
-
license = licenses.asl20;
-
platforms = platforms.all;
-
maintainers = with maintainers; [ ];
-
};
-
}
-60
pkgs/servers/http/couchdb/jsapi.patch
···
-
diff -ru couch_js/http.c couch_js-patched/http.c
-
--- apache-couchdb-2.0.0/src/couch/priv/couch_js/http.c 2016-09-12 11:28:51.000000000 +0200
-
+++ apache-couchdb-2.0.0-patched/src/couch/priv/couch_js/http.c 2017-02-10 10:52:33.025854045 +0100
-
@@ -15,7 +15,7 @@
-
#include <string.h>
-
#include <sys/types.h>
-
#include <sys/stat.h>
-
-#include <jsapi.h>
-
+#include <js/jsapi.h>
-
#include "config.h"
-
#include "utf8.h"
-
#include "util.h"
-
diff -ru couch_js/main.c couch_js-patched/main.c
-
--- apache-couchdb-2.0.0/src/couch/priv/couch_js/main.c 2016-09-12 11:28:51.000000000 +0200
-
+++ apache-couchdb-2.0.0-patched/src/couch/priv/couch_js/main.c 2017-02-10 10:52:33.001854154 +0100
-
@@ -20,7 +20,7 @@
-
#include <unistd.h>
-
#endif
-
-
-#include <jsapi.h>
-
+#include <js/jsapi.h>
-
#include "config.h"
-
#include "http.h"
-
#include "utf8.h"
-
diff -ru couch_js/utf8.c couch_js-patched/utf8.c
-
--- apache-couchdb-2.0.0/src/couch/priv/couch_js/utf8.c 2016-09-12 11:28:51.000000000 +0200
-
+++ apache-couchdb-2.0.0-patched/src/couch/priv/couch_js/utf8.c 2017-02-10 10:52:33.009854117 +0100
-
@@ -10,7 +10,7 @@
-
// License for the specific language governing permissions and limitations under
-
// the License.
-
-
-#include <jsapi.h>
-
+#include <js/jsapi.h>
-
#include "config.h"
-
-
static int
-
diff -ru couch_js/util.c couch_js-patched/util.c
-
--- apache-couchdb-2.0.0/src/couch/priv/couch_js/util.c 2016-09-12 11:28:51.000000000 +0200
-
+++ apache-couchdb-2.0.0-patched/src/couch/priv/couch_js/util.c 2017-02-10 10:52:33.017854081 +0100
-
@@ -13,7 +13,7 @@
-
#include <stdlib.h>
-
#include <string.h>
-
-
-#include <jsapi.h>
-
+#include <js/jsapi.h>
-
-
#include "help.h"
-
#include "util.h"
-
diff -ru couch_js/util.h couch_js-patched/util.h
-
--- apache-couchdb-2.0.0/src/couch/priv/couch_js/util.h 2016-09-12 11:28:51.000000000 +0200
-
+++ apache-couchdb-2.0.0-patched/src/couch/priv/couch_js/util.h 2017-02-10 10:52:32.988854212 +0100
-
@@ -13,7 +13,7 @@
-
#ifndef COUCHJS_UTIL_H
-
#define COUCHJS_UTIL_H
-
-
-#include <jsapi.h>
-
+#include <js/jsapi.h>
-
-
typedef struct {
-
int no_eval;
+2 -2
pkgs/servers/jackett/default.nix
···
stdenv.mkDerivation rec {
pname = "jackett";
-
version = "0.17.865";
+
version = "0.17.1027";
src = fetchurl {
url = "https://github.com/Jackett/Jackett/releases/download/v${version}/Jackett.Binaries.Mono.tar.gz";
-
sha256 = "sha256-kjrch++WncedVkRm05RifUGEYlc5NFAss/E6fgPZWyQ=";
+
sha256 = "sha256:1kmi4f1ghx82rfd8y4laggg8cs9apnhcdkakfi0mah7hqcnqmhm3";
};
nativeBuildInputs = [ makeWrapper ];
+122 -61
pkgs/servers/rt/default.nix
···
-
{ lib, stdenv, buildEnv, fetchurl, perl, perlPackages, makeWrapper }:
+
{ lib, stdenv, autoreconfHook, buildEnv, fetchFromGitHub, perl, perlPackages, makeWrapper, gnupg, openssl }:
-
# This package isn't extremely useful as it is, but is getting close.
-
# After running:
-
#
-
# nix-build . -A rt
-
#
-
# I created a config file named myconfig.pm with:
-
#
-
# use utf8;
-
# Set($rtname, '127.0.0.1');
-
# # These dirs need to be pre-created:
-
# Set($MasonSessionDir, '/home/grahamc/foo/sessiondir/');
-
# Set($MasonDataDir, '/home/grahamc/foo/localstate/');
-
# Set($WebPort, 8080);
-
#
-
# Set($DatabaseType, "SQLite");
-
# Set( $DatabaseName, '/home/grahamc/projects/foo/my.db' );
-
#
-
# 1;
-
#
-
# and ran
-
#
-
# RT_SITE_CONFIG=$(pwd)/myconfig.pm ./result/bin/rt-setup-database --action init
-
#
-
# Then:
-
#
-
# RT_SITE_CONFIG=$(pwd)/myconfig.pm ./result/bin/rt-server
-
#
-
# Make sure to check out result/etc/RT_Config.pm
-
#
-
# Good luck.
stdenv.mkDerivation rec {
pname = "rt";
+
version = "5.0.1";
-
version = "4.4.4";
-
-
src = fetchurl {
-
url = "https://download.bestpractical.com/pub/rt/release/${pname}-${version}.tar.gz";
-
sha256 = "1108jhz1gvalcfnbzgpbk7fkxzxkkc7m74a3bnwyjzldlyj1dhrl";
+
src = fetchFromGitHub {
+
repo = pname;
+
rev = "${pname}-${version}";
+
owner = "bestpractical";
+
sha256 = "1qqh6w094x7dljz001va802v4s6mixs9lkhs2cs47lf5ph3vwq2q";
};
-
patches = [ ./override-generated.patch ];
+
patches = [
+
./dont-check-users_groups.patch # needed for "make testdeps" to work in the build
+
./override-generated.patch
+
];
+
+
nativeBuildInputs = [
+
autoreconfHook
+
];
buildInputs = [
makeWrapper
···
(buildEnv {
name = "rt-perl-deps";
paths = with perlPackages; (requiredPerlModules [
-
ApacheSession BusinessHours CGIEmulatePSGI CGIPSGI
-
CSSMinifierXS CSSSquish ConvertColor CryptEksblowfish
-
CryptSSLeay DBDSQLite DBDmysql DBIxSearchBuilder DataGUID
-
DataICal DataPagePageset DateExtract DateManip
-
DateTimeFormatNatural DevelGlobalDestruction EmailAddress
-
EmailAddressList FCGI FCGIProcManager FileShareDir FileWhich
-
GD GDGraph GnuPGInterface GraphViz HTMLFormatTextWithLinks
-
HTMLFormatTextWithLinksAndTables HTMLMason
-
HTMLMasonPSGIHandler HTMLQuoted HTMLRewriteAttributes
-
HTMLScrubber IPCRun IPCRun3 JSON JavaScriptMinifierXS LWP
-
LWPProtocolHttps LocaleMaketextFuzzy LocaleMaketextLexicon
-
LogDispatch MIMETools MIMETypes MailTools ModuleRefresh
-
ModuleVersionsReport MozillaCA NetCIDR NetIP PerlIOeol Plack
-
RegexpCommon RegexpCommonnetCIDR RegexpIPv6 RoleBasic
-
ScopeUpper Starlet SymbolGlobalName TermReadKey
-
TextPasswordPronounceable TextQuoted TextTemplate
-
TextWikiFormat TextWrapper TimeParseDate TreeSimple
-
UNIVERSALrequire XMLRSS
+
ApacheSession
+
BusinessHours
+
CGIEmulatePSGI
+
CGIPSGI
+
CSSMinifierXS
+
CSSSquish
+
ConvertColor
+
CryptEksblowfish
+
CryptSSLeay
+
CryptX509
+
DBDPg
+
DBIxSearchBuilder
+
DataGUID
+
DataICal
+
DataPage
+
DataPagePageset
+
DateExtract
+
DateManip
+
DateTimeFormatNatural
+
DevelGlobalDestruction
+
EmailAddress
+
EmailAddressList
+
EncodeDetect
+
EncodeHanExtra
+
FCGI
+
FCGIProcManager
+
FileShareDir
+
FileWhich
+
GD
+
GDGraph
+
GnuPGInterface
+
GraphViz
+
HTMLFormatExternal
+
HTMLFormatTextWithLinks
+
HTMLFormatTextWithLinksAndTables
+
HTMLGumbo
+
HTMLMason
+
HTMLMasonPSGIHandler
+
HTMLQuoted
+
HTMLRewriteAttributes
+
HTMLScrubber
+
IPCRun
+
IPCRun3
+
JSON
+
JavaScriptMinifierXS
+
LWP
+
LWPProtocolHttps
+
LocaleMaketextFuzzy
+
LocaleMaketextLexicon
+
LogDispatch
+
MIMETools
+
MIMETypes
+
MailTools
+
ModulePath
+
ModuleRefresh
+
ModuleVersionsReport
+
Moose
+
MooseXNonMoose
+
MooseXRoleParameterized
+
MozillaCA
+
NetCIDR
+
NetIP
+
PathDispatcher
+
PerlIOeol
+
Plack
+
PodParser
+
RegexpCommon
+
RegexpCommonnetCIDR
+
RegexpIPv6
+
RoleBasic
+
ScopeUpper
+
Starlet
+
Starman
+
StringShellQuote
+
SymbolGlobalName
+
TermReadKey
+
TextPasswordPronounceable
+
TextQuoted
+
TextTemplate
+
TextWikiFormat
+
TextWordDiff
+
TextWrapper
+
TimeParseDate
+
TreeSimple
+
UNIVERSALrequire
+
WebMachine
+
XMLRSS
+
perlldap
]);
})
];
+
preAutoreconf = ''
+
substituteInPlace configure.ac \
+
--replace "rt-3.9.EXPORTED" "rt-${version}"
+
'';
preConfigure = ''
configureFlags="$configureFlags --with-web-user=$UID"
configureFlags="$configureFlags --with-web-group=$(id -g)"
···
"--enable-graphviz"
"--enable-gd"
"--enable-gpg"
-
"--with-db-type=SQLite"
+
"--enable-smime"
+
"--with-db-type=Pg"
];
buildPhase = ''
-
make testdeps | grep -i missing | sort
+
make testdeps
'';
-
preFixup = ''
-
for i in $(find $out/bin -type f; find $out/sbin -type f); do
-
wrapProgram $i \
-
--prefix PERL5LIB ':' $PERL5LIB
+
postFixup = ''
+
for i in $(find $out/bin -type f); do
+
wrapProgram $i --prefix PERL5LIB ':' $PERL5LIB \
+
--prefix PATH ":" "${lib.makeBinPath [ openssl gnupg ]}"
done
+
+
rm -r $out/var
+
mkdir -p $out/var/data
+
ln -s /var/log/rt $out/var/log
+
ln -s /run/rt/mason_data $out/var/mason_data
+
ln -s /var/lib/rt/shredder $out/var/data/RT-Shredder
+
ln -s /var/lib/rt/smime $out/var/data/smime
+
ln -s /var/lib/rt/gpg $out/var/data/gpg
'';
meta = {
+12
pkgs/servers/rt/dont-check-users_groups.patch
···
+
diff --git a/sbin/rt-test-dependencies.in b/sbin/rt-test-dependencies.in
+
index e51feb197..d75b1bc4e 100644
+
--- a/sbin/rt-test-dependencies.in
+
+++ b/sbin/rt-test-dependencies.in
+
@@ -423,6 +423,7 @@ sub check_perl_version {
+
}
+
+
sub check_users_groups {
+
+ return 0;
+
section("users / groups");
+
+
my $fails = 0;
+2 -2
pkgs/tools/admin/fioctl/default.nix
···
buildGoModule rec {
pname = "fioctl";
-
version = "0.15";
+
version = "0.16";
src = fetchFromGitHub {
owner = "foundriesio";
repo = "fioctl";
rev = "v${version}";
-
sha256 = "0gmh32h9j6wpkdxxg7vj158lsaxq30x7hjsc9gwpip3bff278hw4";
+
sha256 = "1mm62piih7x2886wpgqd8ks22vpmrjgxs4alskiqz61bgshks9vw";
};
vendorSha256 = "170z5a1iwwcpz890nficqnz7rr7yzdxr5jx9pa7s31z17lr8kbz9";
+11 -3
pkgs/tools/admin/trivy/default.nix
···
buildGoModule rec {
pname = "trivy";
-
version = "0.17.1";
+
version = "0.17.2";
src = fetchFromGitHub {
owner = "aquasecurity";
repo = pname;
rev = "v${version}";
-
sha256 = "sha256-5TOKYxH1Tnsd1t2yoUflFUSW0QGS9l5+0JtS2Fo6vL0=";
+
sha256 = "sha256-Ub3rIiOJUh3vNCC+82rCSzKSovMnRW2jo8HbI02ouws=";
};
-
vendorSha256 = "sha256-zVe1bTTLOHxfdbb6VcztOCWMbCbzT6igNpvPytktMWs=";
+
vendorSha256 = "sha256-xL0wqKFMQksaLkTAxV72SWh0PPTbOqWcd6deJ9RVeEA=";
excludedPackages = "misc";
preBuild = ''
buildFlagsArray+=("-ldflags" "-s -w -X main.version=v${version}")
+
'';
+
+
doInstallCheck = true;
+
installCheckPhase = ''
+
runHook preInstallCheck
+
$out/bin/trivy --help
+
$out/bin/trivy --version | grep "v${version}"
+
runHook postInstallCheck
'';
meta = with lib; {
+7 -1
pkgs/tools/misc/hdf5/1.10.nix
···
, removeReferencesTo
, zlib ? null
, enableShared ? !stdenv.hostPlatform.isStatic
+
, javaSupport ? false
+
, jdk
}:
let inherit (lib) optional optionals; in
···
outputs = [ "out" "dev" ];
+
buildInputs = optional javaSupport jdk;
+
nativeBuildInputs = [ removeReferencesTo ];
propagatedBuildInputs = optional (zlib != null) zlib;
-
configureFlags = optional enableShared "--enable-shared";
+
configureFlags = []
+
++ optional enableShared "--enable-shared"
+
++ optional javaSupport "--enable-java";
patches = [
./bin-mv.patch
+4 -4
pkgs/tools/networking/boundary/default.nix
···
stdenv.mkDerivation rec {
pname = "boundary";
-
version = "0.2.0";
+
version = "0.2.1";
src =
let
···
};
in
fetchsrc version {
-
x86_64-linux = "sha256-4h1Lx+Et1AfX75Cn0YUhV4MkEtzP6ICqAHVKex3PBpg=";
-
aarch64-linux = "sha256-i7gzv8GdDgikPT1tMia4xltEYiIZ/VNRbAiGF2o8oKA=";
-
x86_64-darwin = "sha256-tleIY1loPE61n59Qc9CJeropRUvTBbcIA8xmB1SaMt8=";
+
x86_64-linux = "sha256-DDrsgZlnDF+WlBKyDi1McqcXEe5mAxoq5WW60p5qFQ8=";
+
aarch64-linux = "sha256-z9puhWmWf6G2C9PItKD4KL742UjVyVE/TDIu0gpOKd4=";
+
x86_64-darwin = "sha256-hDZPKi5R0seLbkHe7V4Vm+FarI6HrSZJF9JBJBa9O2Y=";
};
dontConfigure = true;
+2 -2
pkgs/tools/security/expliot/default.nix
···
buildPythonApplication rec {
pname = "expliot";
-
version = "0.9.7";
+
version = "0.9.8";
disabled = pythonOlder "3.7";
src = fetchFromGitLab {
owner = "expliot_framework";
repo = pname;
rev = version;
-
sha256 = "sha256-k43PvH9BXcvxe7O5iCGzLuxv/WkB9YelH/d/1S7BpU0=";
+
sha256 = "sha256-7Cuj3YKKwDxP2KKueJR9ZO5Bduv+lw0Y87Rw4b0jbGY=";
};
propagatedBuildInputs = [
+4
pkgs/top-level/aliases.nix
···
conntrack_tools = conntrack-tools; # added 2018-05
cool-old-term = cool-retro-term; # added 2015-01-31
coprthr = throw "coprthr has been removed."; # added 2019-12-08
+
couchdb = throw "couchdb was removed from nixpkgs, use couchdb3 instead"; # added 2021-03-03
+
couchdb2 = throw "couchdb2 was removed from nixpkgs, use couchdb3 instead"; # added 2021-03-03
corebird = throw "corebird was deprecated 2019-10-02: See https://www.patreon.com/posts/corebirds-future-18921328. Please use Cawbird as replacement.";
coredumper = throw "coredumper has been removed: abandoned by upstream."; # added 2019-11-16
cpp_ethereum = throw "cpp_ethereum has been removed; abandoned upstream."; # added 2020-11-30
···
exfat-utils = exfat; # 2015-09-11
facette = throw "facette has been removed."; # added 2020-01-06
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
fetchFromGithub = throw "You meant fetchFromGitHub, with a capital H.";
ffadoFull = ffado; # added 2018-05-01
···
speedtest_cli = speedtest-cli; # added 2015-02-17
spice_gtk = spice-gtk; # added 2018-02-25
spice_protocol = spice-protocol; # added 2018-02-25
+
spidermonkey_1_8_5 = throw "spidermonkey_1_8_5 has been removed, because it is based on Firefox 4.0 from 2011."; # added 2021-05-03
spidermonkey_38 = throw "spidermonkey_38 has been removed. Please use spidermonkey_78 instead."; # added 2021-03-21
spidermonkey_52 = throw "spidermonkey_52 has been removed. Please use spidermonkey_78 instead."; # added 2019-10-16
spidermonkey_60 = throw "spidermonkey_60 has been removed. Please use spidermonkey_78 instead."; # added 2021-03-21
+4 -12
pkgs/top-level/all-packages.nix
···
hdf5-blosc = callPackage ../development/libraries/hdf5-blosc { };
-
hdfview = callPackage ../tools/misc/hdfview { };
+
hdfview = callPackage ../tools/misc/hdfview {
+
hdf5 = hdf5_1_10;
+
};
hecate = callPackage ../applications/editors/hecate { };
···
sparkleshare = callPackage ../applications/version-management/sparkleshare { };
-
spidermonkey_1_8_5 = callPackage ../development/interpreters/spidermonkey/1.8.5.nix { };
spidermonkey_68 = callPackage ../development/interpreters/spidermonkey/68.nix { };
spidermonkey_78 = callPackage ../development/interpreters/spidermonkey/78.nix { };
···
clickhouse-cli = with python3Packages; toPythonApplication clickhouse-cli;
-
couchdb = callPackage ../servers/http/couchdb {
-
sphinx = python27Packages.sphinx;
-
erlang = erlangR19;
-
};
-
-
couchdb2 = callPackage ../servers/http/couchdb/2.0.0.nix {
-
erlang = erlangR21;
-
};
-
couchdb3 = callPackage ../servers/http/couchdb/3.nix {
erlang = erlangR22;
···
fastjet-contrib = callPackage ../development/libraries/physics/fastjet-contrib { };
-
fastnlo = callPackage ../development/libraries/physics/fastnlo { };
+
fastnlo_toolkit = callPackage ../development/libraries/physics/fastnlo_toolkit { };
geant4 = libsForQt5.callPackage ../development/libraries/physics/geant4 { };
+5 -1
pkgs/top-level/haskell-packages.nix
···
llvmPackages = pkgs.llvmPackages_9;
};
ghc901 = callPackage ../development/compilers/ghc/9.0.1.nix {
-
bootPkgs = packages.ghc8102Binary;
+
# aarch64 ghc8102Binary exceeds max output size on hydra
+
bootPkgs = if stdenv.isAarch64 || stdenv.isAarch32 then
+
packages.ghc8102BinaryMinimal
+
else
+
packages.ghc8102Binary;
inherit (buildPackages.python3Packages) sphinx;
buildLlvmPackages = buildPackages.llvmPackages_10;
llvmPackages = pkgs.llvmPackages_10;
+180
pkgs/top-level/perl-packages.nix
···
propagatedBuildInputs = [ AlgorithmDiff ];
};
+
AlienBaseModuleBuild = buildPerlModule {
+
pname = "Alien-Base-ModuleBuild";
+
version = "1.15";
+
src = fetchurl {
+
url = "mirror://cpan/authors/id/P/PL/PLICEASE/Alien-Base-ModuleBuild-1.15.tar.gz";
+
sha256 = "13c9432cf41b34cb14df2454a03e540e2bd5dc9eb9c82824b6ad0f4c67793afd";
+
};
+
buildInputs = [ Test2Suite ];
+
propagatedBuildInputs = [ AlienBuild ArchiveExtract CaptureTiny Filechdir PathTiny ShellConfigGenerate ShellGuess SortVersions URI ];
+
meta = {
+
homepage = https://metacpan.org/pod/Alien::Base::ModuleBuild;
+
description = "A Module::Build subclass for building Alien:: modules and their libraries";
+
license = with lib.licenses; [ artistic1 gpl1Plus ];
+
};
+
};
+
AlienBuild = buildPerlPackage {
pname = "Alien-Build";
version = "2.37";
···
meta = {
description = "Alien package for the GNU Multiple Precision library.";
license = with lib.licenses; [ lgpl3Plus ];
+
};
+
};
+
+
AlienLibGumbo = buildPerlModule {
+
pname = "Alien-LibGumbo";
+
version = "0.05";
+
src = fetchurl {
+
url = "mirror://cpan/authors/id/R/RU/RUZ/Alien-LibGumbo-0.05.tar.gz";
+
sha256 = "0fbe916ab11f680e5c28cd1ac800372323e2a0e06affc6c8b36279fc64d76517";
+
};
+
buildInputs = [ AlienBaseModuleBuild ];
+
propagatedBuildInputs = [ AlienBuild FileShareDir PathClass ];
+
meta = {
+
description = "Gumbo parser library";
+
license = with lib.licenses; [ artistic1 gpl1Plus ];
};
};
···
meta = {
description = "Crypto toolkit";
license = with lib.licenses; [ artistic1 gpl1Plus ];
+
};
+
};
+
+
CryptX509 = buildPerlPackage {
+
pname = "Crypt-X509";
+
version = "0.53";
+
src = fetchurl {
+
url = "mirror://cpan/authors/id/M/MR/MRSCOTTY/Crypt-X509-0.53.tar.gz";
+
sha256 = "d2ff614f9457dc87ab277b81bced3532c3ed309b73b9a61aaefbe9488c9e660f";
+
};
+
propagatedBuildInputs = [ ConvertASN1 ];
+
meta = {
+
description = "Parse a X.509 certificate";
};
};
···
};
};
+
HTMLFormatExternal = buildPerlPackage {
+
pname = "HTML-FormatExternal";
+
version = "26";
+
src = fetchurl {
+
url = "mirror://cpan/authors/id/K/KR/KRYDE/HTML-FormatExternal-26.tar.gz";
+
sha256 = "3c59f233d0b10686a85aed0c994011cec68626da0128dea90b5c4fdc1746cfc3";
+
};
+
propagatedBuildInputs = [ IPCRun URI constant-defer ];
+
meta = {
+
homepage = http://user42.tuxfamily.org/html-formatexternal/index.html;
+
description = "HTML to text formatting using external programs";
+
license = lib.licenses.gpl3Plus;
+
};
+
};
+
HTMLFormatTextWithLinks = buildPerlModule {
pname = "HTML-FormatText-WithLinks";
version = "0.15";
···
propagatedBuildInputs = [ CryptBlowfish CryptCBC DataClone DateTimeFormatStrptime EmailValid HTMLTree JSONMaybeXS MooseXGetopt MooseXTypesCommon MooseXTypesLoadableClass aliased ];
meta = {
description = "HTML forms using Moose";
+
license = with lib.licenses; [ artistic1 gpl1Plus ];
+
};
+
};
+
+
HTMLGumbo = buildPerlModule {
+
pname = "HTML-Gumbo";
+
version = "0.18";
+
src = fetchurl {
+
url = "mirror://cpan/authors/id/R/RU/RUZ/HTML-Gumbo-0.18.tar.gz";
+
sha256 = "bf50b61c24656cc3fc958602d80a9c7d017247af38d8dbfa0e9dec5b75425d5f";
+
};
+
propagatedBuildInputs = [ AlienLibGumbo ];
+
meta = {
+
description = "HTML5 parser based on gumbo C library";
license = with lib.licenses; [ artistic1 gpl1Plus ];
};
};
···
description = "WebDAV client library.";
};
propagatedBuildInputs = [ XMLDOM ];
+
};
+
+
HTTPHeadersActionPack = buildPerlPackage {
+
pname = "HTTP-Headers-ActionPack";
+
version = "0.09";
+
src = fetchurl {
+
url = "mirror://cpan/authors/id/D/DR/DROLSKY/HTTP-Headers-ActionPack-0.09.tar.gz";
+
sha256 = "c78111ab857e48c69824903d4b6ce8293feffc6b5d670db550a767f853acc7da";
+
};
+
buildInputs = [ TestFatal TestWarnings ];
+
propagatedBuildInputs = [ HTTPDate HTTPMessage ModuleRuntime SubExporter URI ];
+
meta = {
+
description = "HTTP Action, Adventure and Excitement";
+
license = with lib.licenses; [ artistic1 gpl1Plus ];
+
};
};
HTTPHeaderParserXS = buildPerlPackage {
···
+
MooXTypeTiny = buildPerlPackage {
+
pname = "MooX-TypeTiny";
+
version = "0.002003";
+
src = fetchurl {
+
url = "mirror://cpan/authors/id/H/HA/HAARG/MooX-TypeTiny-0.002003.tar.gz";
+
sha256 = "d81e26ff6f8db10261f0087f96dc54367dcb49a9f3de8d53238f834ece19624b";
+
};
+
buildInputs = [ TestFatal ];
+
propagatedBuildInputs = [ Moo TypeTiny ];
+
meta = {
+
description = "Optimized type checks for Moo + Type::Tiny";
+
license = with lib.licenses; [ artistic1 gpl1Plus ];
+
};
+
};
+
MooseAutobox = buildPerlModule {
pname = "Moose-Autobox";
version = "0.16";
···
meta = {
description = "Cross-platform path specification manipulation";
+
license = with lib.licenses; [ artistic1 gpl1Plus ];
+
};
+
};
+
+
PathDispatcher = buildPerlPackage {
+
pname = "Path-Dispatcher";
+
version = "1.08";
+
src = fetchurl {
+
url = "mirror://cpan/authors/id/E/ET/ETHER/Path-Dispatcher-1.08.tar.gz";
+
sha256 = "79a9f61c27408b4fd1ed234dac246974ddeafa7fe635a18fe41ec7783130ae2a";
+
};
+
buildInputs = [ ModuleBuildTiny TestFatal ];
+
propagatedBuildInputs = [ Moo MooXTypeTiny TryTiny TypeTiny ];
+
meta = {
+
homepage = https://github.com/karenetheridge/Path-Dispatcher;
+
description = "Flexible and extensible dispatch";
license = with lib.licenses; [ artistic1 gpl1Plus ];
···
+
ShellConfigGenerate = buildPerlPackage {
+
pname = "Shell-Config-Generate";
+
version = "0.34";
+
src = fetchurl {
+
url = "mirror://cpan/authors/id/P/PL/PLICEASE/Shell-Config-Generate-0.34.tar.gz";
+
sha256 = "84f451f22215dd68e9c18aa3f7ddb03a82007d166cfada003d0f166f571e0562";
+
};
+
buildInputs = [ Test2Suite ];
+
propagatedBuildInputs = [ ShellGuess ];
+
meta = {
+
homepage = https://metacpan.org/pod/Shell::Config::Generate;
+
description = "Portably generate config for any shell";
+
license = with lib.licenses; [ artistic1 gpl1Plus ];
+
};
+
};
+
+
ShellGuess = buildPerlPackage {
+
pname = "Shell-Guess";
+
version = "0.09";
+
src = fetchurl {
+
url = "mirror://cpan/authors/id/P/PL/PLICEASE/Shell-Guess-0.09.tar.gz";
+
sha256 = "4069fa2637e443118ed956d710231d166823d23b2a64eb87b8a46872e865a12b";
+
};
+
meta = {
+
homepage = https://metacpan.org/pod/Shell::Guess;
+
description = "Make an educated guess about the shell in use";
+
license = with lib.licenses; [ artistic1 gpl1Plus ];
+
};
+
};
+
StringToIdentifierEN = buildPerlPackage {
pname = "String-ToIdentifier-EN";
version = "0.12";
···
propagatedBuildInputs = [ URI ];
+
TextWordDiff = buildPerlPackage {
+
pname = "Text-WordDiff";
+
version = "0.09";
+
src = fetchurl {
+
url = "mirror://cpan/authors/id/T/TI/TIMK/Text-WordDiff-0.09.tar.gz";
+
sha256 = "fee699ca763adca2f4e18f4a8a836fd2102bc2820af708f8eb43356d5ae0d50e";
+
};
+
propagatedBuildInputs = [ AlgorithmDiff HTMLParser ];
+
meta = {
+
homepage = https://metacpan.org/release/Text-WordDiff;
+
description = "Track changes between documents";
+
license = with lib.licenses; [ artistic1 gpl1Plus ];
+
};
+
};
+
TextWrapI18N = buildPerlPackage {
pname = "Text-WrapI18N";
version = "0.06";
···
buildInputs = [ TestDeep TestWarn ];
meta = {
description = "YAML Framework";
+
license = with lib.licenses; [ artistic1 gpl1Plus ];
+
};
+
};
+
+
WebMachine = buildPerlPackage {
+
pname = "Web-Machine";
+
version = "0.17";
+
src = fetchurl {
+
url = "mirror://cpan/authors/id/D/DR/DROLSKY/Web-Machine-0.17.tar.gz";
+
sha256 = "f139d2b3114c549e91847daaab8b75cb699e57daf5bbf0dbd13293f33fe5e22a";
+
};
+
buildInputs = [ NetHTTP TestFailWarnings TestFatal ];
+
propagatedBuildInputs = [ HTTPHeadersActionPack HTTPMessage HashMultiValue IOHandleUtil ModuleRuntime Plack SubExporter TryTiny ];
+
meta = {
+
homepage = http://metacpan.org/release/Web-Machine;
+
description = "A Perl port of Webmachine";
license = with lib.licenses; [ artistic1 gpl1Plus ];
+9
pkgs/top-level/python-packages.nix
···
aiopulse = callPackage ../development/python-modules/aiopulse { };
+
aiopvpc = callPackage ../development/python-modules/aiopvpc { };
+
aiopylgtv = callPackage ../development/python-modules/aiopylgtv { };
aiorecollect = callPackage ../development/python-modules/aiorecollect { };
···
asyncpg = callPackage ../development/python-modules/asyncpg { };
asyncssh = callPackage ../development/python-modules/asyncssh { };
+
+
asyncstdlib = callPackage ../development/python-modules/asyncstdlib { };
async_stagger = callPackage ../development/python-modules/async_stagger { };
···
fastimport = callPackage ../development/python-modules/fastimport { };
fastjsonschema = callPackage ../development/python-modules/fastjsonschema { };
+
+
fastnlo_toolkit = toPythonModule (pkgs.fastnlo_toolkit.override {
+
withPython = true;
+
inherit python;
+
});
fastpair = callPackage ../development/python-modules/fastpair { };