Merge master into staging-next

This commit is contained in:
github-actions[bot] 2021-05-25 00:59:01 +00:00 committed by GitHub
commit 0615bb674f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
39 changed files with 282 additions and 294 deletions

View file

@ -14,9 +14,9 @@ nixpkgs follows the [official elixir deprecation schedule](https://hexdocs.pm/el
All BEAM-related expressions are available via the top-level `beam` attribute, which includes:
- `interpreters`: a set of compilers running on the BEAM, including multiple Erlang/OTP versions (`beam.interpreters.erlangR19`, etc), Elixir (`beam.interpreters.elixir`) and LFE (Lisp Flavoured Erlang) (`beam.interpreters.lfe`).
- `interpreters`: a set of compilers running on the BEAM, including multiple Erlang/OTP versions (`beam.interpreters.erlangR22`, etc), Elixir (`beam.interpreters.elixir`) and LFE (Lisp Flavoured Erlang) (`beam.interpreters.lfe`).
- `packages`: a set of package builders (Mix and rebar3), each compiled with a specific Erlang/OTP version, e.g. `beam.packages.erlangR19`.
- `packages`: a set of package builders (Mix and rebar3), each compiled with a specific Erlang/OTP version, e.g. `beam.packages.erlang22`.
The default Erlang compiler, defined by `beam.interpreters.erlang`, is aliased as `erlang`. The default BEAM package set is defined by `beam.packages.erlang` and aliased at the top level as `beamPackages`.
@ -86,7 +86,7 @@ let
version = "0.0.1";
mixEnv = "prod";
mixDeps = packages.fetchMixDeps {
mixFodDeps = packages.fetchMixDeps {
pname = "mix-deps-${pname}";
inherit src mixEnv version;
# nix will complain and tell you the right value to replace this with
@ -130,7 +130,7 @@ let
in packages.mixRelease {
inherit src pname version mixEnv mixDeps;
inherit src pname version mixEnv mixFodDeps;
# if you have build time environment variables add them here
MY_ENV_VAR="my_value";
preInstall = ''

View file

@ -5523,6 +5523,12 @@
}];
name = "Las Safin";
};
l3af = {
email = "L3afMeAlon3@gmail.com";
github = "L3afMe";
githubId = 72546287;
name = "L3af";
};
laikq = {
email = "gwen@quasebarth.de";
github = "laikq";

View file

@ -46,6 +46,12 @@
to increase the font size.
</para>
<para>
To install over a serial port connect with <literal>115200n8</literal>
(e.g. <command>picocom -b 115200 /dev/ttyUSB0</command>). When the
bootloader lists boot entries, select the serial console boot entry.
</para>
<section xml:id="sec-installation-booting-networking">
<title>Networking in the installer</title>

View file

@ -395,6 +395,15 @@
which is the new stable release. OpenAFS 1.6 was removed.
</para>
</listitem>
<listitem>
<para>
The WireGuard module gained a new option
<option>networking.wireguard.interfaces.&lt;name&gt;.peers.*.dynamicEndpointRefreshSeconds</option>
that implements refreshing the IP of DNS-based endpoints periodically
(which WireGuard itself
<link xlink:href="https://lists.zx2c4.com/pipermail/wireguard/2017-November/002028.html">cannot do</link>).
</para>
</listitem>
<listitem>
<para>
MariaDB has been updated to 10.5.
@ -1124,6 +1133,14 @@ environment.systemPackages = [
Nixpkgs now contains <link xlink:href="https://github.com/NixOS/nixpkgs/pull/118232">automatically packaged GNOME Shell extensions</link> from the <link xlink:href="https://extensions.gnome.org/">GNOME Extensions</link> portal. You can find them, filed by their UUID, under <literal>gnome38Extensions</literal> attribute for GNOME 3.38 and under <literal>gnome40Extensions</literal> for GNOME 40. Finally, the <literal>gnomeExtensions</literal> attribute contains extensions for the latest GNOME Shell version in Nixpkgs, listed under a more human-friendly name. The unqualified attribute scope also contains manually packaged extensions. Note that the automatically packaged extensions are provided for convenience and are not checked or guaranteed to work.
</para>
</listitem>
<listitem>
<para>
Erlang/OTP versions older than R21 got dropped. We also dropped the cuter package, as it was purely an example of how to build a package.
We also dropped <literal>lfe_1_2</literal> as it could not build with R21+.
Moving forward, we expect to only support 3 yearly releases of OTP.
</para>
</listitem>
</itemizedlist>
</section>
</section>

View file

@ -198,7 +198,32 @@ let
example = "demo.wireguard.io:12913";
type = with types; nullOr str;
description = ''Endpoint IP or hostname of the peer, followed by a colon,
and then a port number of the peer.'';
and then a port number of the peer.
Warning for endpoints with changing IPs:
The WireGuard kernel side cannot perform DNS resolution.
Thus DNS resolution is done once by the <literal>wg</literal> userspace
utility, when setting up WireGuard. Consequently, if the IP address
behind the name changes, WireGuard will not notice.
This is especially common for dynamic-DNS setups, but also applies to
any other DNS-based setup.
If you do not use IP endpoints, you likely want to set
<option>networking.wireguard.dynamicEndpointRefreshSeconds</option>
to refresh the IPs periodically.
'';
};
dynamicEndpointRefreshSeconds = mkOption {
default = 0;
example = 5;
type = with types; int;
description = ''
Periodically re-execute the <literal>wg</literal> utility every
this many seconds in order to let WireGuard notice DNS / hostname
changes.
Setting this to <literal>0</literal> disables periodic reexecution.
'';
};
persistentKeepalive = mkOption {
@ -259,12 +284,18 @@ let
'';
};
generatePeerUnit = { interfaceName, interfaceCfg, peer }:
peerUnitServiceName = interfaceName: publicKey: dynamicRefreshEnabled:
let
keyToUnitName = replaceChars
[ "/" "-" " " "+" "=" ]
[ "-" "\\x2d" "\\x20" "\\x2b" "\\x3d" ];
unitName = keyToUnitName peer.publicKey;
unitName = keyToUnitName publicKey;
refreshSuffix = optionalString dynamicRefreshEnabled "-refresh";
in
"wireguard-${interfaceName}-peer-${unitName}${refreshSuffix}";
generatePeerUnit = { interfaceName, interfaceCfg, peer }:
let
psk =
if peer.presharedKey != null
then pkgs.writeText "wg-psk" peer.presharedKey
@ -273,7 +304,12 @@ let
dst = interfaceCfg.interfaceNamespace;
ip = nsWrap "ip" src dst;
wg = nsWrap "wg" src dst;
in nameValuePair "wireguard-${interfaceName}-peer-${unitName}"
dynamicRefreshEnabled = peer.dynamicEndpointRefreshSeconds != 0;
# We generate a different name (a `-refresh` suffix) when `dynamicEndpointRefreshSeconds`
# to avoid that the same service switches `Type` (`oneshot` vs `simple`),
# with the intent to make scripting more obvious.
serviceName = peerUnitServiceName interfaceName peer.publicKey dynamicRefreshEnabled;
in nameValuePair serviceName
{
description = "WireGuard Peer - ${interfaceName} - ${peer.publicKey}";
requires = [ "wireguard-${interfaceName}.service" ];
@ -283,36 +319,59 @@ let
environment.WG_ENDPOINT_RESOLUTION_RETRIES = "infinity";
path = with pkgs; [ iproute2 wireguard-tools ];
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
};
serviceConfig =
if !dynamicRefreshEnabled
then
{
Type = "oneshot";
RemainAfterExit = true;
}
else
{
Type = "simple"; # re-executes 'wg' indefinitely
# Note that `Type = "oneshot"` services with `RemainAfterExit = true`
# cannot be used with systemd timers (see `man systemd.timer`),
# which is why `simple` with a loop is the best choice here.
# It also makes starting and stopping easiest.
};
script = let
wg_setup = "${wg} set ${interfaceName} peer ${peer.publicKey}" +
optionalString (psk != null) " preshared-key ${psk}" +
optionalString (peer.endpoint != null) " endpoint ${peer.endpoint}" +
optionalString (peer.persistentKeepalive != null) " persistent-keepalive ${toString peer.persistentKeepalive}" +
optionalString (peer.allowedIPs != []) " allowed-ips ${concatStringsSep "," peer.allowedIPs}";
wg_setup = concatStringsSep " " (
[ ''${wg} set ${interfaceName} peer "${peer.publicKey}"'' ]
++ optional (psk != null) ''preshared-key "${psk}"''
++ optional (peer.endpoint != null) ''endpoint "${peer.endpoint}"''
++ optional (peer.persistentKeepalive != null) ''persistent-keepalive "${toString peer.persistentKeepalive}"''
++ optional (peer.allowedIPs != []) ''allowed-ips "${concatStringsSep "," peer.allowedIPs}"''
);
route_setup =
optionalString interfaceCfg.allowedIPsAsRoutes
(concatMapStringsSep "\n"
(allowedIP:
"${ip} route replace ${allowedIP} dev ${interfaceName} table ${interfaceCfg.table}"
''${ip} route replace "${allowedIP}" dev "${interfaceName}" table "${interfaceCfg.table}"''
) peer.allowedIPs);
in ''
${wg_setup}
${route_setup}
${optionalString (peer.dynamicEndpointRefreshSeconds != 0) ''
# Re-execute 'wg' periodically to notice DNS / hostname changes.
# Note this will not time out on transient DNS failures such as DNS names
# because we have set 'WG_ENDPOINT_RESOLUTION_RETRIES=infinity'.
# Also note that 'wg' limits its maximum retry delay to 20 seconds as of writing.
while ${wg_setup}; do
sleep "${toString peer.dynamicEndpointRefreshSeconds}";
done
''}
'';
postStop = let
route_destroy = optionalString interfaceCfg.allowedIPsAsRoutes
(concatMapStringsSep "\n"
(allowedIP:
"${ip} route delete ${allowedIP} dev ${interfaceName} table ${interfaceCfg.table}"
''${ip} route delete "${allowedIP}" dev "${interfaceName}" table "${interfaceCfg.table}"''
) peer.allowedIPs);
in ''
${wg} set ${interfaceName} peer ${peer.publicKey} remove
${wg} set "${interfaceName}" peer "${peer.publicKey}" remove
${route_destroy}
'';
};
@ -348,23 +407,25 @@ let
${values.preSetup}
${ipPreMove} link add dev ${name} type wireguard
${optionalString (values.interfaceNamespace != null && values.interfaceNamespace != values.socketNamespace) "${ipPreMove} link set ${name} netns ${ns}"}
${ipPreMove} link add dev "${name}" type wireguard
${optionalString (values.interfaceNamespace != null && values.interfaceNamespace != values.socketNamespace) ''${ipPreMove} link set "${name}" netns "${ns}"''}
${concatMapStringsSep "\n" (ip:
"${ipPostMove} address add ${ip} dev ${name}"
''${ipPostMove} address add "${ip}" dev "${name}"''
) values.ips}
${wg} set ${name} private-key ${privKey} ${
optionalString (values.listenPort != null) " listen-port ${toString values.listenPort}"}
${concatStringsSep " " (
[ ''${wg} set "${name}" private-key "${privKey}"'' ]
++ optional (values.listenPort != null) ''listen-port "${toString values.listenPort}"''
)}
${ipPostMove} link set up dev ${name}
${ipPostMove} link set up dev "${name}"
${values.postSetup}
'';
postStop = ''
${ipPostMove} link del dev ${name}
${ipPostMove} link del dev "${name}"
${values.postShutdown}
'';
};
@ -374,7 +435,7 @@ let
nsList = filter (ns: ns != null) [ src dst ];
ns = last nsList;
in
if (length nsList > 0 && ns != "init") then "ip netns exec ${ns} ${cmd}" else cmd;
if (length nsList > 0 && ns != "init") then ''ip netns exec "${ns}" "${cmd}"'' else cmd;
in
{

View file

@ -0,0 +1,25 @@
{ lib, fetchFromGitHub, buildGoModule }:
buildGoModule rec {
pname = "tsukae";
version = "unstable-2021-04-19";
src = fetchFromGitHub {
owner = "irevenko";
repo = pname;
rev = "8111dddd67e4b4f83ae4bca7d7305f6dc64e77cd";
sha256 = "sha256-1y/WYLW6/HMGmuaX2wOlQbwYn0LcgQCMb4qw8BtCgxQ=";
};
vendorSha256 = "sha256-mVhc9roT7rm9WMwck7jobjn9ykKQRgWJAqM75AmhMN0=";
runVend = true;
meta = with lib; {
description = "Show off your most used shell commands.";
homepage = "https://github.com/irevenko/tsukae";
license = licenses.mit;
mainProgram = pname;
maintainers = with maintainers; [ l3af ];
};
}

View file

@ -440,10 +440,10 @@
"owner": "DeterminateSystems",
"provider-source-address": "registry.terraform.io/DeterminateSystems/hydra",
"repo": "terraform-provider-hydra",
"rev": "v0.1.0",
"sha256": "18c9j54fy1f2sfz317rlv8z7fb18bpc1a0baw1bgl72x5sgil5kv",
"rev": "v0.1.1",
"sha256": "093al7crxgjimy4nnxvb1xy9p7yc0c7gf2rgvql7y3y3n8bz5q1b",
"vendorSha256": null,
"version": "0.1.0"
"version": "0.1.1"
},
"ibm": {
"owner": "IBM-Cloud",

View file

@ -2,7 +2,7 @@
"name": "element-desktop",
"productName": "Element",
"main": "src/electron-main.js",
"version": "1.7.28",
"version": "1.7.29",
"description": "A feature-rich client for Matrix.org",
"author": "Element",
"repository": {

View file

@ -8,12 +8,12 @@
let
executableName = "element-desktop";
version = "1.7.28";
version = "1.7.29";
src = fetchFromGitHub {
owner = "vector-im";
repo = "element-desktop";
rev = "v${version}";
sha256 = "0p88gw1y37q35qqf94w3qlb84s2shm41n1pw5fgx0c0ymlzpl636";
sha256 = "sha256-nCtgVVOdjZ/OK8gMInBbNeuJadchDYUO2UQxEmcOm4s=";
};
in mkYarnPackage rec {
name = "element-desktop-${version}";

View file

@ -12,11 +12,11 @@ let
in stdenv.mkDerivation rec {
pname = "element-web";
version = "1.7.28";
version = "1.7.29";
src = fetchurl {
url = "https://github.com/vector-im/element-web/releases/download/v${version}/element-v${version}.tar.gz";
sha256 = "1adlpwq37yzmd3fq1pzbi476p4kr5hn5b5kwyd6cr5by0gsgkgyk";
sha256 = "sha256-wFC0B9v0V3JK9sLKH7GviVO/JEjePOJ06PwRq/MVqDE=";
};
installPhase = ''

View file

@ -1,4 +1,13 @@
{ lib, python3Packages, fetchFromGitHub, git, installShellFiles }:
{ lib
, fetchFromGitHub
, installShellFiles
, python3Packages
, asciidoc
, docbook_xsl
, git
, perl
, xmlto
}:
python3Packages.buildPythonApplication rec {
pname = "stgit";
@ -11,16 +20,41 @@ python3Packages.buildPythonApplication rec {
sha256 = "sha256-gfPf1yRmx1Mn1TyCBWmjQJBgXLlZrDcew32C9o6uNYk=";
};
nativeBuildInputs = [ installShellFiles ];
nativeBuildInputs = [ installShellFiles asciidoc xmlto docbook_xsl ];
checkInputs = [ git ];
format = "other";
postInstall = ''
installShellCompletion $out/share/stgit/completion/stg.fish
installShellCompletion --name stg $out/share/stgit/completion/stgit.bash
installShellCompletion --name _stg $out/share/stgit/completion/stgit.zsh
checkInputs = [ git perl ];
postPatch = ''
for f in Documentation/*.xsl; do
substituteInPlace $f \
--replace http://docbook.sourceforge.net/release/xsl-ns/current/manpages/docbook.xsl \
${docbook_xsl}/xml/xsl/docbook/manpages/docbook.xsl \
--replace http://docbook.sourceforge.net/release/xsl/current/html/docbook.xsl \
${docbook_xsl}/xml/xsl/docbook/html/docbook.xsl
done
'';
makeFlags = [
"prefix=${placeholder "out"}"
"MAN_BASE_URL=${placeholder "out"}/share/man"
"XMLTO_EXTRA=--skip-validation"
];
buildFlags = [ "all" "doc" ];
checkTarget = "test";
checkFlags = [ "PERL_PATH=${perl}/bin/perl" ];
installTargets = [ "install" "install-doc" ];
postInstall = ''
installShellCompletion --cmd stg \
--fish $out/share/stgit/completion/stg.fish \
--bash $out/share/stgit/completion/stgit.bash \
--zsh $out/share/stgit/completion/stgit.zsh
'';
meta = with lib; {
description = "A patch manager implemented on top of Git";
homepage = "https://stacked-git.github.io/";

View file

@ -417,6 +417,11 @@
"https://pypi.io/packages/source/"
];
# Python Test-PyPI mirror
testpypi = [
"https://test.pypi.io/packages/source/"
];
# Mozilla projects.
mozilla = [
"http://download.cdn.mozilla.net/pub/mozilla.org/"

View file

@ -1,7 +1,7 @@
{ lib, stdenv, fetchFromGitLab, glib, gettext, substituteAll, gnome-menus }:
stdenv.mkDerivation rec {
pname = "gnome-shell-arcmenu";
pname = "gnome-shell-extension-arcmenu";
version = "10";
src = fetchFromGitLab {

View file

@ -19,7 +19,7 @@ let
}:
stdenv.mkDerivation {
inherit pname;
pname = "gnome-shell-extension-${pname}";
version = builtins.toString version;
src = fetchzip {
url = "https://extensions.gnome.org/extension-data/${
@ -47,8 +47,11 @@ let
license = lib.licenses.gpl2Plus; # https://wiki.gnome.org/Projects/GnomeShell/Extensions/Review#Licensing
maintainers = with lib.maintainers; [ piegames ];
};
# Store the extension's UUID, because we might need it at some places
passthru.extensionUuid = uuid;
passthru = {
extensionPortalSlug = pname;
# Store the extension's UUID, because we might need it at some places
extensionUuid = uuid;
};
};
in
lib.makeOverridable buildGnomeExtension

View file

@ -5,7 +5,7 @@
}:
stdenv.mkDerivation rec {
pname = "gnome-shell-dash-to-dock";
pname = "gnome-shell-extension-dash-to-dock";
version = "69";
src = fetchFromGitHub {

View file

@ -1,7 +1,7 @@
{ lib, stdenv, fetchFromGitHub, glib, gettext }:
stdenv.mkDerivation rec {
pname = "gnome-shell-dash-to-panel";
pname = "gnome-shell-extension-dash-to-panel";
version = "40";
src = fetchFromGitHub {

View file

@ -48,7 +48,7 @@ let
))
# Map all extensions to their pname, with potential overwrites
(map (extension:
lib.nameValuePair (extensionRenames.${extension.extensionUuid} or extension.pname) extension
lib.nameValuePair (extensionRenames.${extension.extensionUuid} or extension.extensionPortalSlug) extension
))
builtins.listToAttrs
];

View file

@ -1,7 +1,7 @@
{ lib, stdenv, fetchFromGitHub, glib, gettext }:
stdenv.mkDerivation rec {
pname = "gnome-shell-emoji-selector";
pname = "gnome-shell-extension-emoji-selector";
version = "19";
src = fetchFromGitHub {

View file

@ -1,7 +1,7 @@
{ lib, stdenv, fetchFromGitHub, glib }:
stdenv.mkDerivation rec {
pname = "gnome-shell-freon";
pname = "gnome-shell-extension-freon";
version = "40";
uuid = "freon@UshakovVasilii_Github.yahoo.com";

View file

@ -18,7 +18,7 @@
}:
stdenv.mkDerivation rec {
pname = "gnome-shell-gsconnect";
pname = "gnome-shell-extension-gsconnect";
version = "46";
outputs = [ "out" "installedTests" ];

View file

@ -1,7 +1,7 @@
{ lib, stdenv, fetchFromGitHub, glib }:
stdenv.mkDerivation rec {
pname = "gnome-shell-impatience";
pname = "gnome-shell-extension-impatience";
version = "unstable-2019-09-23";
src = fetchFromGitHub {

View file

@ -3,7 +3,7 @@
, fetchFromGitHub }:
stdenv.mkDerivation rec {
pname = "noannoyance";
pname = "gnome-shell-extension-noannoyance";
version = "unstable-2021-01-17";
src = fetchFromGitHub {

View file

@ -1,7 +1,7 @@
{ lib, stdenv, substituteAll, fetchFromGitHub, glib, glib-networking, libgtop, gnome }:
stdenv.mkDerivation rec {
pname = "gnome-shell-system-monitor";
pname = "gnome-shell-extension-system-monitor";
version = "unstable-2021-05-04";
src = fetchFromGitHub {

View file

@ -77,7 +77,6 @@ let
elixir_ls = callPackage ./elixir_ls.nix { inherit elixir fetchMixDeps mixRelease; };
lfe = lfe_1_3;
lfe_1_2 = lib'.callLFE ../interpreters/lfe/1.2.nix { inherit erlang buildRebar3 buildHex; };
lfe_1_3 = lib'.callLFE ../interpreters/lfe/1.3.nix { inherit erlang buildRebar3 buildHex; };
# Non hex packages. Examples how to build Rebar/Mix packages with and
@ -85,9 +84,6 @@ let
hex = callPackage ./hex { };
webdriver = callPackage ./webdriver { };
relxExe = callPackage ../tools/erlang/relx-exe { };
# An example of Erlang/C++ package.
cuter = callPackage ../tools/erlang/cuter { };
};
in
makeExtensible packages

View file

@ -14,7 +14,7 @@ mixRelease rec {
fetchSubmodules = true;
};
mixDeps = fetchMixDeps {
mixFodDeps = fetchMixDeps {
pname = "mix-deps-${pname}";
inherit src version;
sha256 = "0r9x223imq4j9pn9niskyaybvk7jmq8dxcyzk7kwfsi128qig1a1";

View file

@ -8,15 +8,23 @@
, enableDebugInfo ? false
, mixEnv ? "prod"
, compileFlags ? [ ]
, mixDeps ? null
# mix fixed output derivation dependencies
, mixFodDeps ? null
# mix dependencies generated by mix2nix
# this assumes each dependency is built by buildMix or buildRebar3
# each dependency needs to have a setup hook to add the lib path to $ERL_LIBS
# this is how mix will find dependencies
, mixNixDeps ? { }
, ...
}@attrs:
let
overridable = builtins.removeAttrs attrs [ "compileFlags" ];
# remove non standard attributes that cannot be coerced to strings
overridable = builtins.removeAttrs attrs [ "compileFlags" "mixNixDeps" ];
in
assert mixNixDeps != { } -> mixFodDeps == null;
stdenv.mkDerivation (overridable // {
nativeBuildInputs = nativeBuildInputs ++ [ erlang hex elixir makeWrapper git ];
buildInputs = builtins.attrValues mixNixDeps;
MIX_ENV = mixEnv;
MIX_DEBUG = if enableDebugInfo then 1 else 0;
@ -29,17 +37,17 @@ stdenv.mkDerivation (overridable // {
postUnpack = ''
export HEX_HOME="$TEMPDIR/hex"
export MIX_HOME="$TEMPDIR/mix"
# compilation of the dependencies will require
# that the dependency path is writable
# thus a copy to the TEMPDIR is inevitable here
export MIX_DEPS_PATH="$TEMPDIR/deps"
# Rebar
export REBAR_GLOBAL_CONFIG_DIR="$TEMPDIR/rebar3"
export REBAR_CACHE_DIR="$TEMPDIR/rebar3.cache"
${lib.optionalString (mixDeps != null) ''
cp --no-preserve=mode -R "${mixDeps}" "$MIX_DEPS_PATH"
${lib.optionalString (mixFodDeps != null) ''
# compilation of the dependencies will require
# that the dependency path is writable
# thus a copy to the TEMPDIR is inevitable here
export MIX_DEPS_PATH="$TEMPDIR/deps"
cp --no-preserve=mode -R "${mixFodDeps}" "$MIX_DEPS_PATH"
''
}

View file

@ -38,16 +38,6 @@ stdenv.mkDerivation rec {
postPatch = ''
patchShebangs . contrib
for i in backtrace cmdlineargs; do
mv test/$i.jl{,.off}
touch test/$i.jl
done
rm stdlib/Sockets/test/runtests.jl && touch stdlib/Sockets/test/runtests.jl
rm stdlib/Distributed/test/runtests.jl && touch stdlib/Distributed/test/runtests.jl
# LibGit2 fails with a weird error, so we skip it as well now
rm stdlib/LibGit2/test/runtests.jl && touch stdlib/LibGit2/test/runtests.jl
sed -e 's/Invalid Content-Type:/invalid Content-Type:/g' -i ./stdlib/LibGit2/test/libgit2.jl
sed -e 's/Failed to resolve /failed to resolve /g' -i ./stdlib/LibGit2/test/libgit2.jl
'';
dontUseCmakeConfigure = true;
@ -112,11 +102,6 @@ stdenv.mkDerivation rec {
openspecfun pcre2 lapack
];
# Julia's tests require read/write access to $HOME
preCheck = ''
export HOME="$NIX_BUILD_TOP"
'';
preBuild = ''
sed -e '/^install:/s@[^ ]*/doc/[^ ]*@@' -i Makefile
sed -e '/[$](DESTDIR)[$](docdir)/d' -i Makefile
@ -125,6 +110,13 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
# Julia's tests require read/write access to $HOME
preCheck = ''
export HOME="$NIX_BUILD_TOP"
'';
doCheck = true;
checkTarget = "test";
postInstall = ''
# Symlink shared libraries from LD_LIBRARY_PATH into lib/julia,
# as using a wrapper with LD_LIBRARY_PATH causes segmentation
@ -148,6 +140,8 @@ stdenv.mkDerivation rec {
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ raskin rob garrison ];
platforms = [ "i686-linux" "x86_64-linux" "x86_64-darwin" "aarch64-linux" ];
broken = stdenv.isi686;
# Unfortunately, this derivation does not pass Julia's test suite. See
# https://github.com/NixOS/nixpkgs/pull/121114.
broken = true;
};
}

View file

@ -18,7 +18,7 @@
, config
, glib
, libxml2
, ffmpeg_3
, ffmpeg
, libxslt
, libGL
, freetype
@ -168,7 +168,7 @@ let result = stdenv.mkDerivation rec {
* libXt is only needed on amd64
*/
libraries =
[stdenv.cc.libc glib libxml2 ffmpeg_3 libxslt libGL xorg.libXxf86vm alsaLib fontconfig freetype pango gtk2 cairo gdk-pixbuf atk] ++
[stdenv.cc.libc glib libxml2 ffmpeg libxslt libGL xorg.libXxf86vm alsaLib fontconfig freetype pango gtk2 cairo gdk-pixbuf atk] ++
lib.optionals swingSupport [xorg.libX11 xorg.libXext xorg.libXtst xorg.libXi xorg.libXp xorg.libXt xorg.libXrender stdenv.cc.cc];
rpath = lib.strings.makeLibraryPath libraries;

View file

@ -1,34 +0,0 @@
{ mkDerivation, fetchpatch }:
let
rmAndPwdPatch = fetchpatch {
url = "https://github.com/erlang/otp/commit/98b8650d22e94a5ff839170833f691294f6276d0.patch";
sha256 = "0zjs7as83prgq4d5gaw2cmnajnsprdk8cjl5kklknx0pc2b3hfg5";
};
envAndCpPatch = fetchpatch {
url = "https://github.com/erlang/otp/commit/9f9841eb7327c9fe73e84e197fd2965a97b639cf.patch";
sha256 = "00fx5wc88ki3z71z5q4xzi9h3whhjw1zblpn09w995ygn07m9qhm";
};
makeOrderingPatch = fetchpatch {
url = "https://github.com/erlang/otp/commit/2f1a37f1011ff9d129bc35a6efa0ab937a2aa0e9.patch";
sha256 = "0xfa6hzxh9d7qllkyidcgh57xrrx11w65y7s1hyg52alm06l6b9n";
};
makeParallelInstallPatch = fetchpatch {
url ="https://github.com/erlang/otp/commit/de8fe86f67591dd992bae33f7451523dab36e5bd.patch";
sha256 = "1cj9fjhdng6yllajjm3gkk04ag9bwyb3n70hrb5nk6c292v8a45c";
};
in mkDerivation {
version = "18.3.4.11";
sha256 = "190xbv77v5x2g8xkzdg9bpwa1ylkc18d03ag2a0frcwcv76x53k1";
patches = [
rmAndPwdPatch
envAndCpPatch
makeOrderingPatch
makeParallelInstallPatch
];
}

View file

@ -1,19 +0,0 @@
{ mkDerivation, fetchpatch }:
mkDerivation {
version = "19.3.6.13";
sha256 = "1zbg54p7pdr8bjyrxvi7vs41vgamqa8lsynnm6ac6845q0xwpwid";
patches = [
# macOS 10.13 crypto fix from OTP-20.1.2
(fetchpatch {
name = "darwin-crypto.patch";
url = "https://github.com/erlang/otp/commit/882c90f72ba4e298aa5a7796661c28053c540a96.patch";
sha256 = "1gggzpm8ssamz6975z7px0g8qq5i4jqw81j846ikg49c5cxvi0hi";
})
];
prePatch = ''
substituteInPlace configure.in --replace '`sw_vers -productVersion`' "''${MACOSX_DEPLOYMENT_TARGET:-10.12}"
'';
}

View file

@ -1,10 +0,0 @@
{ mkDerivation }:
mkDerivation {
version = "20.3.8.26";
sha256 = "062405s59hkdkmw2dryq0qc1k03jsncj7yqisgj35x9sqpzm4w7a";
prePatch = ''
substituteInPlace configure.in --replace '`sw_vers -productVersion`' "''${MACOSX_DEPLOYMENT_TARGET:-10.12}"
'';
}

View file

@ -6,12 +6,12 @@
buildPythonPackage rec {
pname = "adafruit-platformdetect";
version = "3.13.1";
version = "3.13.2";
src = fetchPypi {
pname = "Adafruit-PlatformDetect";
inherit version;
sha256 = "sha256-SUK2EpOHCFWm4zV+yRtzz81B0GMcwRsVnTOh2msSsSk=";
sha256 = "sha256-ke2BDpMOTcYq37Eb8DX+gIztqHKstsTmjZL8Uw5C0/Q=";
};
nativeBuildInputs = [ setuptools-scm ];

View file

@ -3,7 +3,7 @@
writeScript, common-updater-scripts, coreutils, git, gnused, nix, rebar3-nix }:
let
version = "3.16.0";
version = "3.16.1";
owner = "erlang";
deps = import ./rebar-deps.nix { inherit fetchFromGitHub fetchHex; };
rebar3 = stdenv.mkDerivation rec {
@ -16,7 +16,7 @@ let
inherit owner;
repo = pname;
rev = version;
sha256 = "1yqvm37l5rn5dyg4sc2hv47930s2524qrdpnjwy3zqa27r7k5n36";
sha256 = "0dhwlx7zykf9y3znk2k8fxrq5j43jy3c3gd76k74q34p1xbajgzr";
};
buildInputs = [ erlang ];

View file

@ -1,46 +0,0 @@
{ lib, stdenv, autoreconfHook, which, writeText, makeWrapper, fetchFromGitHub, erlang
, z3, python }:
stdenv.mkDerivation rec {
pname = "cuter";
version = "0.1";
src = fetchFromGitHub {
owner = "aggelgian";
repo = "cuter";
rev = "v${version}";
sha256 = "1ax1pj6ji4w2mg3p0nh2lzmg3n9mgfxk4cf07pll51yrcfpfrnfv";
};
setupHook = writeText "setupHook.sh" ''
addToSearchPath ERL_LIBS "$1/lib/erlang/lib/"
'';
nativeBuildInputs = [ autoreconfHook makeWrapper which ];
buildInputs = [ python python.pkgs.setuptools z3.python erlang ];
buildFlags = [ "PWD=$(out)/lib/erlang/lib/cuter-${version}" "cuter_target" ];
configurePhase = ''
autoconf
./configure --prefix $out
'';
installPhase = ''
mkdir -p "$out/lib/erlang/lib/cuter-${version}"
mkdir -p "$out/bin"
cp -r * "$out/lib/erlang/lib/cuter-${version}"
cp cuter "$out/bin/cuter"
wrapProgram $out/bin/cuter \
--prefix PATH : "${python}/bin" \
--suffix PYTHONPATH : "${z3}/${python.sitePackages}" \
--suffix ERL_LIBS : "$out/lib/erlang/lib"
'';
meta = {
description = "A concolic testing tool for the Erlang functional programming language";
license = lib.licenses.gpl3;
homepage = "https://github.com/aggelgian/cuter";
maintainers = with lib.maintainers; [ ericbmerritt ];
platforms = with lib.platforms; unix;
};
}

View file

@ -1,22 +0,0 @@
From 29c0b393283395c69ecdd747e960301e95c93bcf Mon Sep 17 00:00:00 2001
From: Felix Rath <felixm.rath@gmail.com>
Date: Sat, 15 May 2021 13:07:38 +0200
Subject: [PATCH] add missing <stdexcept> import
`std::logic_error` is used in this file, which resides in `<stdexcept>`, but was not imported before. This caused the build to fail, see, e.g., https://hydra.nixos.org/build/141997371/log.
---
src/algo/crypt/lcg.cc | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/algo/crypt/lcg.cc b/src/algo/crypt/lcg.cc
index 6c2a7945..66630a08 100644
--- a/src/algo/crypt/lcg.cc
+++ b/src/algo/crypt/lcg.cc
@@ -17,6 +17,7 @@
#include "algo/crypt/lcg.h"
#include <functional>
+#include <stdexcept>
using namespace au;
using namespace au::algo::crypt;

View file

@ -1,9 +1,9 @@
{ lib, stdenv, fetchFromGitHub, cmake, makeWrapper, boost, libpng, libjpeg, zlib
, openssl, libwebp, catch }:
{ lib, stdenv, fetchFromGitHub, cmake, makeWrapper, boost, libpng, libiconv
, libjpeg, zlib, openssl, libwebp, catch }:
stdenv.mkDerivation rec {
pname = "arc_unpacker-unstable";
version = "2019-01-28";
pname = "arc_unpacker";
version = "unstable-2021-05-17";
src = fetchFromGitHub {
owner = "vn-tools";
@ -11,19 +11,13 @@ stdenv.mkDerivation rec {
# Since the latest release (0.11) doesn't build, we've opened an upstream
# issue in https://github.com/vn-tools/arc_unpacker/issues/187 to ask if a
# a new release is upcoming
rev = "b9843a13e2b67a618020fc12918aa8d7697ddfd5";
sha256 = "0wpl30569cip3im40p3n22s11x0172a3axnzwmax62aqlf8kdy14";
rev = "9c2781fcf3ead7641e873b65899f6abeeabb2fc8";
sha256 = "1xxrc9nww0rla3yh10z6glv05ax4rynwwbd0cdvkp7gyqzrv97xp";
};
nativeBuildInputs = [ cmake makeWrapper catch ];
buildInputs = [ boost libpng libjpeg zlib openssl libwebp ];
patches = [
# Add a missing `<stdexcept>` import that caused the build to fail.
# Failure: https://hydra.nixos.org/build/141997371/log
# Also submitted as an upstream PR: https://github.com/vn-tools/arc_unpacker/pull/194
./add-missing-import.patch
];
buildInputs = [ boost libpng libjpeg zlib openssl libwebp ]
++ lib.optionals stdenv.isDarwin [ libiconv ];
postPatch = ''
cp ${catch}/include/catch/catch.hpp tests/test_support/catch.h
@ -51,12 +45,14 @@ stdenv.mkDerivation rec {
runHook postInstall
'';
doCheck = true;
# A few tests fail on aarch64
doCheck = !stdenv.isAarch64;
meta = with lib; {
description = "A tool to extract files from visual novel archives";
homepage = "https://github.com/vn-tools/arc_unpacker";
license = licenses.gpl3Plus;
maintainers = with maintainers; [ midchildan ];
platforms = platforms.all;
};
}

View file

@ -1,22 +1,34 @@
{ lib, fetchFromGitHub, rustPlatform, libsodium, libseccomp, sqlite, pkg-config
{ lib
, fetchFromGitHub
, rustPlatform
, libsodium
, libseccomp
, sqlite
, pkg-config
}:
rustPlatform.buildRustPackage rec {
pname = "sn0int";
version = "0.20.1";
version = "0.21.1";
src = fetchFromGitHub {
owner = "kpcyrd";
repo = pname;
rev = "v${version}";
sha256 = "sha256-vnSpItch9RDUyYxERKRwYPmRLwRG9gAI7iIY+7iRs1w=";
sha256 = "sha256-LjNOaqYGlhF0U+YxoLLmmXgxPa8f+t9BSm+qO23waaI=";
};
cargoSha256 = "sha256-qgOZxuzAeDgT93TccfnVTj3OQzalHfude0ETTVMM2Pk=";
cargoSha256 = "sha256-ruK+qDIqrltNcErBnrcHdPfVKmwPwiPfq42A/el206c=";
nativeBuildInputs = [ pkg-config ];
nativeBuildInputs = [
pkg-config
];
buildInputs = [ libsodium libseccomp sqlite ];
buildInputs = [
libsodium
libseccomp
sqlite
];
# One of the dependencies (chrootable-https) tries to read "/etc/resolv.conf"
# in "checkPhase", hence fails in sandbox of "nix".

View file

@ -12038,7 +12038,7 @@ in
beam_nox = callPackage ./beam-packages.nix { wxSupport = false; };
inherit (beam.interpreters)
erlang erlangR24 erlangR23 erlangR22 erlangR21 erlangR20 erlangR19 erlangR18
erlang erlangR24 erlangR23 erlangR22 erlangR21
erlang_odbc erlang_javac erlang_odbc_javac erlang_basho_R16B02
elixir elixir_1_12 elixir_1_11 elixir_1_10 elixir_1_9 elixir_1_8 elixir_1_7
elixir_ls;
@ -12051,8 +12051,6 @@ in
fetchHex beamPackages
relxExe;
inherit (beam.packages.erlangR19) cuter lfe_1_2;
inherit (beam.packages.erlangR21) lfe lfe_1_3;
groovy = callPackage ../development/interpreters/groovy { };
@ -19875,7 +19873,7 @@ in
xwayland = callPackage ../servers/x11/xorg/xwayland.nix { };
yaws = callPackage ../servers/http/yaws {
erlang = erlangR18;
erlang = erlangR21;
};
youtrack = callPackage ../servers/jetbrains/youtrack.nix { };
@ -31503,6 +31501,8 @@ in
python = python3;
};
tsukae = callPackage ../applications/misc/tsukae { };
tsung = callPackage ../applications/networking/tsung {};
bcompare = libsForQt5.callPackage ../applications/version-management/bcompare {};

View file

@ -1,4 +1,4 @@
{ callPackage, wxGTK30, openssl_1_0_2, buildPackages, wxSupport ? true }:
{ callPackage, wxGTK30, buildPackages, wxSupport ? true }:
rec {
lib = callPackage ../development/beam-modules/lib.nix { };
@ -72,47 +72,6 @@ rec {
odbcSupport = true;
};
# R20
erlangR20 = lib.callErlang ../development/interpreters/erlang/R20.nix {
wxGTK = wxGTK30;
autoconf = buildPackages.autoconf269;
inherit wxSupport;
};
erlangR20_odbc = erlangR20.override { odbcSupport = true; };
erlangR20_javac = erlangR20.override { javacSupport = true; };
erlangR20_odbc_javac = erlangR20.override {
javacSupport = true;
odbcSupport = true;
};
# R19
erlangR19 = lib.callErlang ../development/interpreters/erlang/R19.nix {
wxGTK = wxGTK30;
openssl = openssl_1_0_2;
autoconf = buildPackages.autoconf269;
inherit wxSupport;
};
erlangR19_odbc = erlangR19.override { odbcSupport = true; };
erlangR19_javac = erlangR19.override { javacSupport = true; };
erlangR19_odbc_javac = erlangR19.override {
javacSupport = true;
odbcSupport = true;
};
# R18
erlangR18 = lib.callErlang ../development/interpreters/erlang/R18.nix {
wxGTK = wxGTK30;
openssl = openssl_1_0_2;
autoconf = buildPackages.autoconf269;
inherit wxSupport;
};
erlangR18_odbc = erlangR18.override { odbcSupport = true; };
erlangR18_javac = erlangR18.override { javacSupport = true; };
erlangR18_odbc_javac = erlangR18.override {
javacSupport = true;
odbcSupport = true;
};
# Basho fork, using custom builder.
erlang_basho_R16B02 =
lib.callErlang ../development/interpreters/erlang/R16B02-basho.nix {
@ -128,7 +87,7 @@ rec {
inherit (packages.erlang)
elixir elixir_1_12 elixir_1_11 elixir_1_10 elixir_1_9 elixir_1_8 elixir_1_7 elixir_ls;
inherit (packages.erlang) lfe lfe_1_2 lfe_1_3;
inherit (packages.erlang) lfe lfe_1_3;
};
# Helper function to generate package set with a specific Erlang version.
@ -145,8 +104,5 @@ rec {
erlangR23 = packagesWith interpreters.erlangR23;
erlangR22 = packagesWith interpreters.erlangR22;
erlangR21 = packagesWith interpreters.erlangR21;
erlangR20 = packagesWith interpreters.erlangR20;
erlangR19 = packagesWith interpreters.erlangR19;
erlangR18 = packagesWith interpreters.erlangR18;
};
}