diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index fd7d8e314c3..ad2b74dfe81 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -6121,6 +6121,16 @@
githubId = 307899;
name = "Gurkan Gur";
};
+ servalcatty = {
+ email = "servalcat@pm.me";
+ github = "servalcatty";
+ githubid = 51969817;
+ name = "Serval";
+ keys = [{
+ longkeyid = "rsa4096/0x4A2AAAA382F8294C";
+ fingerprint = "A317 37B3 693C 921B 480C C629 4A2A AAA3 82F8 294C";
+ }];
+ };
sfrijters = {
email = "sfrijters@gmail.com";
github = "sfrijters";
@@ -7664,6 +7674,12 @@
githubId = 50867187;
name = "Rakesh Gupta";
};
+ mlatus = {
+ email = "wqseleven@gmail.com";
+ github = "Ninlives";
+ githubId = 17873203;
+ name = "mlatus";
+ };
waiting-for-dev = {
email = "marc@lamarciana.com";
github = "waiting-for-dev";
diff --git a/nixos/doc/manual/installation/installing.xml b/nixos/doc/manual/installation/installing.xml
index 7991c43e01f..5655295871e 100644
--- a/nixos/doc/manual/installation/installing.xml
+++ b/nixos/doc/manual/installation/installing.xml
@@ -380,7 +380,10 @@
If you need to configure networking for your machine the configuration
- options are described in .
+ options are described in . In particular,
+ while wifi is supported on the installation image, it is not enabled by
+ default in the configuration generated by
+ nixos-generate-config.
Another critical option is , specifying the
diff --git a/nixos/doc/manual/release-notes/rl-2003.xml b/nixos/doc/manual/release-notes/rl-2003.xml
index c5b8b1254f7..45071449f9d 100644
--- a/nixos/doc/manual/release-notes/rl-2003.xml
+++ b/nixos/doc/manual/release-notes/rl-2003.xml
@@ -207,6 +207,21 @@
upstream issue for more information.
+
+
+ The packages openobex and obexftp
+ are no loger installed when enabling bluetooth via
+ .
+
+
+
+
+ The dump1090 derivation has been changed to use FlightAware's dump1090
+ as its upstream. However, this version does not have an internal webserver anymore. The
+ assets in the share/dump1090 directory of the derivation can be used
+ in conjunction with an external webserver to replace this functionality.
+
+
@@ -229,6 +244,12 @@
release announcement for more information.
+
+
+ PRETTY_NAME in /etc/os-release
+ now uses the short rather than full version string.
+
+
diff --git a/nixos/modules/misc/version.nix b/nixos/modules/misc/version.nix
index 773724ffbd5..cf17f9aae38 100644
--- a/nixos/modules/misc/version.nix
+++ b/nixos/modules/misc/version.nix
@@ -92,7 +92,7 @@ in
VERSION="${cfg.version} (${cfg.codeName})"
VERSION_CODENAME=${toLower cfg.codeName}
VERSION_ID="${cfg.version}"
- PRETTY_NAME="NixOS ${cfg.version} (${cfg.codeName})"
+ PRETTY_NAME="NixOS ${cfg.release} (${cfg.codeName})"
LOGO="nix-snowflake"
HOME_URL="https://nixos.org/"
DOCUMENTATION_URL="https://nixos.org/nixos/manual/index.html"
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 076e1654818..8e373550bb3 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -722,6 +722,7 @@
./services/networking/tvheadend.nix
./services/networking/unbound.nix
./services/networking/unifi.nix
+ ./services/networking/v2ray.nix
./services/networking/vsftpd.nix
./services/networking/wakeonlan.nix
./services/networking/websockify.nix
diff --git a/nixos/modules/services/hardware/bluetooth.nix b/nixos/modules/services/hardware/bluetooth.nix
index 7b13beea1ca..11d67418a31 100644
--- a/nixos/modules/services/hardware/bluetooth.nix
+++ b/nixos/modules/services/hardware/bluetooth.nix
@@ -72,7 +72,7 @@ in {
};
};
- environment.systemPackages = [ bluez-bluetooth pkgs.openobex pkgs.obexftp ];
+ environment.systemPackages = [ bluez-bluetooth ];
environment.etc = singleton {
source = pkgs.writeText "main.conf" (generators.toINI { } cfg.config + optionalString (cfg.extraConfig != null) cfg.extraConfig);
diff --git a/nixos/modules/services/networking/v2ray.nix b/nixos/modules/services/networking/v2ray.nix
new file mode 100644
index 00000000000..a1774cdffbb
--- /dev/null
+++ b/nixos/modules/services/networking/v2ray.nix
@@ -0,0 +1,81 @@
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+{
+ options = {
+
+ services.v2ray = {
+ enable = mkOption {
+ type = types.bool;
+ default = false;
+ description = ''
+ Whether to run v2ray server.
+
+ Either configFile or config must be specified.
+ '';
+ };
+
+ configFile = mkOption {
+ type = types.nullOr types.str;
+ default = null;
+ example = "/etc/v2ray/config.json";
+ description = ''
+ The absolute path to the configuration file.
+
+ Either configFile or config must be specified.
+
+ See .
+ '';
+ };
+
+ config = mkOption {
+ type = types.nullOr (types.attrsOf types.unspecified);
+ default = null;
+ example = {
+ inbounds = [{
+ port = 1080;
+ listen = "127.0.0.1";
+ protocol = "http";
+ }];
+ outbounds = [{
+ protocol = "freedom";
+ }];
+ };
+ description = ''
+ The configuration object.
+
+ Either `configFile` or `config` must be specified.
+
+ See .
+ '';
+ };
+ };
+
+ };
+
+ config = let
+ cfg = config.services.v2ray;
+ configFile = if cfg.configFile != null
+ then cfg.configFile
+ else (pkgs.writeText "v2ray.json" (builtins.toJSON cfg.config));
+
+ in mkIf cfg.enable {
+ assertions = [
+ {
+ assertion = (cfg.configFile == null) != (cfg.config == null);
+ message = "Either but not both `configFile` and `config` should be specified for v2ray.";
+ }
+ ];
+
+ systemd.services.v2ray = {
+ description = "v2ray Daemon";
+ after = [ "network.target" ];
+ wantedBy = [ "multi-user.target" ];
+ path = [ pkgs.v2ray ];
+ script = ''
+ exec v2ray -config ${configFile}
+ '';
+ };
+ };
+}
diff --git a/nixos/modules/services/x11/desktop-managers/pantheon.nix b/nixos/modules/services/x11/desktop-managers/pantheon.nix
index 80dab135ee2..25ef1cbfc67 100644
--- a/nixos/modules/services/x11/desktop-managers/pantheon.nix
+++ b/nixos/modules/services/x11/desktop-managers/pantheon.nix
@@ -159,7 +159,7 @@ in
# Override GSettings schemas
environment.sessionVariables.NIX_GSETTINGS_OVERRIDES_DIR = "${nixos-gsettings-desktop-schemas}/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas";
- environment.sessionVariables.GNOME_SESSION_DEBUG = optionalString cfg.debug "1";
+ environment.sessionVariables.GNOME_SESSION_DEBUG = mkIf cfg.debug "1";
# Settings from elementary-default-settings
environment.sessionVariables.GTK_CSD = "1";
diff --git a/nixos/modules/services/x11/desktop-managers/plasma5.nix b/nixos/modules/services/x11/desktop-managers/plasma5.nix
index da8bdcb78c4..56015874723 100644
--- a/nixos/modules/services/x11/desktop-managers/plasma5.nix
+++ b/nixos/modules/services/x11/desktop-managers/plasma5.nix
@@ -169,7 +169,7 @@ in
++ lib.optional (cfg.phononBackend == "vlc") libsForQt5.phonon-backend-vlc
# Optional hardware support features
- ++ lib.optionals config.hardware.bluetooth.enable [ bluedevil bluez-qt ]
+ ++ lib.optionals config.hardware.bluetooth.enable [ bluedevil bluez-qt openobex obexftp ]
++ lib.optional config.networking.networkmanager.enable plasma-nm
++ lib.optional config.hardware.pulseaudio.enable plasma-pa
++ lib.optional config.powerManagement.enable powerdevil
diff --git a/nixos/tests/matomo.nix b/nixos/tests/matomo.nix
index 4efa65a7b6d..2bea237c8bd 100644
--- a/nixos/tests/matomo.nix
+++ b/nixos/tests/matomo.nix
@@ -1,7 +1,7 @@
{ system ? builtins.currentSystem, config ? { }
, pkgs ? import ../.. { inherit system config; } }:
-with import ../lib/testing.nix { inherit system pkgs; };
+with import ../lib/testing-python.nix { inherit system pkgs; };
with pkgs.lib;
let
@@ -24,11 +24,16 @@ let
};
testScript = ''
- startAll;
- $machine->waitForUnit("mysql.service");
- $machine->waitForUnit("phpfpm-matomo.service");
- $machine->waitForUnit("nginx.service");
- $machine->succeed("curl -sSfL http://localhost/ | grep '
Matomo[^<]*Installation'");
+ start_all()
+ machine.wait_for_unit("mysql.service")
+ machine.wait_for_unit("phpfpm-matomo.service")
+ machine.wait_for_unit("nginx.service")
+
+ # without the grep the command does not produce valid utf-8 for some reason
+ with subtest("welcome screen loads"):
+ machine.succeed(
+ "curl -sSfL http://localhost/ | grep 'Matomo[^<]*Installation'"
+ )
'';
};
in {
diff --git a/nixos/tests/mediawiki.nix b/nixos/tests/mediawiki.nix
index 6293e8a2f46..9468c1de8cc 100644
--- a/nixos/tests/mediawiki.nix
+++ b/nixos/tests/mediawiki.nix
@@ -1,4 +1,4 @@
-import ./make-test.nix ({ pkgs, lib, ... }: {
+import ./make-test-python.nix ({ pkgs, lib, ... }: {
name = "mediawiki";
meta.maintainers = [ lib.maintainers.aanderse ];
@@ -11,9 +11,11 @@ import ./make-test.nix ({ pkgs, lib, ... }: {
};
testScript = ''
- startAll;
+ start_all()
- $machine->waitForUnit('phpfpm-mediawiki.service');
- $machine->succeed('curl -L http://localhost/') =~ /MediaWiki has been installed/ or die;
+ machine.wait_for_unit("phpfpm-mediawiki.service")
+
+ page = machine.succeed("curl -L http://localhost/")
+ assert "MediaWiki has been installed" in page
'';
})
diff --git a/nixos/tests/openarena.nix b/nixos/tests/openarena.nix
index 4cc4db22963..b315426532b 100644
--- a/nixos/tests/openarena.nix
+++ b/nixos/tests/openarena.nix
@@ -1,4 +1,4 @@
-import ./make-test.nix ({ pkgs, ...} : {
+import ./make-test-python.nix ({ pkgs, ...} : {
name = "openarena";
meta = with pkgs.stdenv.lib.maintainers; {
maintainers = [ tomfitzhenry ];
@@ -23,14 +23,19 @@ import ./make-test.nix ({ pkgs, ...} : {
testScript =
''
- $machine->waitForUnit("openarena.service");
- $machine->waitUntilSucceeds("ss --numeric --udp --listening | grep -q 27960");
+ machine.wait_for_unit("openarena.service")
+ machine.wait_until_succeeds("ss --numeric --udp --listening | grep -q 27960")
# The log line containing 'resolve address' is last and only message that occurs after
# the server starts accepting clients.
- $machine->waitUntilSucceeds("journalctl -u openarena.service | grep 'resolve address: dpmaster.deathmask.net'");
+ machine.wait_until_succeeds(
+ "journalctl -u openarena.service | grep 'resolve address: dpmaster.deathmask.net'"
+ )
# Check it's possible to join the server.
- $machine->succeed("echo -n -e '\\xff\\xff\\xff\\xffgetchallenge' | socat - UDP4-DATAGRAM:127.0.0.1:27960 | grep -q challengeResponse");
+ # Can't use substring match instead of grep because the output is not utf-8
+ machine.succeed(
+ "echo -n -e '\\xff\\xff\\xff\\xffgetchallenge' | socat - UDP4-DATAGRAM:127.0.0.1:27960 | grep -q challengeResponse"
+ )
'';
})
diff --git a/nixos/tests/radicale.nix b/nixos/tests/radicale.nix
index 60796425564..c81e78a8f99 100644
--- a/nixos/tests/radicale.nix
+++ b/nixos/tests/radicale.nix
@@ -28,7 +28,7 @@ let
in
- import ./make-test.nix ({ lib, ... }@args: {
+ import ./make-test-python.nix ({ lib, ... }@args: {
name = "radicale";
meta.maintainers = with lib.maintainers; [ aneeshusa infinisil ];
@@ -64,43 +64,59 @@ in
newSystem = nodes.${nodeName}.config.system.build.toplevel;
in "${newSystem}/bin/switch-to-configuration test";
in ''
- # Check Radicale 1 functionality
- $radicale->succeed('${switchToConfig "radicale1"} >&2');
- $radicale->waitForUnit('radicale.service');
- $radicale->waitForOpenPort(${port});
- $radicale->succeed('curl --fail http://${user}:${password}@localhost:${port}/someuser/calendar.ics/');
+ with subtest("Check Radicale 1 functionality"):
+ radicale.succeed(
+ "${switchToConfig "radicale1"} >&2"
+ )
+ radicale.wait_for_unit("radicale.service")
+ radicale.wait_for_open_port(${port})
+ radicale.succeed(
+ "curl --fail http://${user}:${password}@localhost:${port}/someuser/calendar.ics/"
+ )
- # Export data in Radicale 2 format
- $radicale->succeed('systemctl stop radicale');
- $radicale->succeed('ls -al /tmp/collections');
- $radicale->fail('ls -al /tmp/collections-new');
- # Radicale exits immediately after exporting storage
- $radicale->succeed('${switchToConfig "radicale1_export"} >&2');
- $radicale->waitUntilFails('systemctl status radicale');
- $radicale->succeed('ls -al /tmp/collections');
- $radicale->succeed('ls -al /tmp/collections-new');
+ with subtest("Export data in Radicale 2 format"):
+ radicale.succeed("systemctl stop radicale")
+ radicale.succeed("ls -al /tmp/collections")
+ radicale.fail("ls -al /tmp/collections-new")
- # Verify data in Radicale 2 format
- $radicale->succeed('rm -r /tmp/collections/${user}');
- $radicale->succeed('mv /tmp/collections-new/collection-root /tmp/collections');
- $radicale->succeed('${switchToConfig "radicale2_verify"} >&2');
- $radicale->waitUntilFails('systemctl status radicale');
- my ($retcode, $logs) = $radicale->execute('journalctl -u radicale -n 10');
- if ($retcode != 0 || index($logs, 'Verifying storage') == -1) {
- die "Radicale 2 didn't verify storage"
- }
- if (index($logs, 'failed') != -1 || index($logs, 'exception') != -1) {
- die "storage verification failed"
- }
+ with subtest("Radicale exits immediately after exporting storage"):
+ radicale.succeed(
+ "${switchToConfig "radicale1_export"} >&2"
+ )
+ radicale.wait_until_fails("systemctl status radicale")
+ radicale.succeed("ls -al /tmp/collections")
+ radicale.succeed("ls -al /tmp/collections-new")
- # Check Radicale 2 functionality
- $radicale->succeed('${switchToConfig "radicale2"} >&2');
- $radicale->waitForUnit('radicale.service');
- $radicale->waitForOpenPort(${port});
- my ($retcode, $output) = $radicale->execute('curl --fail http://${user}:${password}@localhost:${port}/someuser/calendar.ics/');
- if ($retcode != 0 || index($output, 'VCALENDAR') == -1) {
- die "Could not read calendar from Radicale 2"
- }
- $radicale->succeed('curl --fail http://${user}:${password}@localhost:${port}/.web/');
+ with subtest("Verify data in Radicale 2 format"):
+ radicale.succeed("rm -r /tmp/collections/${user}")
+ radicale.succeed("mv /tmp/collections-new/collection-root /tmp/collections")
+ radicale.succeed(
+ "${switchToConfig "radicale2_verify"} >&2"
+ )
+ radicale.wait_until_fails("systemctl status radicale")
+
+ (retcode, logs) = radicale.execute("journalctl -u radicale -n 10")
+ assert (
+ retcode == 0 and "Verifying storage" in logs
+ ), "Radicale 2 didn't verify storage"
+ assert (
+ "failed" not in logs and "exception" not in logs
+ ), "storage verification failed"
+
+ with subtest("Check Radicale 2 functionality"):
+ radicale.succeed(
+ "${switchToConfig "radicale2"} >&2"
+ )
+ radicale.wait_for_unit("radicale.service")
+ radicale.wait_for_open_port(${port})
+
+ (retcode, output) = radicale.execute(
+ "curl --fail http://${user}:${password}@localhost:${port}/someuser/calendar.ics/"
+ )
+ assert (
+ retcode == 0 and "VCALENDAR" in output
+ ), "Could not read calendar from Radicale 2"
+
+ radicale.succeed("curl --fail http://${user}:${password}@localhost:${port}/.web/")
'';
})
diff --git a/nixos/tests/xrdp.nix b/nixos/tests/xrdp.nix
index 0106aefe831..1aceeffb955 100644
--- a/nixos/tests/xrdp.nix
+++ b/nixos/tests/xrdp.nix
@@ -1,4 +1,4 @@
-import ./make-test.nix ({ pkgs, ...} : {
+import ./make-test-python.nix ({ pkgs, ...} : {
name = "xrdp";
meta = with pkgs.stdenv.lib.maintainers; {
maintainers = [ volth ];
@@ -21,25 +21,27 @@ import ./make-test.nix ({ pkgs, ...} : {
};
};
- testScript = { ... }: ''
- startAll;
+ testScript = { nodes, ... }: let
+ user = nodes.client.config.users.users.alice;
+ in ''
+ start_all()
- $client->waitForX;
- $client->waitForFile("/home/alice/.Xauthority");
- $client->succeed("xauth merge ~alice/.Xauthority");
+ client.wait_for_x()
+ client.wait_for_file("${user.home}/.Xauthority")
+ client.succeed("xauth merge ${user.home}/.Xauthority")
- $client->sleep(5);
+ client.sleep(5)
- $client->execute("xterm &");
- $client->sleep(1);
- $client->sendChars("xfreerdp /cert-tofu /w:640 /h:480 /v:127.0.0.1 /u:alice /p:foobar\n");
- $client->sleep(5);
- $client->screenshot("localrdp");
+ client.execute("xterm &")
+ client.sleep(1)
+ client.send_chars("xfreerdp /cert-tofu /w:640 /h:480 /v:127.0.0.1 /u:${user.name} /p:${user.password}\n")
+ client.sleep(5)
+ client.screenshot("localrdp")
- $client->execute("xterm &");
- $client->sleep(1);
- $client->sendChars("xfreerdp /cert-tofu /w:640 /h:480 /v:server /u:alice /p:foobar\n");
- $client->sleep(5);
- $client->screenshot("remoterdp");
+ client.execute("xterm &")
+ client.sleep(1)
+ client.send_chars("xfreerdp /cert-tofu /w:640 /h:480 /v:server /u:${user.name} /p:${user.password}\n")
+ client.sleep(5)
+ client.screenshot("remoterdp")
'';
})
diff --git a/pkgs/applications/audio/lollypop/default.nix b/pkgs/applications/audio/lollypop/default.nix
index 8bdf45a968a..b555598591d 100644
--- a/pkgs/applications/audio/lollypop/default.nix
+++ b/pkgs/applications/audio/lollypop/default.nix
@@ -19,7 +19,7 @@
python3.pkgs.buildPythonApplication rec {
pname = "lollypop";
- version = "1.2.5";
+ version = "1.2.16";
format = "other";
doCheck = false;
@@ -28,7 +28,7 @@ python3.pkgs.buildPythonApplication rec {
url = "https://gitlab.gnome.org/World/lollypop";
rev = "refs/tags/${version}";
fetchSubmodules = true;
- sha256 = "148p3ab7nnfz13hgjkx1cf2ahq9mgl72csrl35xy6d0nkfqbfr8r";
+ sha256 = "0rl4a5npjh5sm3kih11cs2j7ik894nlygllbw4j5pn9n9v66x51w";
};
nativeBuildInputs = [
@@ -84,10 +84,10 @@ python3.pkgs.buildPythonApplication rec {
];
meta = with lib; {
+ changelog = "https://gitlab.gnome.org/World/lollypop/tags/${version}";
description = "A modern music player for GNOME";
homepage = https://wiki.gnome.org/Apps/Lollypop;
license = licenses.gpl3Plus;
- changelog = "https://gitlab.gnome.org/World/lollypop/tags/${version}";
maintainers = with maintainers; [ worldofpeace ];
platforms = platforms.linux;
};
diff --git a/pkgs/applications/audio/snd/default.nix b/pkgs/applications/audio/snd/default.nix
index b4a50395464..d371f500bc8 100644
--- a/pkgs/applications/audio/snd/default.nix
+++ b/pkgs/applications/audio/snd/default.nix
@@ -4,11 +4,11 @@
}:
stdenv.mkDerivation rec {
- name = "snd-19.8";
+ name = "snd-19.9";
src = fetchurl {
url = "mirror://sourceforge/snd/${name}.tar.gz";
- sha256 = "0cdf3940cjvf5kls5l1zjll9wgg152xzlxs0jmpsq1kml12qa67b";
+ sha256 = "13s8fahpsjygjdrcwmprcrz23ny3klaj2rh2xzdv3bfs69gxvhys";
};
nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/applications/editors/nano/default.nix b/pkgs/applications/editors/nano/default.nix
index 15f251f5b09..6f29946d77a 100644
--- a/pkgs/applications/editors/nano/default.nix
+++ b/pkgs/applications/editors/nano/default.nix
@@ -20,11 +20,11 @@ let
in stdenv.mkDerivation rec {
pname = "nano";
- version = "4.5";
+ version = "4.6";
src = fetchurl {
url = "mirror://gnu/nano/${pname}-${version}.tar.xz";
- sha256 = "0czmz1yq8s5qcxcmfjdxzg9nkhbmlc9q1nz04jvf57fdbs7w7mfy";
+ sha256 = "1s98jsvkfar6qmd5n5l1n1k59623dnc93ciyvlhxjkvpad0kmb4v";
};
nativeBuildInputs = [ texinfo ] ++ optional enableNls gettext;
diff --git a/pkgs/applications/graphics/gscan2pdf/default.nix b/pkgs/applications/graphics/gscan2pdf/default.nix
index b0e76d23dac..9db6281b341 100644
--- a/pkgs/applications/graphics/gscan2pdf/default.nix
+++ b/pkgs/applications/graphics/gscan2pdf/default.nix
@@ -38,7 +38,7 @@ perlPackages.buildPerlPackage rec {
ListMoreUtils
HTMLParser
ProcProcessTable
- Log4Perl
+ LogLog4perl
TryTiny
DataUUID
DateCalc
diff --git a/pkgs/applications/graphics/inkscape/default.nix b/pkgs/applications/graphics/inkscape/default.nix
index 17b5a716491..3996b94ba14 100644
--- a/pkgs/applications/graphics/inkscape/default.nix
+++ b/pkgs/applications/graphics/inkscape/default.nix
@@ -25,6 +25,16 @@ stdenv.mkDerivation rec {
url = "https://gitlab.com/inkscape/inkscape/commit/e831b034746f8dc3c3c1b88372751f6dcb974831.diff";
sha256 = "096rdyi6ppjq1h9jwwsm9hb99nggfrfinik8rm23jkn4h2zl01zf";
})
+ (fetchpatch {
+ name = "inkscape-poppler_0_82_compat.patch";
+ url = "https://gitlab.com/inkscape/inkscape/commit/835b6bb62be565efab986d5a3f30a672ad56c7eb.patch";
+ sha256 = "02c6sxi2w52b885vr3pgani6kvxp9gdqqk2jgiykkdzv70hhrnm7";
+ })
+ (fetchpatch {
+ name = "inkscape-poppler_0_83_compat.patch";
+ url = "https://gitlab.com/inkscape/inkscape/commit/b5360a807b12d4e8318475ffd0464b84882788b5.patch";
+ sha256 = "1p44rr2q2i3zkd1y1j7xgdcbgx8yvlq6hq92im8s0bkjby6p5cpz";
+ })
];
# Inkscape hits the ARGMAX when linking on macOS. It appears to be
diff --git a/pkgs/applications/graphics/k3d/default.nix b/pkgs/applications/graphics/k3d/default.nix
index 317987d8d91..a87d54459c1 100644
--- a/pkgs/applications/graphics/k3d/default.nix
+++ b/pkgs/applications/graphics/k3d/default.nix
@@ -1,6 +1,6 @@
{ stdenv, fetchFromGitHub, fetchpatch, ftgl, glew, asciidoc
, cmake, ninja, libGLU, libGL, zlib, python, expat, libxml2, libsigcxx, libuuid, freetype
-, libpng, boost, doxygen, cairomm, pkgconfig, imagemagick, libjpeg, libtiff
+, libpng, boost, doxygen, cairomm, pkgconfig, libjpeg, libtiff
, gettext, intltool, perl, gtkmm2, glibmm, gtkglext, pangox_compat, libXmu }:
stdenv.mkDerivation rec {
@@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
buildInputs = [
libGLU libGL zlib python expat libxml2 libsigcxx libuuid freetype libpng
- boost cairomm imagemagick libjpeg libtiff
+ boost cairomm libjpeg libtiff
ftgl glew gtkmm2 glibmm gtkglext pangox_compat libXmu
];
diff --git a/pkgs/applications/misc/buku/default.nix b/pkgs/applications/misc/buku/default.nix
index ac65341d498..98f6e2895d1 100644
--- a/pkgs/applications/misc/buku/default.nix
+++ b/pkgs/applications/misc/buku/default.nix
@@ -27,6 +27,7 @@ with python3.pkgs; buildPythonApplication rec {
requests
urllib3
flask
+ flask-admin
flask-api
flask-bootstrap
flask-paginate
diff --git a/pkgs/applications/misc/dbeaver/default.nix b/pkgs/applications/misc/dbeaver/default.nix
index e3d9e8be0b2..60598e56539 100644
--- a/pkgs/applications/misc/dbeaver/default.nix
+++ b/pkgs/applications/misc/dbeaver/default.nix
@@ -7,7 +7,7 @@
stdenv.mkDerivation rec {
pname = "dbeaver-ce";
- version = "6.2.5";
+ version = "6.3.0";
desktopItem = makeDesktopItem {
name = "dbeaver";
@@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "https://dbeaver.io/files/${version}/dbeaver-ce-${version}-linux.gtk.x86_64.tar.gz";
- sha256 = "1bg5cq7ivf263mjr8g9qwdhp9x0gm04nqiya4fyw0k33yiab85zn";
+ sha256 = "07j2r2kfjhfv8zzzzp5qj3ppx4vv7llpx4lwip6bnjfkh80ny22a";
};
installPhase = ''
diff --git a/pkgs/applications/misc/gummi/default.nix b/pkgs/applications/misc/gummi/default.nix
index 273be11ac63..d1daec28482 100644
--- a/pkgs/applications/misc/gummi/default.nix
+++ b/pkgs/applications/misc/gummi/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, pkgs, makeWrapper
+{ stdenv, pkgs, makeWrapper, pango
, glib, gnome2, gnome3, gtk2-x11, gtkspell2, poppler
, pkgconfig, intltool, autoreconfHook, wrapGAppsHook
}:
@@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
pkgconfig intltool autoreconfHook makeWrapper wrapGAppsHook
];
buildInputs = [
- glib gnome2.gtksourceview gnome2.pango gtk2-x11 gtkspell2 poppler
+ glib gnome2.gtksourceview pango gtk2-x11 gtkspell2 poppler
gnome3.adwaita-icon-theme
];
diff --git a/pkgs/applications/misc/prusa-slicer/default.nix b/pkgs/applications/misc/prusa-slicer/default.nix
index f3cd6fdb0f6..154b974e644 100644
--- a/pkgs/applications/misc/prusa-slicer/default.nix
+++ b/pkgs/applications/misc/prusa-slicer/default.nix
@@ -1,5 +1,5 @@
{ stdenv, lib, fetchFromGitHub, makeWrapper, cmake, pkgconfig
-, boost, cereal, curl, eigen, expat, glew, libpng, tbb, wxGTK30
+, boost, cereal, curl, eigen, expat, glew, libpng, tbb, wxGTK31
, gtest, nlopt, xorg, makeDesktopItem
}:
let
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
glew
libpng
tbb
- wxGTK30
+ wxGTK31
xorg.libX11
] ++ checkInputs;
@@ -65,7 +65,6 @@ stdenv.mkDerivation rec {
cmakeFlags = [
"-DSLIC3R_FHS=1"
- "-DSLIC3R_WX_STABLE=1" # necessary when compiling against wxGTK 3.0
];
postInstall = ''
diff --git a/pkgs/applications/misc/stretchly/default.nix b/pkgs/applications/misc/stretchly/default.nix
index 213f308646a..75f3be85dad 100644
--- a/pkgs/applications/misc/stretchly/default.nix
+++ b/pkgs/applications/misc/stretchly/default.nix
@@ -1,8 +1,12 @@
{ GConf
, alsaLib
, at-spi2-atk
+, at-spi2-core
, atk
+, buildFHSUserEnv
, cairo
+, common-updater-scripts
+, coreutils
, cups
, dbus
, expat
@@ -29,15 +33,19 @@
, libnotify
, libpciaccess
, libpng12
+, libuuid
, libxcb
, nspr
, nss
, pango
, pciutils
, pulseaudio
+, runtimeShell
, stdenv
, udev
, wrapGAppsHook
+, writeScript
+, file
}:
let
@@ -45,6 +53,7 @@ let
GConf
alsaLib
at-spi2-atk
+ at-spi2-core
atk
cairo
cups
@@ -71,6 +80,7 @@ let
libnotify
libpciaccess
libpng12
+ libuuid
libxcb
nspr
nss
@@ -82,58 +92,96 @@ let
];
libPath = lib.makeLibraryPath libs;
+
+ stretchly =
+ stdenv.mkDerivation rec {
+ pname = "stretchly";
+ version = "0.21.0";
+
+ src = fetchurl {
+ url = "https://github.com/hovancik/stretchly/releases/download/v${version}/stretchly-${version}.tar.xz";
+ sha256 = "1gyyr22xq8s4miiacs8wqhp7lxnwvkvlwhngnq8671l62s6iyjzl";
+ };
+
+ nativeBuildInputs = [
+ wrapGAppsHook
+ coreutils
+ ];
+
+ buildInputs = libs;
+
+ dontPatchELF = true;
+ dontBuild = true;
+ dontConfigure = true;
+
+ installPhase = ''
+ mkdir -p $out/bin $out/lib/stretchly
+ cp -r ./* $out/lib/stretchly/
+ ln -s $out/lib/stretchly/stretchly $out/bin/
+ '';
+
+ preFixup = ''
+ patchelf --set-rpath "${libPath}" $out/lib/stretchly/libffmpeg.so
+ patchelf --set-rpath "${libPath}" $out/lib/stretchly/libEGL.so
+ patchelf --set-rpath "${libPath}" $out/lib/stretchly/libGLESv2.so
+ patchelf --set-rpath "${libPath}" $out/lib/stretchly/swiftshader/libEGL.so
+ patchelf --set-rpath "${libPath}" $out/lib/stretchly/swiftshader/libGLESv2.so
+
+ patchelf \
+ --set-rpath "$out/lib/stretchly:${libPath}" \
+ --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
+ $out/lib/stretchly/stretchly
+
+ patchelf \
+ --set-rpath "$out/lib/stretchly:${libPath}" \
+ --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
+ $out/lib/stretchly/chrome-sandbox
+ '';
+
+ meta = with stdenv.lib; {
+ description = "A break time reminder app";
+ longDescription = ''
+ stretchly is a cross-platform electron app that reminds you to take
+ breaks when working on your computer. By default, it runs in your tray
+ and displays a reminder window containing an idea for a microbreak for 20
+ seconds every 10 minutes. Every 30 minutes, it displays a window
+ containing an idea for a longer 5 minute break.
+ '';
+ homepage = https://hovancik.net/stretchly;
+ downloadPage = https://hovancik.net/stretchly/downloads/;
+ license = licenses.bsd2;
+ maintainers = with maintainers; [ cdepillabout ];
+ platforms = platforms.linux;
+ };
+ };
+
in
-stdenv.mkDerivation rec {
- pname = "stretchly";
- version = "0.19.1";
+buildFHSUserEnv {
+ inherit (stretchly) meta;
- src = fetchurl {
- url = "https://github.com/hovancik/stretchly/releases/download/v${version}/stretchly-${version}.tar.xz";
- sha256 = "1q2wxfqs8qv9b1rfh5lhmyp3rrgdl05m6ihsgkxlgp0yzi07afz8";
- };
+ name = "stretchly";
- nativeBuildInputs = [
- wrapGAppsHook
+ targetPkgs = pkgs: [
+ stretchly
];
- buildInputs = libs;
+ runScript = "stretchly";
- dontPatchELF = true;
- dontBuild = true;
- dontConfigure = true;
+ passthru = {
+ updateScript = writeScript "update-stretchly" ''
+ #!${runtimeShell}
- installPhase = ''
- mkdir -p $out/bin $out/lib/stretchly
- cp -r ./* $out/lib/stretchly/
- ln -s $out/lib/stretchly/libffmpeg.so $out/lib/
- ln -s $out/lib/stretchly/libnode.so $out/lib/
- ln -s $out/lib/stretchly/stretchly $out/bin/
- '';
+ set -eu -o pipefail
- preFixup = ''
- patchelf --set-rpath "${libPath}" $out/lib/stretchly/libffmpeg.so
- patchelf --set-rpath "${libPath}" $out/lib/stretchly/libnode.so
+ # get the latest release version
+ latest_version=$(curl -s https://api.github.com/repos/hovancik/stretchly/releases/latest | jq --raw-output .tag_name | sed -e 's/^v//')
- patchelf \
- --set-rpath "$out/lib/stretchly:${libPath}" \
- --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
- $out/lib/stretchly/stretchly
- '';
+ echo "updating to $latest_version..."
- meta = with stdenv.lib; {
- description = "A break time reminder app";
- longDescription = ''
- stretchly is a cross-platform electron app that reminds you to take
- breaks when working on your computer. By default, it runs in your tray
- and displays a reminder window containing an idea for a microbreak for 20
- seconds every 10 minutes. Every 30 minutes, it displays a window
- containing an idea for a longer 5 minute break.
+ ${common-updater-scripts}/bin/update-source-version stretchly.passthru.stretchlyWrapped "$latest_version"
'';
- homepage = https://hovancik.net/stretchly;
- downloadPage = https://hovancik.net/stretchly/downloads/;
- license = licenses.bsd2;
- maintainers = with maintainers; [ cdepillabout ];
- platforms = platforms.linux;
+
+ stretchlyWrapped = stretchly;
};
}
diff --git a/pkgs/applications/networking/cluster/kops/default.nix b/pkgs/applications/networking/cluster/kops/default.nix
index 7e513edf612..267f25f8bb5 100644
--- a/pkgs/applications/networking/cluster/kops/default.nix
+++ b/pkgs/applications/networking/cluster/kops/default.nix
@@ -65,4 +65,9 @@ in rec {
version = "1.14.1";
sha256 = "0ikd8qwrjh8s1sc95g18sm0q6p33swz2m1rjd8zw34mb2w9jv76n";
};
+
+ kops_1_15 = mkKops {
+ version = "1.15.0";
+ sha256 = "0sjas8pn0njl767b1y15g7cci2q3kxkxwmgr0wvs7vi3n1s1sf9d";
+ };
}
diff --git a/pkgs/applications/networking/cluster/terraform/default.nix b/pkgs/applications/networking/cluster/terraform/default.nix
index f8b42470de7..1bffafac882 100644
--- a/pkgs/applications/networking/cluster/terraform/default.nix
+++ b/pkgs/applications/networking/cluster/terraform/default.nix
@@ -112,8 +112,8 @@ in rec {
terraform_0_11-full = terraform_0_11.full;
terraform_0_12 = pluggable (generic {
- version = "0.12.16";
- sha256 = "10r9vra4d3lyms9cvl0g1ij6ldcfi3vjrqsmd52isrmlmjdzm8nk";
+ version = "0.12.17";
+ sha256 = "1pmvjbmzws5qjzz34dw0fcb6p36vafqs0h8i87g7lmhckb9bqihv";
patches = [ ./provider-path.patch ];
passthru = { inherit plugins; };
});
diff --git a/pkgs/applications/networking/ssb/patchwork/default.nix b/pkgs/applications/networking/ssb/patchwork/default.nix
index 349c4f5e799..04ab1d1c98d 100644
--- a/pkgs/applications/networking/ssb/patchwork/default.nix
+++ b/pkgs/applications/networking/ssb/patchwork/default.nix
@@ -2,12 +2,12 @@
let
pname = "ssb-patchwork";
- version = "3.16.2";
- name = "${pname}-${version}";
+ version = "3.17.1";
+ name = "Patchwork-${version}";
src = fetchurl {
- url = "https://github.com/ssbc/patchwork/releases/download/v${version}/${pname}-${version}-x86_64.AppImage";
- sha256 = "0hi9ysmwhiiww82a3mqdd2b1anj7qa41b46f6zb3q9d0b8nmvlz4";
+ url = "https://github.com/ssbc/patchwork/releases/download/v${version}/${name}.AppImage";
+ sha256 = "06wcgdcagmh80nr8nyrnz83wgq7j8r96hn3ccka7nmn02pdgvp3k";
};
binary = appimageTools.wrapType2 {
diff --git a/pkgs/applications/office/bookworm/default.nix b/pkgs/applications/office/bookworm/default.nix
index d839f4c81f2..be6fe172e29 100644
--- a/pkgs/applications/office/bookworm/default.nix
+++ b/pkgs/applications/office/bookworm/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, pantheon, vala, python3, python2, pkgconfig, libxml2, meson, ninja, gtk3, gnome3, glib, webkitgtk
+{ stdenv, fetchFromGitHub, pantheon, vala, python3, python2, pkgconfig, libxml2, meson, ninja, gtk3, gnome3, glib, webkitgtk, libgee
, gobject-introspection, sqlite, poppler, poppler_utils, html2text, curl, gnugrep, coreutils, bash, unzip, unar, wrapGAppsHook }:
stdenv.mkDerivation rec {
@@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
pantheon.elementary-icon-theme
pantheon.granite
glib
- gnome3.libgee
+ libgee
gtk3
html2text
poppler
diff --git a/pkgs/applications/office/wpsoffice/default.nix b/pkgs/applications/office/wpsoffice/default.nix
index 1f21ec60ae2..6ece55182ab 100644
--- a/pkgs/applications/office/wpsoffice/default.nix
+++ b/pkgs/applications/office/wpsoffice/default.nix
@@ -1,23 +1,22 @@
{ stdenv, fetchurl
, libX11, glib, xorg, fontconfig, freetype
-, zlib, libpng12, libICE, libXrender, cups }:
+, zlib, libpng12, libICE, libXrender, cups
+, alsaLib, atk, cairo, dbus, expat
+, gdk-pixbuf, gtk2-x11, lzma, pango, zotero
+, sqlite, libuuid, qt5, dpkg }:
-let
- bits = if stdenv.hostPlatform.system == "x86_64-linux" then "x86_64"
- else "x86";
-
- version = "10.1.0.5672";
-in stdenv.mkDerivation rec{
+stdenv.mkDerivation rec{
pname = "wpsoffice";
- inherit version;
+ version = "11.1.0.8865";
src = fetchurl {
- name = "${pname}-${version}.tar.xz";
- url = "http://kdl.cc.ksosoft.com/wps-community/download/a21/wps-office_${version}~a21_${bits}.tar.xz";
- sha256 = if bits == "x86_64" then
- "0mi3n9kplf82gd0g2m0np957agy53p4g1qh81pbban49r4n0ajcz" else
- "1dk400ap5qwdhjvn8lnk602f5akayr391fkljxdkrpn5xac01m97";
+ url = "https://wdl1.cache.wps.cn/wps/download/ep/Linux2019/8865/wps-office_11.1.0.8865_amd64.deb";
+ sha256 = "0pxx3j02cm8d08iakg30azjvl3a50y4avyrf08ddgaavqnvkypfj";
};
+ unpackCmd = "dpkg -x $src .";
+ sourceRoot = ".";
+
+ nativeBuildInputs = [ qt5.wrapQtAppsHook dpkg ];
meta = {
description = "Office program originally named Kingsoft Office";
@@ -25,20 +24,44 @@ in stdenv.mkDerivation rec{
platforms = [ "i686-linux" "x86_64-linux" ];
hydraPlatforms = [];
license = stdenv.lib.licenses.unfreeRedistributable;
+ maintainers = [ stdenv.lib.maintainers.mlatus ];
};
- libPath = stdenv.lib.makeLibraryPath [
+ libPath = with xorg; stdenv.lib.makeLibraryPath [
libX11
libpng12
glib
- xorg.libSM
- xorg.libXext
+ libSM
+ libXext
fontconfig
zlib
freetype
libICE
cups
libXrender
+ libxcb
+
+ alsaLib
+ atk
+ cairo
+ dbus.daemon.lib
+ expat
+ fontconfig.lib
+ gdk-pixbuf
+ gtk2-x11
+ lzma
+ pango
+ zotero
+ sqlite
+ libuuid
+ libXcomposite
+ libXcursor
+ libXdamage
+ libXfixes
+ libXi
+ libXrandr
+ libXScrnSaver
+ libXtst
];
dontPatchELF = true;
@@ -49,32 +72,27 @@ in stdenv.mkDerivation rec{
installPhase = ''
prefix=$out/opt/kingsoft/wps-office
- mkdir -p $prefix
- cp -r . $prefix
+ mkdir -p $out
+ cp -r opt $out
+ cp -r usr/* $out
# Avoid forbidden reference error due use of patchelf
- rm -r $PWD
+ rm -r *
- mkdir $out/bin
- for i in wps wpp et; do
+ for i in wps wpp et wpspdf; do
patchelf \
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
- --force-rpath --set-rpath "$prefix/office6:$libPath" \
+ --force-rpath --set-rpath "$(patchelf --print-rpath $prefix/office6/$i):${stdenv.cc.cc.lib}/lib64:${libPath}" \
$prefix/office6/$i
- substitute $prefix/$i $out/bin/$i \
+ substituteInPlace $out/bin/$i \
--replace /opt/kingsoft/wps-office $prefix
- chmod +x $out/bin/$i
-
- substituteInPlace $prefix/resource/applications/wps-office-$i.desktop \
- --replace /usr/bin $out/bin
done
- # China fonts
- mkdir -p $prefix/resource/fonts/wps-office $out/etc/fonts/conf.d
- ln -s $prefix/fonts/* $prefix/resource/fonts/wps-office
- ln -s $prefix/fontconfig/*.conf $out/etc/fonts/conf.d
-
- ln -s $prefix/resource $out/share
+ for i in $out/share/applications/*;do
+ substituteInPlace $i \
+ --replace /usr/bin $out/bin \
+ --replace /opt/kingsoft/wps-office $prefix
+ done
'';
}
diff --git a/pkgs/applications/radio/dump1090/default.nix b/pkgs/applications/radio/dump1090/default.nix
index 41ddb671a36..0a92bea44e8 100644
--- a/pkgs/applications/radio/dump1090/default.nix
+++ b/pkgs/applications/radio/dump1090/default.nix
@@ -1,21 +1,31 @@
-{ stdenv, fetchFromGitHub, pkgconfig, libusb, rtl-sdr }:
+{ stdenv
+, fetchFromGitHub
+, pkgconfig
+, libbladeRF
+, libusb
+, ncurses
+, rtl-sdr
+}:
stdenv.mkDerivation rec {
pname = "dump1090";
- version = "2014-10-31";
+ version = "3.7.2";
src = fetchFromGitHub {
- owner = "MalcolmRobb";
+ owner = "flightaware";
repo = pname;
- rev = "bff92c4ad772a0a8d433f788d39dae97e00e4dbe";
- sha256 = "06aaj9gpz5v4qzvnp8xf18wdfclp0jvn3hflls79ly46gz2dh9hy";
+ rev = "v${version}";
+ sha256 = "0vlv9bd805kid202xxkrnl51rh02cyrl055gbcqlqgk51j5rrq8w";
};
nativeBuildInputs = [ pkgconfig ];
- buildInputs = [ libusb rtl-sdr ];
-
- makeFlags = [ "PREFIX=$(out)" ];
+ buildInputs = [
+ libbladeRF
+ libusb
+ ncurses
+ rtl-sdr
+ ];
installPhase = ''
mkdir -p $out/bin $out/share
@@ -25,8 +35,8 @@ stdenv.mkDerivation rec {
meta = with stdenv.lib; {
description = "A simple Mode S decoder for RTLSDR devices";
- homepage = https://github.com/MalcolmRobb/dump1090;
- license = licenses.bsd3;
+ homepage = "https://github.com/flightaware/dump1090";
+ license = licenses.gpl2Plus;
platforms = platforms.linux;
maintainers = with maintainers; [ earldouglas ];
};
diff --git a/pkgs/applications/science/logic/coq/default.nix b/pkgs/applications/science/logic/coq/default.nix
index bf2d0396f69..e5958f46cbf 100644
--- a/pkgs/applications/science/logic/coq/default.nix
+++ b/pkgs/applications/science/logic/coq/default.nix
@@ -31,6 +31,7 @@ let
"8.9.1" = "1xrq6mkhpq994bncmnijf8jwmwn961kkpl4mwwlv7j3dgnysrcv2";
"8.10.0" = "138jw94wp4mg5dgjc2asn8ng09ayz1mxdznq342n0m469j803gzg";
"8.10.1" = "072v2zkjzf7gj48137wpr3c9j0hg9pdhlr5l8jrgrwynld8fp7i4";
+ "8.10.2" = "0znxmpy71bfw0p6x47i82jf5k7v41zbz9bdpn901ysn3ir8l3wrz";
}.${version};
coq-version = stdenv.lib.versions.majorMinor version;
versionAtLeast = stdenv.lib.versionAtLeast coq-version;
diff --git a/pkgs/applications/version-management/yadm/default.nix b/pkgs/applications/version-management/yadm/default.nix
index bebc9fef0c6..4995216b8b6 100644
--- a/pkgs/applications/version-management/yadm/default.nix
+++ b/pkgs/applications/version-management/yadm/default.nix
@@ -1,6 +1,6 @@
{ stdenv, fetchFromGitHub, git, gnupg }:
-let version = "1.12.0"; in
+let version = "2.0.1"; in
stdenv.mkDerivation {
pname = "yadm";
inherit version;
@@ -11,7 +11,7 @@ stdenv.mkDerivation {
owner = "TheLocehiliosan";
repo = "yadm";
rev = version;
- sha256 = "0873jgks7dpfkj5km1jchxdrhf7lia70p0f8zsrh9p4crj5f4pc6";
+ sha256 = "0knz2p0xyid65z6gdmjqfcqljqilxhqi02v4n6n4akl2i12kk193";
};
dontConfigure = true;
diff --git a/pkgs/applications/virtualization/docker/distribution.nix b/pkgs/applications/virtualization/docker/distribution.nix
index ed4db853c38..a408d20f3ba 100644
--- a/pkgs/applications/virtualization/docker/distribution.nix
+++ b/pkgs/applications/virtualization/docker/distribution.nix
@@ -2,7 +2,7 @@
buildGoPackage rec {
pname = "distribution";
- version = "2.6.2";
+ version = "2.7.1";
rev = "v${version}";
goPackagePath = "github.com/docker/distribution";
@@ -11,7 +11,7 @@ buildGoPackage rec {
owner = "docker";
repo = "distribution";
inherit rev;
- sha256 = "0nj4xd72mik4pj8g065cqb0yjmgpj5ppsqf2k5ibz9f68c39c00b";
+ sha256 = "1nx8b5a68rn81alp8wkkw6qd5v32mgf0fk23mxm60zdf63qk1nzw";
};
meta = with stdenv.lib; {
diff --git a/pkgs/applications/window-managers/i3/blocks.nix b/pkgs/applications/window-managers/i3/blocks.nix
index 15bd5e74cdc..8c3101f8eb9 100644
--- a/pkgs/applications/window-managers/i3/blocks.nix
+++ b/pkgs/applications/window-managers/i3/blocks.nix
@@ -1,16 +1,16 @@
-{ fetchFromGitHub, fetchpatch, stdenv, autoreconfHook }:
+{ fetchFromGitHub, fetchpatch, stdenv, autoreconfHook, pkg-config }:
with stdenv.lib;
stdenv.mkDerivation {
pname = "i3blocks";
- version = "unstable-2019-02-07";
+ version = "1.5";
src = fetchFromGitHub {
owner = "vivien";
repo = "i3blocks";
- rev = "ec050e79ad8489a6f8deb37d4c20ab10729c25c3";
- sha256 = "1fx4230lmqa5rpzph68dwnpcjfaaqv5gfkradcr85hd1z8d1qp1b";
+ rev = "3417602a2d8322bc866861297f535e1ef80b8cb0";
+ sha256 = "0v8mwnm8qzpv6xnqvrk43s4b9iyld4naqzbaxk4ldq1qkhai0wsv";
};
patches = [
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
})
];
- nativeBuildInputs = [ autoreconfHook ];
+ nativeBuildInputs = [ autoreconfHook pkg-config ];
meta = {
description = "A flexible scheduler for your i3bar blocks";
diff --git a/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix b/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix
index 4cdaacddbeb..3c73de6e7a9 100644
--- a/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-calculator/default.nix
@@ -18,7 +18,7 @@
stdenv.mkDerivation rec {
pname = "elementary-calculator";
- version = "1.5.3";
+ version = "1.5.4";
repoName = "calculator";
@@ -26,7 +26,7 @@ stdenv.mkDerivation rec {
owner = "elementary";
repo = repoName;
rev = version;
- sha256 = "0ibnj3zm93p8ghiy8gbbm0vlig9mnqjsvvp1cpw62dnap0qixdcg";
+ sha256 = "0053bdzn5viqlni6qg6q39nma6bsddmhnafa0mzggiv8l4qasbrx";
};
passthru = {
diff --git a/pkgs/desktops/pantheon/apps/elementary-calendar/default.nix b/pkgs/desktops/pantheon/apps/elementary-calendar/default.nix
index 4e5f69fc9e6..4f4244fa03e 100644
--- a/pkgs/desktops/pantheon/apps/elementary-calendar/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-calendar/default.nix
@@ -25,22 +25,21 @@
stdenv.mkDerivation rec {
pname = "elementary-calendar";
- version = "unstable-2019-10-29";
+ version = "5.0.3";
repoName = "calendar";
src = fetchFromGitHub {
owner = "elementary";
repo = repoName;
- rev = "7d201fc5ea9e8dc25c46427397594fcab2016ed6"; # needed for libical 2.0 compat
- sha256 = "11bqf3nxrj1sfd0qq5h0jsmimc6mwkd2g7q9ycizn9x5ak2gb8xi";
+ rev = version;
+ sha256 = "1dqcmh585fjib4m8bs7qy23fv429s7q9nbcqnn0vvmy1n36fic4m";
};
passthru = {
updateScript = pantheon.updateScript {
inherit repoName;
attrPath = pname;
- versionPolicy = "master";
};
};
diff --git a/pkgs/desktops/pantheon/apps/elementary-videos/default.nix b/pkgs/desktops/pantheon/apps/elementary-videos/default.nix
index 9132707db2b..e934a944df8 100644
--- a/pkgs/desktops/pantheon/apps/elementary-videos/default.nix
+++ b/pkgs/desktops/pantheon/apps/elementary-videos/default.nix
@@ -19,7 +19,7 @@
stdenv.mkDerivation rec {
pname = "elementary-videos";
- version = "2.6.3";
+ version = "2.7.0";
repoName = "videos";
@@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
owner = "elementary";
repo = repoName;
rev = version;
- sha256 = "1ncm8kh6dcy83p8pmpilnk03b4dx3b1jm8w13izq2dkglfgdwvqx";
+ sha256 = "1b6dqqmxa83fwlh9r0v918ikxd3mnwk0j5xssw1wk5l7q72s43w7";
};
passthru = {
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/mouse-touchpad/default.nix b/pkgs/desktops/pantheon/apps/switchboard-plugs/mouse-touchpad/default.nix
index 7578b779058..c7f2fcce458 100644
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/mouse-touchpad/default.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/mouse-touchpad/default.nix
@@ -15,24 +15,15 @@
stdenv.mkDerivation rec {
pname = "switchboard-plug-mouse-touchpad";
- version = "2.3.0";
+ version = "2.3.1";
src = fetchFromGitHub {
owner = "elementary";
repo = pname;
rev = version;
- sha256 = "1cg69nbdf4mcr16mi71aw9j8877lyj8yxjfk9bd3sml8f4fh7mmr";
+ sha256 = "1974zdr5w3xd882gi95fp7axgilfni1sclsr750qm32yhl7d9bfn";
};
- patches = [
- ./hardcode-settings-daemon-gsettings.patch
- ];
-
- postPatch = ''
- substituteInPlace src/Views/Clicking.vala \
- --subst-var-by GSD_GSETTINGS ${glib.getSchemaPath elementary-settings-daemon}
- '';
-
passthru = {
updateScript = pantheon.updateScript {
repoName = pname;
@@ -51,6 +42,7 @@ stdenv.mkDerivation rec {
granite
gtk3
libgee
+ elementary-settings-daemon
switchboard
];
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/mouse-touchpad/hardcode-settings-daemon-gsettings.patch b/pkgs/desktops/pantheon/apps/switchboard-plugs/mouse-touchpad/hardcode-settings-daemon-gsettings.patch
deleted file mode 100644
index 591ed9fc152..00000000000
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/mouse-touchpad/hardcode-settings-daemon-gsettings.patch
+++ /dev/null
@@ -1,76 +0,0 @@
-diff --git a/src/Views/Clicking.vala b/src/Views/Clicking.vala
-index cc4431b..d12ddfe 100644
---- a/src/Views/Clicking.vala
-+++ b/src/Views/Clicking.vala
-@@ -123,42 +123,39 @@ public class MouseTouchpad.ClickingView : Granite.SimpleSettingsPage {
- content_area.attach (hold_scale, 3, 3);
- content_area. attach (hold_help, 1, 4, 3);
-
-- var xsettings_schema = SettingsSchemaSource.get_default ().lookup (
-- "org.gnome.settings-daemon.plugins.xsettings",
-- true
-- );
--
-- if (xsettings_schema != null) {
-- var primary_paste_switch = new Gtk.Switch ();
-- primary_paste_switch.halign = Gtk.Align.START;
-+ SettingsSchemaSource daemon_schema_source = new SettingsSchemaSource.from_directory ("@GSD_GSETTINGS@", null, true);
-+ SettingsSchema xsettings_schema = daemon_schema_source.lookup ("org.gnome.settings-daemon.plugins.xsettings", false);
-
-- var primary_paste_help = new Gtk.Label (
-- _("Middle or three-finger clicking on an input will paste any selected text")
-- );
-- primary_paste_help.margin_bottom = 18;
-- primary_paste_help.wrap = true;
-- primary_paste_help.xalign = 0;
-- primary_paste_help.get_style_context ().add_class (Gtk.STYLE_CLASS_DIM_LABEL);
--
-- content_area.attach (new SettingLabel (_("Middle click paste:")), 0, 5);
-- content_area.attach (primary_paste_switch, 1, 5);
-- content_area.attach (primary_paste_help, 1, 6, 3);
--
-- var xsettings = new GLib.Settings ("org.gnome.settings-daemon.plugins.xsettings");
-- primary_paste_switch.notify["active"].connect (() => {
-- on_primary_paste_switch_changed (primary_paste_switch, xsettings);
-- });
-+ var primary_paste_switch = new Gtk.Switch ();
-+ primary_paste_switch.halign = Gtk.Align.START;
-
-- var current_value = xsettings.get_value ("overrides").lookup_value (
-- "Gtk/EnablePrimaryPaste",
-- VariantType.INT32
-- );
-- if (current_value != null) {
-- primary_paste_switch.active = current_value.get_int32 () == 1;
-- }
-+ var primary_paste_help = new Gtk.Label (
-+ _("Middle or three-finger clicking on an input will paste any selected text")
-+ );
-+ primary_paste_help.margin_bottom = 18;
-+ primary_paste_help.wrap = true;
-+ primary_paste_help.xalign = 0;
-+ primary_paste_help.get_style_context ().add_class (Gtk.STYLE_CLASS_DIM_LABEL);
-+
-+ content_area.attach (new SettingLabel (_("Middle click paste:")), 0, 5);
-+ content_area.attach (primary_paste_switch, 1, 5);
-+ content_area.attach (primary_paste_help, 1, 6, 3);
-+
-+ var xsettings = new GLib.Settings.full (xsettings_schema, null, null);
-+ primary_paste_switch.notify["active"].connect (() => {
-+ on_primary_paste_switch_changed (primary_paste_switch, xsettings);
-+ });
-+
-+ var current_value = xsettings.get_value ("overrides").lookup_value (
-+ "Gtk/EnablePrimaryPaste",
-+ VariantType.INT32
-+ );
-+ if (current_value != null) {
-+ primary_paste_switch.active = current_value.get_int32 () == 1;
- }
-
-- var daemon_settings = new GLib.Settings ("org.gnome.settings-daemon.peripherals.mouse");
-+ SettingsSchema daemon_schema = daemon_schema_source.lookup ("org.gnome.settings-daemon.peripherals.mouse", false);
-+ var daemon_settings = new GLib.Settings.full (daemon_schema, null, null);
- daemon_settings.bind ("double-click", double_click_speed_adjustment, "value", SettingsBindFlags.DEFAULT);
-
- var a11y_mouse_settings = new GLib.Settings ("org.gnome.desktop.a11y.mouse");
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/pantheon-shell/default.nix b/pkgs/desktops/pantheon/apps/switchboard-plugs/pantheon-shell/default.nix
index cd48b9d1d78..f8fdb01aee6 100644
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/pantheon-shell/default.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/pantheon-shell/default.nix
@@ -36,24 +36,16 @@ stdenv.mkDerivation rec {
granite
gtk3
libgee
+ gala
+ wingpanel
plank
switchboard
];
patches = [
./backgrounds.patch # Having https://github.com/elementary/switchboard-plug-pantheon-shell/issues/166 would make this patch uneeded
- ./hardcode-gsettings.patch
];
- postPatch = ''
- substituteInPlace src/Views/Appearance.vala \
- --subst-var-by GALA_GSETTINGS_PATH ${glib.getSchemaPath gala}
- substituteInPlace src/Views/HotCorners.vala \
- --subst-var-by GALA_GSETTINGS_PATH ${glib.getSchemaPath gala}
- substituteInPlace src/Views/Appearance.vala \
- --subst-var-by WINGPANEL_GSETTINGS_PATH ${glib.getSchemaPath wingpanel}
- '';
-
meta = with stdenv.lib; {
description = "Switchboard Desktop Plug";
homepage = https://github.com/elementary/switchboard-plug-pantheon-shell;
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/pantheon-shell/hardcode-gsettings.patch b/pkgs/desktops/pantheon/apps/switchboard-plugs/pantheon-shell/hardcode-gsettings.patch
deleted file mode 100644
index d337cf2e7b7..00000000000
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/pantheon-shell/hardcode-gsettings.patch
+++ /dev/null
@@ -1,39 +0,0 @@
-diff --git a/src/Views/Appearance.vala b/src/Views/Appearance.vala
-index c8300cc..fc48a0e 100644
---- a/src/Views/Appearance.vala
-+++ b/src/Views/Appearance.vala
-@@ -66,10 +66,16 @@ public class Appearance : Gtk.Grid {
- attach (text_size_label, 0, 2);
- attach (text_size_modebutton, 1, 2);
-
-- var animations_settings = new Settings (ANIMATIONS_SCHEMA);
-+ SettingsSchemaSource gala_schema_source = new SettingsSchemaSource.from_directory ("@GALA_GSETTINGS_PATH@", SettingsSchemaSource.get_default (), true);
-+ SettingsSchema animations_schema = gala_schema_source.lookup (ANIMATIONS_SCHEMA, false);
-+
-+ var animations_settings = new Settings.full (animations_schema, null, null);
- animations_settings.bind (ANIMATIONS_KEY, animations_switch, "active", SettingsBindFlags.DEFAULT);
-
-- var panel_settings = new Settings (PANEL_SCHEMA);
-+ SettingsSchemaSource panel_schema_source = new SettingsSchemaSource.from_directory ("@WINGPANEL_GSETTINGS_PATH@", SettingsSchemaSource.get_default (), true);
-+ SettingsSchema panel_schema = panel_schema_source.lookup (PANEL_SCHEMA, false);
-+
-+ var panel_settings = new GLib.Settings.full (panel_schema, null, null);
- panel_settings.bind (TRANSLUCENCY_KEY, translucency_switch, "active", SettingsBindFlags.DEFAULT);
-
- var interface_settings = new Settings (INTERFACE_SCHEMA);
-diff --git a/src/Views/HotCorners.vala b/src/Views/HotCorners.vala
-index 481e7c5..d102d03 100644
---- a/src/Views/HotCorners.vala
-+++ b/src/Views/HotCorners.vala
-@@ -30,7 +30,10 @@ public class HotCorners : Gtk.Grid {
- row_spacing = 24;
- halign = Gtk.Align.CENTER;
-
-- behavior_settings = new GLib.Settings ("org.pantheon.desktop.gala.behavior");
-+
-+ SettingsSchemaSource gala_schema_source = new SettingsSchemaSource.from_directory ("@GALA_GSETTINGS_PATH@", SettingsSchemaSource.get_default (), true);
-+ SettingsSchema behavior_schema = gala_schema_source.lookup ("org.pantheon.desktop.gala.behavior", false);
-+ behavior_settings = new GLib.Settings.full (behavior_schema, null, null);
-
- custom_command_revealer = new Gtk.Revealer ();
-
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/power/default.nix b/pkgs/desktops/pantheon/apps/switchboard-plugs/power/default.nix
index 1639181193a..df2051d8040 100644
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/power/default.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/power/default.nix
@@ -43,6 +43,8 @@ stdenv.mkDerivation rec {
buildInputs = [
dbus
+ elementary-dpms-helper
+ elementary-settings-daemon
glib
granite
gtk3
@@ -56,21 +58,8 @@ stdenv.mkDerivation rec {
src = ./dpms-helper-exec.patch;
elementary_dpms_helper = elementary-dpms-helper;
})
- ./hardcode-gsettings.patch
];
- postPatch = ''
- substituteInPlace src/MainView.vala \
- --subst-var-by DPMS_HELPER_GSETTINGS_PATH ${glib.getSchemaPath elementary-dpms-helper}
- substituteInPlace src/MainView.vala \
- --subst-var-by GSD_GSETTINGS_PATH ${glib.getSchemaPath elementary-settings-daemon}
- '';
-
- PKG_CONFIG_SWITCHBOARD_2_0_PLUGSDIR = "${placeholder "out"}/lib/switchboard";
- PKG_CONFIG_DBUS_1_SYSTEM_BUS_SERVICES_DIR = "${placeholder "out"}/share/dbus-1/system-services";
- PKG_CONFIG_DBUS_1_SYSCONFDIR = "${placeholder "out"}/etc";
- PKG_CONFIG_POLKIT_GOBJECT_1_POLICYDIR = "${placeholder "out"}/share/polkit-1/actions";
-
meta = with stdenv.lib; {
description = "Switchboard Power Plug";
homepage = https://github.com/elementary/switchboard-plug-power;
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/power/hardcode-gsettings.patch b/pkgs/desktops/pantheon/apps/switchboard-plugs/power/hardcode-gsettings.patch
deleted file mode 100644
index caacdad6eda..00000000000
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/power/hardcode-gsettings.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff --git a/src/MainView.vala b/src/MainView.vala
-index 1654e68..ad8fed9 100644
---- a/src/MainView.vala
-+++ b/src/MainView.vala
-@@ -46,8 +46,13 @@ public class Power.MainView : Gtk.Grid {
-
- var label_size = new Gtk.SizeGroup (Gtk.SizeGroupMode.HORIZONTAL);
-
-- settings = new GLib.Settings ("org.gnome.settings-daemon.plugins.power");
-- elementary_dpms_settings = new GLib.Settings ("io.elementary.dpms");
-+ SettingsSchemaSource gsd_sss = new SettingsSchemaSource.from_directory ("@GSD_GSETTINGS_PATH@", null, true);
-+ SettingsSchema gsd_schema = gsd_sss.lookup ("org.gnome.settings-daemon.plugins.power", false);
-+ settings = new GLib.Settings.full (gsd_schema, null, null);
-+
-+ SettingsSchemaSource dpms_sss = new SettingsSchemaSource.from_directory ("@DPMS_HELPER_GSETTINGS_PATH@", null, true);
-+ SettingsSchema elementary_dpms_schema = dpms_sss.lookup ("io.elementary.dpms", false);
-+ elementary_dpms_settings = new GLib.Settings.full (elementary_dpms_schema, null, null);
-
- battery = new Battery ();
- power_supply = new PowerSupply ();
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/security-privacy/default.nix b/pkgs/desktops/pantheon/apps/switchboard-plugs/security-privacy/default.nix
index 5c72af92397..e8d21478cc9 100644
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/security-privacy/default.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard-plugs/security-privacy/default.nix
@@ -48,21 +48,13 @@ stdenv.mkDerivation rec {
libgee
polkit
switchboard
+ lightlocker
zeitgeist
];
- patches = [
- ./hardcode-gsettings.patch
- ];
-
postPatch = ''
chmod +x meson/post_install.py
patchShebangs meson/post_install.py
-
- substituteInPlace src/Views/LockPanel.vala \
- --subst-var-by LIGHTLOCKER_GSETTINGS_PATH ${glib.getSchemaPath lightlocker}
- substituteInPlace src/Views/FirewallPanel.vala \
- --subst-var-by SWITCHBOARD_SEC_PRIV_GSETTINGS_PATH ${glib.makeSchemaPath "$out" "${pname}-${version}"}
'';
meta = with stdenv.lib; {
diff --git a/pkgs/desktops/pantheon/apps/switchboard-plugs/security-privacy/hardcode-gsettings.patch b/pkgs/desktops/pantheon/apps/switchboard-plugs/security-privacy/hardcode-gsettings.patch
deleted file mode 100644
index 24a104248f8..00000000000
--- a/pkgs/desktops/pantheon/apps/switchboard-plugs/security-privacy/hardcode-gsettings.patch
+++ /dev/null
@@ -1,33 +0,0 @@
-diff --git a/src/Views/FirewallPanel.vala b/src/Views/FirewallPanel.vala
-index 0335c29..481b1c8 100644
---- a/src/Views/FirewallPanel.vala
-+++ b/src/Views/FirewallPanel.vala
-@@ -49,7 +49,11 @@ public class SecurityPrivacy.FirewallPanel : Granite.SimpleSettingsPage {
- }
-
- construct {
-- settings = new Settings ("io.elementary.switchboard.security-privacy");
-+ SettingsSchemaSource sss = new SettingsSchemaSource.from_directory ("@SWITCHBOARD_SEC_PRIV_GSETTINGS_PATH@", SettingsSchemaSource.get_default (), true);
-+ SettingsSchema security_privacy_schema = sss.lookup ("io.elementary.switchboard.security-privacy", false);
-+
-+ settings = new Settings.full (security_privacy_schema, null, null);
-+
- disabled_rules = new Gee.HashMap ();
- load_disabled_rules ();
-
-diff --git a/src/Views/LockPanel.vala b/src/Views/LockPanel.vala
-index 4f523f9..7135a83 100644
---- a/src/Views/LockPanel.vala
-+++ b/src/Views/LockPanel.vala
-@@ -30,7 +30,10 @@ public class SecurityPrivacy.LockPanel : Granite.SimpleSettingsPage {
- }
-
- construct {
-- locker = new Settings ("apps.light-locker");
-+ SettingsSchemaSource sss = new SettingsSchemaSource.from_directory ("@LIGHTLOCKER_GSETTINGS_PATH@", SettingsSchemaSource.get_default (), true);
-+ SettingsSchema locker_schema = sss.lookup ("apps.light-locker", false);
-+
-+ locker = new Settings.full (locker_schema, null, null);
-
- var lock_suspend_label = new Gtk.Label (_("Lock on suspend:"));
- var lock_suspend_switch = new Gtk.Switch ();
diff --git a/pkgs/desktops/pantheon/apps/switchboard/wrapper.nix b/pkgs/desktops/pantheon/apps/switchboard/wrapper.nix
index 756ae86bb19..c0abb172806 100644
--- a/pkgs/desktops/pantheon/apps/switchboard/wrapper.nix
+++ b/pkgs/desktops/pantheon/apps/switchboard/wrapper.nix
@@ -1,4 +1,6 @@
-{ makeWrapper
+{ wrapGAppsHook
+, glib
+, lib
, symlinkJoin
, switchboard
, switchboardPlugs
@@ -11,13 +13,22 @@ in
symlinkJoin {
name = "${switchboard.name}-with-plugs";
- paths = [ switchboard ] ++ selectedPlugs;
+ paths = [
+ switchboard
+ ] ++ selectedPlugs;
- buildInputs = [ makeWrapper ];
+ buildInputs = [
+ wrapGAppsHook
+ glib
+ ] ++ (lib.forEach selectedPlugs (x: x.buildInputs))
+ ++ selectedPlugs;
postBuild = ''
- wrapProgram $out/bin/io.elementary.switchboard \
- --set SWITCHBOARD_PLUGS_PATH "$out/lib/switchboard"
+ make_glib_find_gsettings_schemas
+
+ gappsWrapperArgs+=(--set SWITCHBOARD_PLUGS_PATH "$out/lib/switchboard")
+
+ wrapGAppsHook
'';
inherit (switchboard) meta;
diff --git a/pkgs/desktops/pantheon/artwork/elementary-wallpapers/default.nix b/pkgs/desktops/pantheon/artwork/elementary-wallpapers/default.nix
index c48dd761e08..8a497372862 100644
--- a/pkgs/desktops/pantheon/artwork/elementary-wallpapers/default.nix
+++ b/pkgs/desktops/pantheon/artwork/elementary-wallpapers/default.nix
@@ -1,11 +1,14 @@
{ stdenv
, fetchFromGitHub
, pantheon
+, meson
+, ninja
+, gettext
}:
stdenv.mkDerivation rec {
pname = "elementary-wallpapers";
- version = "5.4";
+ version = "5.5.0";
repoName = "wallpapers";
@@ -13,9 +16,15 @@ stdenv.mkDerivation rec {
owner = "elementary";
repo = repoName;
rev = version;
- sha256 = "1ihvv9v8m5f2n2v3bgg769l52wbg241zgp3d45q6phk7p8s1gz3s";
+ sha256 = "0c63nds2ylqgcp39s13mfwhipgyw8cirn0bhybp291l5g86ii6s3";
};
+ nativeBuildInputs = [
+ gettext
+ meson
+ ninja
+ ];
+
passthru = {
updateScript = pantheon.updateScript {
inherit repoName;
@@ -23,14 +32,6 @@ stdenv.mkDerivation rec {
};
};
- dontBuild = true;
- dontConfigure = true;
-
- installPhase = ''
- mkdir -p $out/share/backgrounds/elementary
- cp -av *.jpg $out/share/backgrounds/elementary
- '';
-
meta = with stdenv.lib; {
description = "Collection of wallpapers for elementary";
homepage = https://github.com/elementary/wallpapers;
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/applications-menu/default.nix b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/applications-menu/default.nix
index a266223eced..ca9abadf9ba 100644
--- a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/applications-menu/default.nix
+++ b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/applications-menu/default.nix
@@ -26,7 +26,7 @@
stdenv.mkDerivation rec {
pname = "wingpanel-applications-menu";
- version = "2.4.4";
+ version = "2.5.0";
repoName = "applications-menu";
@@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
owner = "elementary";
repo = repoName;
rev = version;
- sha256 = "09ssxn264v6nzrxgk529kpdxq5j3b14z8mbwq0gni1bgjcla773d";
+ sha256 = "1zry9xvcljsn5fnl8qs21x7q8rpwv0sxvp2dmnx3ddqnvj4q2m7d";
};
passthru = {
@@ -73,13 +73,10 @@ stdenv.mkDerivation rec {
"--sysconfdir=${placeholder "out"}/etc"
];
- PKG_CONFIG_WINGPANEL_2_0_INDICATORSDIR = "${placeholder "out"}/lib/wingpanel";
- PKG_CONFIG_SWITCHBOARD_2_0_PLUGSDIR = "${placeholder "out"}/lib/switchboard";
-
patches = [
(substituteAll {
- src = ./bc.patch;
- exec = "${bc}/bin/bc";
+ src = ./fix-paths.patch;
+ bc = "${bc}/bin/bc";
})
];
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/applications-menu/fix-paths.patch b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/applications-menu/fix-paths.patch
new file mode 100644
index 00000000000..25e3891a205
--- /dev/null
+++ b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/applications-menu/fix-paths.patch
@@ -0,0 +1,24 @@
+diff --git a/src/synapse-plugins/calculator-plugin.vala b/src/synapse-plugins/calculator-plugin.vala
+index 18ca3af..f5d1076 100644
+--- a/src/synapse-plugins/calculator-plugin.vala
++++ b/src/synapse-plugins/calculator-plugin.vala
+@@ -44,9 +44,7 @@ namespace Synapse {
+ _("Calculator"),
+ _("Calculate basic expressions."),
+ "accessories-calculator",
+- register_plugin,
+- Environment.find_program_in_path ("bc") != null,
+- _("bc is not installed")
++ register_plugin
+ );
+ }
+
+@@ -87,7 +85,7 @@ namespace Synapse {
+ if (matched) {
+ Pid pid;
+ int read_fd, write_fd;
+- string[] argv = {"bc", "-l"};
++ string[] argv = {"@bc@", "-l"};
+ string? solution = null;
+
+ try {
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/bluetooth/default.nix b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/bluetooth/default.nix
index 3a462219f1e..965d9800c5b 100644
--- a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/bluetooth/default.nix
+++ b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/bluetooth/default.nix
@@ -16,13 +16,13 @@
stdenv.mkDerivation rec {
pname = "wingpanel-indicator-bluetooth";
- version = "2.1.3";
+ version = "2.1.4";
src = fetchFromGitHub {
owner = "elementary";
repo = pname;
rev = version;
- sha256 = "04ggakf7qp4q0kah5xksbwjn78wpdrp9kdgkj6ibzsb97ngn70g9";
+ sha256 = "05v3qy4rxi4l3g1ql99vcjylb01hz3galh19c2jc3lqc1mf1z1j1";
};
passthru = {
@@ -48,8 +48,6 @@ stdenv.mkDerivation rec {
wingpanel
];
- PKG_CONFIG_WINGPANEL_2_0_INDICATORSDIR = "${placeholder "out"}/lib/wingpanel";
-
postPatch = ''
chmod +x meson/post_install.py
patchShebangs meson/post_install.py
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/datetime/default.nix b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/datetime/default.nix
index 91549342052..a356b9c15d9 100644
--- a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/datetime/default.nix
+++ b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/datetime/default.nix
@@ -35,13 +35,13 @@ in
stdenv.mkDerivation rec {
pname = "wingpanel-indicator-datetime";
- version = "2.2.0";
+ version = "2.2.1";
src = fetchFromGitHub {
owner = "elementary";
repo = pname;
rev = version;
- sha256 = "1whdx0vgm0qbbzsw8dg2liz3cbh3ad5ybkriy4lmx5ynyhpbz0sx";
+ sha256 = "0y8lfrrkzcj8nw94jqawbxr4jz41ac0z539kkr3n3x0qmx72md2y";
};
passthru = {
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/notifications/default.nix b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/notifications/default.nix
index 4dbf6528c70..78512b341bb 100644
--- a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/notifications/default.nix
+++ b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/notifications/default.nix
@@ -14,13 +14,13 @@
stdenv.mkDerivation rec {
pname = "wingpanel-indicator-notifications";
- version = "2.1.2";
+ version = "2.1.3";
src = fetchFromGitHub {
owner = "elementary";
repo = pname;
rev = version;
- sha256 = "1960s3xcsx6yjlnk0csf1m66s1z1sj5rym9b2fy7pm2nan47z3ld";
+ sha256 = "1lx023z7xxlgwh0br48fw5w7xw673p2sqxwl1gz9f54xx7rv81py";
};
passthru = {
@@ -44,8 +44,6 @@ stdenv.mkDerivation rec {
wingpanel
];
- PKG_CONFIG_WINGPANEL_2_0_INDICATORSDIR = "${placeholder "out"}/lib/wingpanel";
-
meta = with stdenv.lib; {
description = "Notifications Indicator for Wingpanel";
homepage = https://github.com/elementary/wingpanel-indicator-notifications;
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/session/default.nix b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/session/default.nix
index 7efb03f9d66..c80da53986a 100644
--- a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/session/default.nix
+++ b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/session/default.nix
@@ -14,13 +14,13 @@
stdenv.mkDerivation rec {
pname = "wingpanel-indicator-session";
- version = "2.2.5";
+ version = "2.2.6";
src = fetchFromGitHub {
owner = "elementary";
repo = pname;
rev = version;
- sha256 = "0lqh9g6qq09m744gncspm79lbwx1vjl1d6j2szwcq9f0jdm01pm5";
+ sha256 = "0pzknbm0hg4kf2izfg1mcmyildfzwyq1hh0xhlq16gsmakq4ld26";
};
passthru = {
@@ -44,8 +44,6 @@ stdenv.mkDerivation rec {
wingpanel
];
- PKG_CONFIG_WINGPANEL_2_0_INDICATORSDIR = "${placeholder "out"}/lib/wingpanel";
-
meta = with stdenv.lib; {
description = "Session Indicator for Wingpanel";
homepage = https://github.com/elementary/wingpanel-indicator-session;
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/sound/default.nix b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/sound/default.nix
index fa89cca68c0..12654ff5509 100644
--- a/pkgs/desktops/pantheon/desktop/wingpanel-indicators/sound/default.nix
+++ b/pkgs/desktops/pantheon/desktop/wingpanel-indicators/sound/default.nix
@@ -18,13 +18,13 @@
stdenv.mkDerivation rec {
pname = "wingpanel-indicator-sound";
- version = "2.1.3";
+ version = "2.1.4";
src = fetchFromGitHub {
owner = "elementary";
repo = pname;
rev = version;
- sha256 = "0lgjl969c7s31nszh6d4pr1vsxfdsizplsihvd8r02mm1mlxmsda";
+ sha256 = "00r3dqkyp7k34xwn12l0dbzfmz70084lblxchykmk77pgzid2a0b";
};
passthru = {
@@ -52,8 +52,6 @@ stdenv.mkDerivation rec {
wingpanel
];
- PKG_CONFIG_WINGPANEL_2_0_INDICATORSDIR = "${placeholder "out"}/lib/wingpanel";
-
postPatch = ''
chmod +x meson/post_install.py
patchShebangs meson/post_install.py
diff --git a/pkgs/desktops/pantheon/desktop/wingpanel/wrapper.nix b/pkgs/desktops/pantheon/desktop/wingpanel/wrapper.nix
index 6b554d89caa..253c61b7790 100644
--- a/pkgs/desktops/pantheon/desktop/wingpanel/wrapper.nix
+++ b/pkgs/desktops/pantheon/desktop/wingpanel/wrapper.nix
@@ -1,5 +1,6 @@
{ lib
-, makeWrapper
+, wrapGAppsHook
+, glib
, symlinkJoin
, wingpanel
, wingpanelIndicators
@@ -13,17 +14,27 @@ in
symlinkJoin {
name = "${wingpanel.name}-with-indicators";
- paths = [ wingpanel ] ++ selectedIndicators;
+ paths = [
+ wingpanel
+ ] ++ selectedIndicators;
- buildInputs = [ makeWrapper ];
+ buildInputs = [
+ glib
+ wrapGAppsHook
+ ] ++ (lib.forEach selectedIndicators (x: x.buildInputs))
+ ++ selectedIndicators;
# We have to set SWITCHBOARD_PLUGS_PATH because wingpanel-applications-menu
# has a plugin to search switchboard settings
postBuild = ''
- wrapProgram $out/bin/wingpanel \
- --set WINGPANEL_INDICATORS_PATH "$out/lib/wingpanel" \
- --set SWITCHBOARD_PLUGS_PATH "${switchboard-with-plugs}/lib/switchboard" \
- --suffix XDG_DATA_DIRS : ${lib.concatMapStringsSep ":" (indicator: ''${indicator}/share/gsettings-schemas/${indicator.name}'') selectedIndicators}
+ make_glib_find_gsettings_schemas
+
+ gappsWrapperArgs+=(
+ --set WINGPANEL_INDICATORS_PATH "$out/lib/wingpanel"
+ --set SWITCHBOARD_PLUGS_PATH "${switchboard-with-plugs}/lib/switchboard"
+ )
+
+ wrapGAppsHook
'';
inherit (wingpanel) meta;
diff --git a/pkgs/desktops/pantheon/services/elementary-capnet-assist/default.nix b/pkgs/desktops/pantheon/services/elementary-capnet-assist/default.nix
index 6305c872b2f..b4982fcf6be 100644
--- a/pkgs/desktops/pantheon/services/elementary-capnet-assist/default.nix
+++ b/pkgs/desktops/pantheon/services/elementary-capnet-assist/default.nix
@@ -17,7 +17,7 @@
stdenv.mkDerivation rec {
pname = "elementary-capnet-assist";
- version = "2.2.3";
+ version = "2.2.4";
repoName = "capnet-assist";
@@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
owner = "elementary";
repo = repoName;
rev = version;
- sha256 = "15cnwimkmmsb4rwvgm8bizcsn1krsj6k3qc88izn79is75y6wwji";
+ sha256 = "0yz827gs1qv6csgv4v993rjmqzc6dbymbvznsy45ghlh19l4l7j1";
};
passthru = {
diff --git a/pkgs/desktops/pantheon/update.sh b/pkgs/desktops/pantheon/update.sh
index 8d002fe47c2..4897697d94f 100755
--- a/pkgs/desktops/pantheon/update.sh
+++ b/pkgs/desktops/pantheon/update.sh
@@ -114,7 +114,26 @@ EOF
function get_latest_tag ( ) {
repo_name="$1"
- curl --silent --show-error --fail -X GET "https://api.github.com/repos/elementary/$repo_name/releases/latest" | jq -r '.tag_name'
+ OAUTH_TOKEN=$(printenv OAUTH_TOKEN)
+
+ if [ -n "$OAUTH_TOKEN" ]; then
+ curl \
+ --silent \
+ --show-error \
+ --fail \
+ -X GET \
+ --header "Authorization: token $OAUTH_TOKEN" \
+ "https://api.github.com/repos/elementary/$repo_name/releases/latest" \
+ | jq -r '.tag_name'
+ else
+ curl \
+ --silent \
+ --show-error \
+ --fail \
+ -X GET \
+ "https://api.github.com/repos/elementary/$repo_name/releases/latest" \
+ | jq -r '.tag_name'
+ fi
}
#
diff --git a/pkgs/development/compilers/crystal/default.nix b/pkgs/development/compilers/crystal/default.nix
index 4032f0b5e92..095f94143e3 100644
--- a/pkgs/development/compilers/crystal/default.nix
+++ b/pkgs/development/compilers/crystal/default.nix
@@ -1,6 +1,6 @@
{ stdenv, lib, fetchFromGitHub, fetchurl, makeWrapper
, coreutils, git, gmp, nettools, openssl_1_0_2, readline, tzdata, libxml2, libyaml
-, boehmgc, libatomic_ops, pcre, libevent, libiconv, llvm, clang, which, zlib
+, boehmgc, libatomic_ops, pcre, libevent, libiconv, llvm, clang, which, zlib, pkgconfig
, callPackage }:
# We need multiple binaries as a given binary isn't always able to build
@@ -38,8 +38,14 @@ let
'';
};
- generic = { version, sha256, binary, doCheck ? true }:
- let compiler = stdenv.mkDerivation rec {
+ commonBuildInputs = extraBuildInputs: [
+ boehmgc libatomic_ops pcre libevent libyaml zlib libxml2 openssl_1_0_2
+ ] ++ extraBuildInputs
+ ++ stdenv.lib.optionals stdenv.isDarwin [ libiconv ];
+
+
+ generic = ({ version, sha256, binary, doCheck ? true, extraBuildInputs ? [] }:
+ lib.fix (compiler: stdenv.mkDerivation {
pname = "crystal";
inherit doCheck version;
@@ -72,14 +78,9 @@ let
--replace '`hostname`' '`${nettools}/bin/hostname`'
'';
- buildInputs = [
- boehmgc libatomic_ops pcre libevent libyaml
- llvm zlib openssl_1_0_2
- ] ++ stdenv.lib.optionals stdenv.isDarwin [
- libiconv
- ];
+ buildInputs = commonBuildInputs extraBuildInputs;
- nativeBuildInputs = [ binary makeWrapper which ];
+ nativeBuildInputs = [ binary makeWrapper which pkgconfig llvm ];
makeFlags = [
"CRYSTAL_CONFIG_VERSION=${version}"
@@ -91,10 +92,13 @@ let
FLAGS = [
"--release"
- "--no-debug"
"--single-module" # needed for deterministic builds
];
+ # This makes sure we don't keep depending on the previous version of
+ # crystal used to build this one.
+ CRYSTAL_LIBRARY_PATH = "${placeholder "out"}/lib/crystal";
+
# We *have* to add `which` to the PATH or crystal is unable to build stuff
# later if which is not available.
installPhase = ''
@@ -102,9 +106,11 @@ let
install -Dm755 .build/crystal $out/bin/crystal
wrapProgram $out/bin/crystal \
- --suffix PATH : ${lib.makeBinPath [ clang which ]} \
+ --suffix PATH : ${lib.makeBinPath [ pkgconfig clang which ]} \
--suffix CRYSTAL_PATH : lib:$out/lib/crystal \
- --suffix LIBRARY_PATH : ${lib.makeLibraryPath buildInputs}
+ --suffix CRYSTAL_LIBRARY_PATH : ${
+ lib.makeLibraryPath (commonBuildInputs extraBuildInputs)
+ }
install -dm755 $out/lib/crystal
cp -r src/* $out/lib/crystal/
@@ -147,7 +153,7 @@ let
maintainers = with maintainers; [ manveru david50407 peterhoeg ];
platforms = builtins.attrNames archs;
};
- }; in compiler;
+ }));
in rec {
binaryCrystal_0_26 = genericBinary {
@@ -219,6 +225,14 @@ in rec {
binary = crystal_0_30;
};
+ crystal_0_32 = generic {
+ version = "255bfc5fa925b95b72e34b26ad997fb2b3f83059";
+ sha256 = "1dgk36cj5lwhs1c4zp0s1c9hjk0h3vljq6zwhlnzkl1xs7cgzim1";
+ doCheck = false; # 5 checks are failing now
+ binary = crystal_0_31;
+ extraBuildInputs = [ readline ];
+ };
+
crystal = crystal_0_31;
crystal2nix = callPackage ./crystal2nix.nix {};
diff --git a/pkgs/development/compilers/cudatoolkit/common.nix b/pkgs/development/compilers/cudatoolkit/common.nix
new file mode 100644
index 00000000000..2e93c0b661b
--- /dev/null
+++ b/pkgs/development/compilers/cudatoolkit/common.nix
@@ -0,0 +1,220 @@
+args@
+{ version
+, sha256
+, url ? ""
+, name ? ""
+, developerProgram ? false
+, runPatches ? []
+, addOpenGLRunpath
+, alsaLib
+, expat
+, fetchurl
+, fontconfig
+, freetype
+, gcc
+, gdk-pixbuf
+, glib
+, glibc
+, gtk2
+, lib
+, makeWrapper
+, ncurses5
+, perl
+, python27
+, requireFile
+, stdenv
+, unixODBC
+, xorg
+, zlib
+}:
+
+stdenv.mkDerivation rec {
+ pname = "cudatoolkit";
+ inherit version runPatches;
+
+ dontPatchELF = true;
+ dontStrip = true;
+
+ src =
+ if developerProgram then
+ requireFile {
+ message = ''
+ This nix expression requires that ${args.name} is already part of the store.
+ Register yourself to NVIDIA Accelerated Computing Developer Program, retrieve the CUDA toolkit
+ at https://developer.nvidia.com/cuda-toolkit, and run the following command in the download directory:
+ nix-prefetch-url file://\$PWD/${args.name}
+ '';
+ inherit (args) name sha256;
+ }
+ else
+ fetchurl {
+ inherit (args) url sha256;
+ };
+
+ outputs = [ "out" "lib" "doc" ];
+
+ nativeBuildInputs = [ perl makeWrapper addOpenGLRunpath ];
+ buildInputs = [ gdk-pixbuf ]; # To get $GDK_PIXBUF_MODULE_FILE via setup-hook
+ runtimeDependencies = [
+ ncurses5 expat python27 zlib glibc
+ xorg.libX11 xorg.libXext xorg.libXrender xorg.libXt xorg.libXtst xorg.libXi xorg.libXext
+ gtk2 glib fontconfig freetype unixODBC alsaLib
+ ];
+
+ rpath = "${stdenv.lib.makeLibraryPath runtimeDependencies}:${stdenv.cc.cc.lib}/lib64";
+
+ unpackPhase = ''
+ sh $src --keep --noexec
+
+ ${lib.optionalString (lib.versionOlder version "10.1") ''
+ cd pkg/run_files
+ sh cuda-linux*.run --keep --noexec
+ sh cuda-samples*.run --keep --noexec
+ mv pkg ../../$(basename $src)
+ cd ../..
+ rm -rf pkg
+
+ for patch in $runPatches; do
+ sh $patch --keep --noexec
+ mv pkg $(basename $patch)
+ done
+ ''}
+ '';
+
+ installPhase = ''
+ runHook preInstall
+ mkdir $out
+ ${lib.optionalString (lib.versionOlder version "10.1") ''
+ cd $(basename $src)
+ export PERL5LIB=.
+ perl ./install-linux.pl --prefix="$out"
+ cd ..
+ for patch in $runPatches; do
+ cd $(basename $patch)
+ perl ./install_patch.pl --silent --accept-eula --installdir="$out"
+ cd ..
+ done
+ ''}
+ ${lib.optionalString (lib.versionAtLeast version "10.1") ''
+ cd pkg/builds/cuda-toolkit
+ mv * $out/
+ ''}
+
+ rm $out/tools/CUDA_Occupancy_Calculator.xls # FIXME: why?
+
+ ${lib.optionalString (lib.versionOlder version "10.1") ''
+ # let's remove the 32-bit libraries, they confuse the lib64->lib mover
+ rm -rf $out/lib
+ ''}
+
+ # Remove some cruft.
+ ${lib.optionalString ((lib.versionAtLeast version "7.0") && (lib.versionOlder version "10.1"))
+ "rm $out/bin/uninstall*"}
+
+ # Fixup path to samples (needed for cuda 6.5 or else nsight will not find them)
+ if [ -d "$out"/cuda-samples ]; then
+ mv "$out"/cuda-samples "$out"/samples
+ fi
+
+ # Change the #error on GCC > 4.9 to a #warning.
+ sed -i $out/include/host_config.h -e 's/#error\(.*unsupported GNU version\)/#warning\1/'
+
+ # Fix builds with newer glibc version
+ sed -i "1 i#define _BITS_FLOATN_H" "$out/include/host_defines.h"
+
+ # Ensure that cmake can find CUDA.
+ mkdir -p $out/nix-support
+ echo "cmakeFlags+=' -DCUDA_TOOLKIT_ROOT_DIR=$out'" >> $out/nix-support/setup-hook
+
+ # Move some libraries to the lib output so that programs that
+ # depend on them don't pull in this entire monstrosity.
+ mkdir -p $lib/lib
+ mv -v $out/lib64/libcudart* $lib/lib/
+
+ # Remove OpenCL libraries as they are provided by ocl-icd and driver.
+ rm -f $out/lib64/libOpenCL*
+ ${lib.optionalString (lib.versionAtLeast version "10.1") ''
+ mv $out/lib64 $out/lib
+ ''}
+
+ # Set compiler for NVCC.
+ wrapProgram $out/bin/nvcc \
+ --prefix PATH : ${gcc}/bin
+
+ # nvprof do not find any program to profile if LD_LIBRARY_PATH is not set
+ wrapProgram $out/bin/nvprof \
+ --prefix LD_LIBRARY_PATH : $out/lib
+ '' + lib.optionalString (lib.versionOlder version "8.0") ''
+ # Hack to fix building against recent Glibc/GCC.
+ echo "NIX_CFLAGS_COMPILE+=' -D_FORCE_INLINES'" >> $out/nix-support/setup-hook
+ '' + ''
+ runHook postInstall
+ '';
+
+ postInstall = ''
+ for b in nvvp nsight; do
+ wrapProgram "$out/bin/$b" \
+ --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE"
+ done
+ '';
+
+ preFixup = ''
+ while IFS= read -r -d ''$'\0' i; do
+ if ! isELF "$i"; then continue; fi
+ echo "patching $i..."
+ if [[ ! $i =~ \.so ]]; then
+ patchelf \
+ --set-interpreter "''$(cat $NIX_CC/nix-support/dynamic-linker)" $i
+ fi
+ if [[ $i =~ libcudart ]]; then
+ rpath2=
+ else
+ rpath2=$rpath:$lib/lib:$out/jre/lib/amd64/jli:$out/lib:$out/lib64:$out/nvvm/lib:$out/nvvm/lib64
+ fi
+ patchelf --set-rpath "$rpath2" --force-rpath $i
+ done < <(find $out $lib $doc -type f -print0)
+ '';
+
+ # Set RPATH so that libcuda and other libraries in
+ # /run/opengl-driver(-32)/lib can be found. See the explanation in
+ # addOpenGLRunpath. Don't try to figure out which libraries really need
+ # it, just patch all (but not the stubs libraries). Note that
+ # --force-rpath prevents changing RPATH (set above) to RUNPATH.
+ postFixup = ''
+ addOpenGLRunpath --force-rpath {$out,$lib}/lib/lib*.so
+ '';
+
+ # cuda-gdb doesn't run correctly when not using sandboxing, so
+ # temporarily disabling the install check. This should be set to true
+ # when we figure out how to get `cuda-gdb --version` to run correctly
+ # when not using sandboxing.
+ doInstallCheck = false;
+ postInstallCheck = let
+ in ''
+ # Smoke test binaries
+ pushd $out/bin
+ for f in *; do
+ case $f in
+ crt) continue;;
+ nvcc.profile) continue;;
+ nsight_ee_plugins_manage.sh) continue;;
+ uninstall_cuda_toolkit_6.5.pl) continue;;
+ computeprof|nvvp|nsight) continue;; # GUIs don't feature "--version"
+ *) echo "Executing '$f --version':"; ./$f --version;;
+ esac
+ done
+ popd
+ '';
+ passthru = {
+ cc = gcc;
+ majorVersion = lib.versions.majorMinor version;
+ };
+
+ meta = with stdenv.lib; {
+ description = "A compiler for NVIDIA GPUs, math libraries, and tools";
+ homepage = "https://developer.nvidia.com/cuda-toolkit";
+ platforms = [ "x86_64-linux" ];
+ license = licenses.unfree;
+ };
+}
+
diff --git a/pkgs/development/compilers/cudatoolkit/default.nix b/pkgs/development/compilers/cudatoolkit/default.nix
index 98c0381216a..9c983a38e4e 100644
--- a/pkgs/development/compilers/cudatoolkit/default.nix
+++ b/pkgs/development/compilers/cudatoolkit/default.nix
@@ -1,210 +1,15 @@
-{ lib, stdenv, makeWrapper, fetchurl, requireFile, perl, ncurses5, expat, python27, zlib
-, gcc48, gcc49, gcc5, gcc6, gcc7
-, xorg, gtk2, gdk-pixbuf, glib, fontconfig, freetype, unixODBC, alsaLib, glibc
-, addOpenGLRunpath
+{ lib
+, callPackage
+, fetchurl
+, gcc48
+, gcc49
+, gcc5
+, gcc6
+, gcc7
}:
let
-
- common =
- args@{ gcc, version, sha256
- , url ? ""
- , name ? ""
- , developerProgram ? false
- , python ? python27
- , runPatches ? []
- }:
-
- stdenv.mkDerivation rec {
- pname = "cudatoolkit";
- inherit version runPatches;
-
- dontPatchELF = true;
- dontStrip = true;
-
- src =
- if developerProgram then
- requireFile {
- message = ''
- This nix expression requires that ${args.name} is already part of the store.
- Register yourself to NVIDIA Accelerated Computing Developer Program, retrieve the CUDA toolkit
- at https://developer.nvidia.com/cuda-toolkit, and run the following command in the download directory:
- nix-prefetch-url file://\$PWD/${args.name}
- '';
- inherit (args) name sha256;
- }
- else
- fetchurl {
- inherit (args) url sha256;
- };
-
- outputs = [ "out" "lib" "doc" ];
-
- nativeBuildInputs = [ perl makeWrapper addOpenGLRunpath ];
- buildInputs = [ gdk-pixbuf ]; # To get $GDK_PIXBUF_MODULE_FILE via setup-hook
- runtimeDependencies = [
- ncurses5 expat python zlib glibc
- xorg.libX11 xorg.libXext xorg.libXrender xorg.libXt xorg.libXtst xorg.libXi xorg.libXext
- gtk2 glib fontconfig freetype unixODBC alsaLib
- ];
-
- rpath = "${stdenv.lib.makeLibraryPath runtimeDependencies}:${stdenv.cc.cc.lib}/lib64";
-
- unpackPhase = ''
- sh $src --keep --noexec
-
- ${lib.optionalString (lib.versionOlder version "10.1") ''
- cd pkg/run_files
- sh cuda-linux*.run --keep --noexec
- sh cuda-samples*.run --keep --noexec
- mv pkg ../../$(basename $src)
- cd ../..
- rm -rf pkg
-
- for patch in $runPatches; do
- sh $patch --keep --noexec
- mv pkg $(basename $patch)
- done
- ''}
- '';
-
- installPhase = ''
- runHook preInstall
- mkdir $out
- ${lib.optionalString (lib.versionOlder version "10.1") ''
- cd $(basename $src)
- export PERL5LIB=.
- perl ./install-linux.pl --prefix="$out"
- cd ..
- for patch in $runPatches; do
- cd $(basename $patch)
- perl ./install_patch.pl --silent --accept-eula --installdir="$out"
- cd ..
- done
- ''}
- ${lib.optionalString (lib.versionAtLeast version "10.1") ''
- cd pkg/builds/cuda-toolkit
- mv * $out/
- ''}
-
- rm $out/tools/CUDA_Occupancy_Calculator.xls # FIXME: why?
-
- ${lib.optionalString (lib.versionOlder version "10.1") ''
- # let's remove the 32-bit libraries, they confuse the lib64->lib mover
- rm -rf $out/lib
- ''}
-
- # Remove some cruft.
- ${lib.optionalString ((lib.versionAtLeast version "7.0") && (lib.versionOlder version "10.1"))
- "rm $out/bin/uninstall*"}
-
- # Fixup path to samples (needed for cuda 6.5 or else nsight will not find them)
- if [ -d "$out"/cuda-samples ]; then
- mv "$out"/cuda-samples "$out"/samples
- fi
-
- # Change the #error on GCC > 4.9 to a #warning.
- sed -i $out/include/host_config.h -e 's/#error\(.*unsupported GNU version\)/#warning\1/'
-
- # Fix builds with newer glibc version
- sed -i "1 i#define _BITS_FLOATN_H" "$out/include/host_defines.h"
-
- # Ensure that cmake can find CUDA.
- mkdir -p $out/nix-support
- echo "cmakeFlags+=' -DCUDA_TOOLKIT_ROOT_DIR=$out'" >> $out/nix-support/setup-hook
-
- # Move some libraries to the lib output so that programs that
- # depend on them don't pull in this entire monstrosity.
- mkdir -p $lib/lib
- mv -v $out/lib64/libcudart* $lib/lib/
-
- # Remove OpenCL libraries as they are provided by ocl-icd and driver.
- rm -f $out/lib64/libOpenCL*
- ${lib.optionalString (lib.versionAtLeast version "10.1") ''
- mv $out/lib64 $out/lib
- ''}
-
- # Set compiler for NVCC.
- wrapProgram $out/bin/nvcc \
- --prefix PATH : ${gcc}/bin
-
- # nvprof do not find any program to profile if LD_LIBRARY_PATH is not set
- wrapProgram $out/bin/nvprof \
- --prefix LD_LIBRARY_PATH : $out/lib
- '' + lib.optionalString (lib.versionOlder version "8.0") ''
- # Hack to fix building against recent Glibc/GCC.
- echo "NIX_CFLAGS_COMPILE+=' -D_FORCE_INLINES'" >> $out/nix-support/setup-hook
- '' + ''
- runHook postInstall
- '';
-
- postInstall = ''
- for b in nvvp nsight; do
- wrapProgram "$out/bin/$b" \
- --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE"
- done
- '';
-
- preFixup = ''
- while IFS= read -r -d ''$'\0' i; do
- if ! isELF "$i"; then continue; fi
- echo "patching $i..."
- if [[ ! $i =~ \.so ]]; then
- patchelf \
- --set-interpreter "''$(cat $NIX_CC/nix-support/dynamic-linker)" $i
- fi
- if [[ $i =~ libcudart ]]; then
- rpath2=
- else
- rpath2=$rpath:$lib/lib:$out/jre/lib/amd64/jli:$out/lib:$out/lib64:$out/nvvm/lib:$out/nvvm/lib64
- fi
- patchelf --set-rpath "$rpath2" --force-rpath $i
- done < <(find $out $lib $doc -type f -print0)
- '';
-
- # Set RPATH so that libcuda and other libraries in
- # /run/opengl-driver(-32)/lib can be found. See the explanation in
- # addOpenGLRunpath. Don't try to figure out which libraries really need
- # it, just patch all (but not the stubs libraries). Note that
- # --force-rpath prevents changing RPATH (set above) to RUNPATH.
- postFixup = ''
- addOpenGLRunpath --force-rpath {$out,$lib}/lib/lib*.so
- '';
-
- # cuda-gdb doesn't run correctly when not using sandboxing, so
- # temporarily disabling the install check. This should be set to true
- # when we figure out how to get `cuda-gdb --version` to run correctly
- # when not using sandboxing.
- doInstallCheck = false;
- postInstallCheck = let
- in ''
- # Smoke test binaries
- pushd $out/bin
- for f in *; do
- case $f in
- crt) continue;;
- nvcc.profile) continue;;
- nsight_ee_plugins_manage.sh) continue;;
- uninstall_cuda_toolkit_6.5.pl) continue;;
- computeprof|nvvp|nsight) continue;; # GUIs don't feature "--version"
- *) echo "Executing '$f --version':"; ./$f --version;;
- esac
- done
- popd
- '';
- passthru = {
- cc = gcc;
- majorVersion = lib.versions.majorMinor version;
- };
-
- meta = with stdenv.lib; {
- description = "A compiler for NVIDIA GPUs, math libraries, and tools";
- homepage = "https://developer.nvidia.com/cuda-toolkit";
- platforms = [ "x86_64-linux" ];
- license = licenses.unfree;
- };
- };
-
+ common = callPackage ./common.nix;
in rec {
cudatoolkit_6 = common {
version = "6.0.37";
diff --git a/pkgs/development/haskell-modules/configuration-common.nix b/pkgs/development/haskell-modules/configuration-common.nix
index 4579cf015cd..80fdb8a95e6 100644
--- a/pkgs/development/haskell-modules/configuration-common.nix
+++ b/pkgs/development/haskell-modules/configuration-common.nix
@@ -1080,6 +1080,7 @@ self: super: {
# The test suite is broken. Break out of "base-compat >=0.9.3 && <0.10, hspec >=2.4.4 && <2.5".
haddock-library = doJailbreak (dontCheck super.haddock-library);
+ haddock-library_1_8_0 = doJailbreak super.haddock-library_1_8_0;
# Generate shell completion.
cabal2nix = generateOptparseApplicativeCompletion "cabal2nix" super.cabal2nix;
diff --git a/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix b/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix
index 617ca63c27f..e06b14944b0 100644
--- a/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix
+++ b/pkgs/development/haskell-modules/configuration-ghc-8.8.x.nix
@@ -80,6 +80,7 @@ self: super: {
optparse-applicative = self.optparse-applicative_0_15_1_0;
pandoc = self.pandoc_2_8_0_1;
pandoc-types = self.pandoc-types_1_20;
+ prettyprinter = self.prettyprinter_1_5_1;
primitive = dontCheck super.primitive_0_7_0_0; # evaluating the test suite gives an infinite recursion
regex-base = self.regex-base_0_94_0_0;
regex-pcre-builtin = self.regex-pcre-builtin_0_95_1_1_8_43;
diff --git a/pkgs/development/interpreters/python/default.nix b/pkgs/development/interpreters/python/default.nix
index 3be722cd156..ae0ecbf08e7 100644
--- a/pkgs/development/interpreters/python/default.nix
+++ b/pkgs/development/interpreters/python/default.nix
@@ -46,7 +46,7 @@ with pkgs;
inherit hasDistutilsCxxPatch pythonForBuild;
};
-in rec {
+in {
python27 = callPackage ./cpython/2.7 {
self = python27;
diff --git a/pkgs/development/libraries/boost/generic.nix b/pkgs/development/libraries/boost/generic.nix
index f7bd189022f..2d0a5a63d6f 100644
--- a/pkgs/development/libraries/boost/generic.nix
+++ b/pkgs/development/libraries/boost/generic.nix
@@ -14,6 +14,7 @@
, taggedLayout ? ((enableRelease && enableDebug) || (enableSingleThreaded && enableMultiThreaded) || (enableShared && enableStatic))
, patches ? []
, mpi ? null
+, extraB2Args ? []
# Attributes inherit from specific versions
, version, src
@@ -92,7 +93,8 @@ let
++ optional (mpi != null || stdenv.hostPlatform != stdenv.buildPlatform) "--user-config=user-config.jam"
++ optionals (stdenv.hostPlatform.libc == "msvcrt") [
"threadapi=win32"
- ]);
+ ] ++ extraB2Args
+ );
in
diff --git a/pkgs/development/libraries/gegl/4.0.nix b/pkgs/development/libraries/gegl/4.0.nix
index 2edb47cb9bb..ca7163af49b 100644
--- a/pkgs/development/libraries/gegl/4.0.nix
+++ b/pkgs/development/libraries/gegl/4.0.nix
@@ -105,6 +105,9 @@ stdenv.mkDerivation rec {
"-Dlibv4l=disabled"
"-Dlibv4l2=disabled"
"-Dumfpack=disabled"
+ # Disabled due to multiple vulnerabilities, see
+ # https://github.com/NixOS/nixpkgs/pull/73586
+ "-Djasper=disabled"
];
# TODO: Fix missing math symbols in gegl seamless clone.
diff --git a/pkgs/development/libraries/libgcrypt/default.nix b/pkgs/development/libraries/libgcrypt/default.nix
index 75d8e6710e0..e7a9ec60a6d 100644
--- a/pkgs/development/libraries/libgcrypt/default.nix
+++ b/pkgs/development/libraries/libgcrypt/default.nix
@@ -27,7 +27,8 @@ stdenv.mkDerivation rec {
++ stdenv.lib.optional stdenv.isDarwin gettext
++ stdenv.lib.optional enableCapabilities libcap;
- configureFlags = [ "--with-libgpg-error-prefix=${libgpgerror.dev}" ];
+ configureFlags = [ "--with-libgpg-error-prefix=${libgpgerror.dev}" ]
+ ++ stdenv.lib.optional stdenv.hostPlatform.isMusl "--disable-asm";
# Make sure libraries are correct for .pc and .la files
# Also make sure includes are fixed for callers who don't use libgpgcrypt-config
diff --git a/pkgs/development/libraries/libusb1/default.nix b/pkgs/development/libraries/libusb1/default.nix
index 9a08a7756c8..9d90304042c 100644
--- a/pkgs/development/libraries/libusb1/default.nix
+++ b/pkgs/development/libraries/libusb1/default.nix
@@ -28,13 +28,8 @@ stdenv.mkDerivation (rec {
NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isLinux "-lgcc_s";
- configureFlags =
- # We use `isLinux` here only to avoid mass rebuilds for Darwin, where
- # disabling udev happens automatically. Remove `isLinux` at next big change!
- stdenv.lib.optional (stdenv.isLinux && !enableSystemd) "--disable-udev";
-
- preFixup = stdenv.lib.optionalString enableSystemd ''
- sed 's,-ludev,-L${systemd.lib}/lib -ludev,' -i $out/lib/libusb-1.0.la
+ preFixup = stdenv.lib.optionalString stdenv.isLinux ''
+ sed 's,-ludev,-L${stdenv.lib.getLib systemd}/lib -ludev,' -i $out/lib/libusb-1.0.la
'';
meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/live555/default.nix b/pkgs/development/libraries/live555/default.nix
index dbebe0af80f..84907a42860 100644
--- a/pkgs/development/libraries/live555/default.nix
+++ b/pkgs/development/libraries/live555/default.nix
@@ -3,14 +3,14 @@
# Based on https://projects.archlinux.org/svntogit/packages.git/tree/trunk/PKGBUILD
stdenv.mkDerivation rec {
pname = "live555";
- version = "2019.10.20";
+ version = "2019.11.22";
src = fetchurl { # the upstream doesn't provide a stable URL
urls = [
"mirror://sourceforge/slackbuildsdirectlinks/live.${version}.tar.gz"
"https://download.videolan.org/contrib/live555/live.${version}.tar.gz"
];
- sha256 = "085csq31s4kak0sym5y170f82wp542bg1ff3kycanvs8w4d4n9j4";
+ sha256 = "144y2wsfpaclkj7srx85f3y3parzn7vbjmzc2afc62wdsb9gn46d";
};
postPatch = ''
diff --git a/pkgs/development/libraries/poppler/default.nix b/pkgs/development/libraries/poppler/default.nix
index b8c88541edd..eb1e9ec732f 100644
--- a/pkgs/development/libraries/poppler/default.nix
+++ b/pkgs/development/libraries/poppler/default.nix
@@ -12,11 +12,11 @@ let
in
stdenv.mkDerivation rec {
name = "poppler-${suffix}-${version}";
- version = "0.81.0"; # beware: updates often break cups-filters build
+ version = "0.83.0"; # beware: updates often break cups-filters build
src = fetchurl {
url = "${meta.homepage}/poppler-${version}.tar.xz";
- sha256 = "00pykc7nym3xg0wc60awv0i35zwdfyn0igb6jrnb6rsv0c5h4b91";
+ sha256 = "16vr1g5qsqwyxfnyikqw37i04x9zpp45far2x90c7qbijw6nap38";
};
outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/tepl/default.nix b/pkgs/development/libraries/tepl/default.nix
index 0ca382baeca..6c480db9d60 100644
--- a/pkgs/development/libraries/tepl/default.nix
+++ b/pkgs/development/libraries/tepl/default.nix
@@ -1,14 +1,14 @@
{ stdenv, fetchurl
, amtk, gnome3, gtk3, gtksourceview4, libuchardet, libxml2, pkgconfig }:
let
- version = "4.2.0";
+ version = "4.2.1";
pname = "tepl";
in stdenv.mkDerivation {
name = "${pname}-${version}";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
- sha256 = "1kcwcr72dv3xwi2ni579c9raa0cnbazfnmy6mgapzn6dir1d8fc8";
+ sha256 = "0vib1ljgqwy2fhiwq8z3pcd68qy7v72l4f35p1d1w1k9z8sy677k";
};
nativeBuildInputs = [
diff --git a/pkgs/development/ocaml-modules/alcotest/default.nix b/pkgs/development/ocaml-modules/alcotest/default.nix
index c43ad10d7d8..8415dc751d5 100644
--- a/pkgs/development/ocaml-modules/alcotest/default.nix
+++ b/pkgs/development/ocaml-modules/alcotest/default.nix
@@ -6,14 +6,15 @@ let param =
if stdenv.lib.versionAtLeast ocaml.version "4.02" then {
version = "0.8.5";
sha256 = "1mhckvdcxkikbzgvy24kjz4265l15b86a6swz7m3ynbgvqdcfzqn";
- buildInputs = [ dune ];
+ nativeBuildInputs = [ dune ];
propagatedBuildInputs = [ uuidm ];
buildPhase = "dune build -p alcotest";
inherit (dune) installPhase;
} else {
version = "0.7.2";
sha256 = "1qgsz2zz5ky6s5pf3j3shc4fjc36rqnjflk8x0wl1fcpvvkr52md";
- buildInputs = [ ocamlbuild topkg ];
+ buildInputs = [ topkg ];
+ nativeBuildInputs = [ ocamlbuild ];
inherit (topkg) buildPhase installPhase;
};
in
@@ -27,7 +28,8 @@ stdenv.mkDerivation rec {
inherit (param) sha256;
};
- buildInputs = [ ocaml findlib ] ++ param.buildInputs;
+ nativeBuildInputs = [ ocaml findlib ] ++ (param.nativeBuildInputs or []);
+ buildInputs = [ findlib ] ++ (param.buildInputs or []);
propagatedBuildInputs = [ cmdliner astring fmt result ]
++ (param.propagatedBuildInputs or []);
diff --git a/pkgs/development/ocaml-modules/asn1-combinators/default.nix b/pkgs/development/ocaml-modules/asn1-combinators/default.nix
index c6d99fa33e7..49fcdbd261a 100644
--- a/pkgs/development/ocaml-modules/asn1-combinators/default.nix
+++ b/pkgs/development/ocaml-modules/asn1-combinators/default.nix
@@ -25,7 +25,8 @@ stdenv.mkDerivation rec {
inherit (param) sha256;
};
- buildInputs = [ ocaml findlib ocamlbuild ounit topkg ];
+ buildInputs = [ findlib ounit topkg ];
+ nativeBuildInputs = [ ocaml findlib ocamlbuild ];
propagatedBuildInputs = [ result cstruct zarith ] ++ param.propagatedBuildInputs;
buildPhase = "${topkg.run} build --tests true";
diff --git a/pkgs/development/ocaml-modules/bos/default.nix b/pkgs/development/ocaml-modules/bos/default.nix
index 0f168daac8c..6b37cf1aed3 100644
--- a/pkgs/development/ocaml-modules/bos/default.nix
+++ b/pkgs/development/ocaml-modules/bos/default.nix
@@ -10,7 +10,8 @@ stdenv.mkDerivation rec {
sha256 = "1s10iqx8rgnxr5n93lf4blwirjf8nlm272yg5sipr7lsr35v49wc";
};
- buildInputs = [ ocaml findlib ocamlbuild topkg ];
+ nativeBuildInputs = [ ocaml findlib ocamlbuild ];
+ buildInputs = [ findlib topkg ];
propagatedBuildInputs = [ astring fmt fpath logs rresult ];
inherit (topkg) buildPhase installPhase;
diff --git a/pkgs/development/ocaml-modules/cmdliner/default.nix b/pkgs/development/ocaml-modules/cmdliner/default.nix
index 271ec1f2af9..34d57b403b0 100644
--- a/pkgs/development/ocaml-modules/cmdliner/default.nix
+++ b/pkgs/development/ocaml-modules/cmdliner/default.nix
@@ -25,8 +25,8 @@ stdenv.mkDerivation rec {
inherit (param) sha256;
};
- nativeBuildInputs = [ ocamlbuild topkg ];
- buildInputs = [ ocaml findlib ];
+ nativeBuildInputs = [ ocaml ocamlbuild findlib ];
+ buildInputs = [ topkg ];
propagatedBuildInputs = [ result ];
inherit (topkg) buildPhase installPhase;
diff --git a/pkgs/development/ocaml-modules/cpuid/default.nix b/pkgs/development/ocaml-modules/cpuid/default.nix
index 10938cf81c2..6c7ecaa4b7a 100644
--- a/pkgs/development/ocaml-modules/cpuid/default.nix
+++ b/pkgs/development/ocaml-modules/cpuid/default.nix
@@ -1,22 +1,20 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, ocb-stubblr }:
+{ lib, fetchurl, buildDunePackage }:
-stdenv.mkDerivation {
- name = "ocaml${ocaml.version}-cpuid-0.1.0";
+buildDunePackage rec {
+ pname = "cpuid";
+ version = "0.1.2";
+
+ minimumOCamlVersion = "4.03";
src = fetchurl {
- url = https://github.com/pqwy/cpuid/releases/download/v0.1.0/cpuid-0.1.0.tbz;
- sha256 = "08k2558a3dnxn8msgpz8c93sfn0y027ganfdi2yvql0fp1ixv97p";
+ url = "https://github.com/pqwy/cpuid/releases/download/v${version}/cpuid-v${version}.tbz";
+ sha256 = "08ng4mva6qblb5ipkrxbr0my7ndkc4qwcbswkqgbgir864s74m93";
};
- buildInputs = [ ocaml findlib ocamlbuild topkg ocb-stubblr ];
-
- inherit (topkg) buildPhase installPhase;
-
meta = {
homepage = https://github.com/pqwy/cpuid;
description = "Detect CPU features from OCaml";
- license = stdenv.lib.licenses.isc;
- maintainers = [ stdenv.lib.maintainers.vbgl ];
- inherit (ocaml.meta) platforms;
+ license = lib.licenses.isc;
+ maintainers = [ lib.maintainers.vbgl ];
};
}
diff --git a/pkgs/development/ocaml-modules/fmt/default.nix b/pkgs/development/ocaml-modules/fmt/default.nix
index c7fff722399..d136ec092c2 100644
--- a/pkgs/development/ocaml-modules/fmt/default.nix
+++ b/pkgs/development/ocaml-modules/fmt/default.nix
@@ -8,7 +8,8 @@ stdenv.mkDerivation {
sha256 = "1zj9azcxcn6skmb69ykgmi9z8c50yskwg03wqgh87lypgjdcz060";
};
- buildInputs = [ ocaml findlib ocamlbuild topkg cmdliner ];
+ nativeBuildInputs = [ ocaml findlib ocamlbuild ];
+ buildInputs = [ findlib topkg cmdliner ];
propagatedBuildInputs = [ result uchar ];
inherit (topkg) buildPhase installPhase;
diff --git a/pkgs/development/ocaml-modules/jsonm/default.nix b/pkgs/development/ocaml-modules/jsonm/default.nix
index c4a7fa0f7a7..d1f5cabb32d 100644
--- a/pkgs/development/ocaml-modules/jsonm/default.nix
+++ b/pkgs/development/ocaml-modules/jsonm/default.nix
@@ -10,7 +10,8 @@ stdenv.mkDerivation {
sha256 = "1176dcmxb11fnw49b7yysvkjh0kpzx4s48lmdn5psq9vshp5c29w";
};
- buildInputs = [ ocaml findlib ocamlbuild topkg ];
+ buildInputs = [ findlib topkg ];
+ nativeBuildInputs = [ ocaml findlib ocamlbuild ];
propagatedBuildInputs = [ uutf ];
inherit (topkg) buildPhase installPhase;
diff --git a/pkgs/development/ocaml-modules/logs/default.nix b/pkgs/development/ocaml-modules/logs/default.nix
index 15d2bde0ec6..a89f66477fa 100644
--- a/pkgs/development/ocaml-modules/logs/default.nix
+++ b/pkgs/development/ocaml-modules/logs/default.nix
@@ -18,7 +18,8 @@ stdenv.mkDerivation rec {
sha256 = "1lkhr7i44xw4kpfbhgj3rbqy3dv5bfm4kyrbl8a9rfafddcxlwss";
};
- buildInputs = [ ocaml findlib ocamlbuild topkg fmt cmdliner lwt ];
+ nativeBuildInputs = [ ocaml findlib ocamlbuild ];
+ buildInputs = [ findlib topkg fmt cmdliner lwt ];
propagatedBuildInputs = [ result ];
buildPhase = "${topkg.run} build --with-js_of_ocaml false";
diff --git a/pkgs/development/ocaml-modules/magic-mime/default.nix b/pkgs/development/ocaml-modules/magic-mime/default.nix
index 65acbd6cc42..16e37addd45 100644
--- a/pkgs/development/ocaml-modules/magic-mime/default.nix
+++ b/pkgs/development/ocaml-modules/magic-mime/default.nix
@@ -11,7 +11,9 @@ stdenv.mkDerivation {
sha256 = "058d83hmxd5mjccxdm3ydchmhk2lca5jdg82jg0klsigmf4ida6v";
};
- buildInputs = [ ocaml findlib ocamlbuild ];
+ nativeBuildInputs = [ ocaml findlib ocamlbuild ];
+ buildInputs = [ findlib ];
+ configurePlatforms = [];
createFindlibDestdir = true;
diff --git a/pkgs/development/ocaml-modules/mtime/default.nix b/pkgs/development/ocaml-modules/mtime/default.nix
index f86909cc10b..02d6380715b 100644
--- a/pkgs/development/ocaml-modules/mtime/default.nix
+++ b/pkgs/development/ocaml-modules/mtime/default.nix
@@ -23,7 +23,8 @@ stdenv.mkDerivation {
inherit (param) sha256;
};
- buildInputs = [ ocaml findlib ocamlbuild topkg ]
+ nativeBuildInputs = [ ocaml findlib ocamlbuild ];
+ buildInputs = [ findlib topkg ]
++ stdenv.lib.optional jsooSupport js_of_ocaml;
buildPhase = "${topkg.buildPhase} --with-js_of_ocaml ${boolToString jsooSupport}";
diff --git a/pkgs/development/ocaml-modules/nocrypto/default.nix b/pkgs/development/ocaml-modules/nocrypto/default.nix
index 06a87c072b4..bed872ed08d 100644
--- a/pkgs/development/ocaml-modules/nocrypto/default.nix
+++ b/pkgs/development/ocaml-modules/nocrypto/default.nix
@@ -1,11 +1,19 @@
{ stdenv, fetchurl, fetchpatch, ocaml, findlib, ocamlbuild, topkg
, cpuid, ocb-stubblr, sexplib
-, cstruct, zarith, ppx_sexp_conv, ppx_deriving
+, cstruct, zarith, ppx_sexp_conv, ppx_deriving, writeScriptBin
, cstruct-lwt ? null
}:
with stdenv.lib;
-let withLwt = cstruct-lwt != null; in
+let
+ withLwt = cstruct-lwt != null;
+ # the build system will call 'cc' with no way to override
+ # this is wrong when we're cross-compiling, so insert a wrapper
+ cc-wrapper = writeScriptBin "cc" ''
+ set -e
+ $CC "$@"
+ '';
+in
stdenv.mkDerivation rec {
name = "ocaml${ocaml.version}-nocrypto-${version}";
@@ -43,8 +51,9 @@ stdenv.mkDerivation rec {
})
];
- buildInputs = [ ocaml findlib ocamlbuild topkg cpuid ocb-stubblr ];
- propagatedBuildInputs = [ cstruct ppx_deriving ppx_sexp_conv sexplib zarith ] ++ optional withLwt cstruct-lwt;
+ nativeBuildInputs = [ ocaml findlib ocamlbuild cc-wrapper ];
+ buildInputs = [ ocamlbuild findlib topkg cpuid ocb-stubblr ppx_deriving ];
+ propagatedBuildInputs = [ cstruct ppx_sexp_conv sexplib zarith ] ++ optional withLwt cstruct-lwt;
buildPhase = "${topkg.buildPhase} --with-lwt ${boolToString withLwt}";
inherit (topkg) installPhase;
diff --git a/pkgs/development/ocaml-modules/num/default.nix b/pkgs/development/ocaml-modules/num/default.nix
index d46bff5b3d5..022b7af9629 100644
--- a/pkgs/development/ocaml-modules/num/default.nix
+++ b/pkgs/development/ocaml-modules/num/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchFromGitHub, fetchpatch, ocaml, findlib }:
+{ stdenv, lib, fetchFromGitHub, fetchpatch, ocaml, findlib, withStatic ? false }:
stdenv.mkDerivation rec {
version = "1.1";
@@ -14,12 +14,14 @@ stdenv.mkDerivation rec {
url = "https://github.com/ocaml/num/commit/6d4c6d476c061298e6385e8a0864f083194b9307.patch";
sha256 = "18zlvb5n327q8y3c52js5dvyy29ssld1l53jqng8m9w1k24ypi0b";
})
- ];
+ ] ++ lib.optional withStatic ./enable-static.patch;
- buildInputs = [ ocaml findlib ];
+ nativeBuildInputs = [ ocaml findlib ];
+ buildInputs = [ ocaml findlib ];
createFindlibDestdir = true;
+
meta = {
description = "Legacy Num library for arbitrary-precision integer and rational arithmetic";
license = stdenv.lib.licenses.lgpl21;
diff --git a/pkgs/development/ocaml-modules/num/enable-static.patch b/pkgs/development/ocaml-modules/num/enable-static.patch
new file mode 100644
index 00000000000..be3ca197f4e
--- /dev/null
+++ b/pkgs/development/ocaml-modules/num/enable-static.patch
@@ -0,0 +1,12 @@
+diff -u a/src/Makefile b/src/Makefile
+--- a/src/Makefile
++++ b/src/Makefile
+@@ -45,7 +45,7 @@
+ endif
+
+ libnums.$(A): $(COBJS)
+- $(OCAMLMKLIB) -oc nums $(COBJS)
++ $(OCAMLMKLIB) -custom -oc nums $(COBJS)
+
+ nums.cma: $(CMOS)
+ $(OCAMLMKLIB) -o nums -oc nums -linkall $(CMOS)
diff --git a/pkgs/development/ocaml-modules/ocamlgraph/default.nix b/pkgs/development/ocaml-modules/ocamlgraph/default.nix
index 887dce58689..a39e72d3880 100644
--- a/pkgs/development/ocaml-modules/ocamlgraph/default.nix
+++ b/pkgs/development/ocaml-modules/ocamlgraph/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, ocaml, findlib, lablgtk}:
+{stdenv, fetchurl, ocaml, findlib, lablgtk ? null}:
stdenv.mkDerivation rec {
pname = "ocamlgraph";
@@ -16,7 +16,8 @@ stdenv.mkDerivation rec {
postPatch = ''
sed -i 's@$(DESTDIR)$(OCAMLLIB)/ocamlgraph@$(DESTDIR)/lib/ocaml/${ocaml.version}/site-lib/ocamlgraph@' Makefile.in
sed -i 's@OCAMLFINDDEST := -destdir $(DESTDIR)@@' Makefile.in
- sed -i 's@+lablgtk2@${lablgtk}/lib/ocaml/${ocaml.version}/site-lib/lablgtk2 -I ${lablgtk}/lib/ocaml/${ocaml.version}/site-lib/stublibs@' configure Makefile.in editor/Makefile
+ ${stdenv.lib.optionalString (lablgtk != null)
+ "sed -i 's@+lablgtk2@${lablgtk}/lib/ocaml/${ocaml.version}/site-lib/lablgtk2 -I ${lablgtk}/lib/ocaml/${ocaml.version}/site-lib/stublibs@' configure Makefile.in editor/Makefile"}
'';
createFindlibDestdir = true;
diff --git a/pkgs/development/ocaml-modules/opam-file-format/default.nix b/pkgs/development/ocaml-modules/opam-file-format/default.nix
index 4d308dc78b5..0ca332a2a06 100644
--- a/pkgs/development/ocaml-modules/opam-file-format/default.nix
+++ b/pkgs/development/ocaml-modules/opam-file-format/default.nix
@@ -15,6 +15,8 @@ stdenv.mkDerivation rec {
installFlags = [ "LIBDIR=$(OCAMLFIND_DESTDIR)" ];
+ patches = [ ./optional-static.patch ];
+
meta = {
description = "Parser and printer for the opam file syntax";
license = stdenv.lib.licenses.lgpl21;
diff --git a/pkgs/development/ocaml-modules/opam-file-format/optional-static.patch b/pkgs/development/ocaml-modules/opam-file-format/optional-static.patch
new file mode 100644
index 00000000000..5501fdd0c6c
--- /dev/null
+++ b/pkgs/development/ocaml-modules/opam-file-format/optional-static.patch
@@ -0,0 +1,13 @@
+diff -u a/Makefile b/Makefile
+--- a/Makefile
++++ b/Makefile
+@@ -1,1 +1,5 @@
+-TARGETS = opam-file-format.cma opam-file-format.cmxa opam-file-format.cmxs
++TARGETS = opam-file-format.cma opam-file-format.cmxa
++
++ifeq "$(NATDYNLINK)" "true"
++TARGETS = $(TARGETS) opam-file-format.cmxs
++endif
+
+all: $(TARGETS)
+
diff --git a/pkgs/development/ocaml-modules/ounit/default.nix b/pkgs/development/ocaml-modules/ounit/default.nix
index 758bb072090..6f4536f2e8b 100644
--- a/pkgs/development/ocaml-modules/ounit/default.nix
+++ b/pkgs/development/ocaml-modules/ounit/default.nix
@@ -14,7 +14,9 @@ stdenv.mkDerivation {
sha256 = "0hbd2sqdz75lv5ax82yhsfdk1dlcvq12xpys6n85ysmrl0c3d3lk";
});
- buildInputs = [ ocaml findlib ocamlbuild ];
+ nativeBuildInputs = [ ocaml findlib ocamlbuild ];
+ buildInputs = [ findlib ];
+ configurePlatforms = [];
dontAddPrefix = true;
diff --git a/pkgs/development/ocaml-modules/ppx_tools/default.nix b/pkgs/development/ocaml-modules/ppx_tools/default.nix
index fd2b67225e6..984906342bc 100644
--- a/pkgs/development/ocaml-modules/ppx_tools/default.nix
+++ b/pkgs/development/ocaml-modules/ppx_tools/default.nix
@@ -37,6 +37,7 @@ in
inherit (param) sha256;
};
+ nativeBuildInputs = [ ocaml findlib ];
buildInputs = [ ocaml findlib ];
createFindlibDestdir = true;
diff --git a/pkgs/development/ocaml-modules/ptime/default.nix b/pkgs/development/ocaml-modules/ptime/default.nix
index f21f05eeae5..de3d940b3bb 100644
--- a/pkgs/development/ocaml-modules/ptime/default.nix
+++ b/pkgs/development/ocaml-modules/ptime/default.nix
@@ -9,7 +9,8 @@ stdenv.mkDerivation rec {
sha256 = "1fxq57xy1ajzfdnvv5zfm7ap2nf49znw5f9gbi4kb9vds942ij27";
};
- buildInputs = [ ocaml findlib ocamlbuild topkg js_of_ocaml ];
+ nativeBuildInputs = [ ocaml findlib ocamlbuild ];
+ buildInputs = [ findlib topkg js_of_ocaml ];
propagatedBuildInputs = [ result ];
diff --git a/pkgs/development/ocaml-modules/tls/default.nix b/pkgs/development/ocaml-modules/tls/default.nix
index b1a178128ad..80d9933f8b6 100644
--- a/pkgs/development/ocaml-modules/tls/default.nix
+++ b/pkgs/development/ocaml-modules/tls/default.nix
@@ -21,7 +21,8 @@ stdenv.mkDerivation rec {
sha256 = "02wv4lia583imn3sfci4nqv6ac5nzig5j3yfdnlqa0q8bp9rfc6g";
};
- buildInputs = [ ocaml ocamlbuild findlib topkg ppx_sexp_conv ppx_cstruct ]
+ nativeBuildInputs = [ ocaml ocamlbuild findlib ];
+ buildInputs = [ findlib topkg ppx_sexp_conv ppx_cstruct ]
++ optionals doCheck [ ounit cstruct-unix ];
propagatedBuildInputs = [ cstruct-sexp nocrypto result x509 ] ++
optional withLwt lwt;
diff --git a/pkgs/development/ocaml-modules/topkg/default.nix b/pkgs/development/ocaml-modules/topkg/default.nix
index a3e718d5329..edbbec3dcb3 100644
--- a/pkgs/development/ocaml-modules/topkg/default.nix
+++ b/pkgs/development/ocaml-modules/topkg/default.nix
@@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
sha256 = "1df61vw6v5bg2mys045682ggv058yqkqb67w7r2gz85crs04d5fw";
};
- buildInputs = [ ocaml findlib ocamlbuild ];
+ nativeBuildInputs = [ ocaml findlib ocamlbuild ];
propagatedBuildInputs = [ result ];
buildPhase = "${run} build";
diff --git a/pkgs/development/ocaml-modules/uchar/default.nix b/pkgs/development/ocaml-modules/uchar/default.nix
index c943d3ce35a..2140871021d 100644
--- a/pkgs/development/ocaml-modules/uchar/default.nix
+++ b/pkgs/development/ocaml-modules/uchar/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opaline }:
+{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opaline, withShared ? true }:
stdenv.mkDerivation {
name = "ocaml${ocaml.version}-uchar-0.0.2";
@@ -8,9 +8,11 @@ stdenv.mkDerivation {
sha256 = "1w2saw7zanf9m9ffvz2lvcxvlm118pws2x1wym526xmydhqpyfa7";
};
- buildInputs = [ ocaml ocamlbuild findlib opaline ];
- buildPhase = "ocaml pkg/build.ml native=true native-dynlink=true";
+ nativeBuildInputs = [ ocaml ocamlbuild findlib opaline ];
+ buildInputs = [ findlib ocaml ocamlbuild opaline ];
+ buildPhase = "ocaml pkg/build.ml native=true native-dynlink=${if withShared then "true" else "false"}";
installPhase = "opaline -libdir $OCAMLFIND_DESTDIR";
+ configurePlatforms = [];
meta = {
description = "Compatibility library for OCaml’s Uchar module";
diff --git a/pkgs/development/ocaml-modules/uuidm/default.nix b/pkgs/development/ocaml-modules/uuidm/default.nix
index 079e810bfdc..497b2df88b1 100644
--- a/pkgs/development/ocaml-modules/uuidm/default.nix
+++ b/pkgs/development/ocaml-modules/uuidm/default.nix
@@ -8,7 +8,9 @@ stdenv.mkDerivation rec {
sha256 = "1ivxb3hxn9bk62rmixx6px4fvn52s4yr1bpla7rgkcn8981v45r8";
};
- buildInputs = [ ocaml findlib ocamlbuild topkg cmdliner ];
+ nativeBuildInputs = [ ocaml findlib ocamlbuild ];
+ configurePlatforms = [];
+ buildInputs = [ topkg cmdliner ];
inherit (topkg) buildPhase installPhase;
diff --git a/pkgs/development/ocaml-modules/uutf/default.nix b/pkgs/development/ocaml-modules/uutf/default.nix
index 863a4cbb840..f289781b422 100644
--- a/pkgs/development/ocaml-modules/uutf/default.nix
+++ b/pkgs/development/ocaml-modules/uutf/default.nix
@@ -13,7 +13,8 @@ stdenv.mkDerivation rec {
sha256 = "1nx1rly3qj23jzn9yk3x6fwqimcxjd84kv5859vvhdg56psq26p6";
};
- buildInputs = [ ocaml findlib ocamlbuild topkg cmdliner ];
+ nativeBuildInputs = [ ocaml ocamlbuild findlib ];
+ buildInputs = [ findlib topkg cmdliner ];
propagatedBuildInputs = [ uchar ];
inherit (topkg) buildPhase installPhase;
diff --git a/pkgs/development/ocaml-modules/yojson/default.nix b/pkgs/development/ocaml-modules/yojson/default.nix
index 84d5e488b25..24942da0072 100644
--- a/pkgs/development/ocaml-modules/yojson/default.nix
+++ b/pkgs/development/ocaml-modules/yojson/default.nix
@@ -6,7 +6,7 @@ let
version = "1.7.0";
url = "https://github.com/ocaml-community/yojson/releases/download/${version}/yojson-${version}.tbz";
sha256 = "08llz96if8bcgnaishf18si76cv11zbkni0aldb54k3cn7ipiqvd";
- buildInputs = [ dune ];
+ nativeBuildInputs = [ dune ];
extra = { inherit (dune) installPhase; };
} else rec {
version = "1.2.3";
@@ -29,9 +29,10 @@ stdenv.mkDerivation ({
inherit (param) url sha256;
};
- buildInputs = [ ocaml findlib ] ++ (param.buildInputs or []);
-
- propagatedBuildInputs = [ cppo easy-format biniou ];
+ nativeBuildInputs = [ ocaml findlib ] ++ (param.nativeBuildInputs or []);
+ propagatedNativeBuildInputs = [ cppo ];
+ propagatedBuildInputs = [ easy-format biniou ];
+ configurePlatforms = [];
meta = with stdenv.lib; {
description = "An optimized parsing and printing library for the JSON format";
diff --git a/pkgs/development/ocaml-modules/zarith/default.nix b/pkgs/development/ocaml-modules/zarith/default.nix
index c97078c62ed..f0cb5a59485 100644
--- a/pkgs/development/ocaml-modules/zarith/default.nix
+++ b/pkgs/development/ocaml-modules/zarith/default.nix
@@ -6,9 +6,9 @@
let source =
if stdenv.lib.versionAtLeast ocaml.version "4.02"
then {
- version = "1.9.1";
- url = https://github.com/ocaml/Zarith/archive/release-1.9.1.tar.gz;
- sha256 = "0pfa271476dic5pvn6kxz3dfswxs6kqm2cxmhdx5xq2ayca05gj9";
+ version = "1.9";
+ url = https://github.com/ocaml/Zarith/archive/release-1.9.tar.gz;
+ sha256 = "1xrqcaj5gp52xp4ybpnblw8ciwlgrr0zi7rg7hnk8x83isjkpmwx";
} else {
version = "1.3";
url = http://forge.ocamlcore.org/frs/download.php/1471/zarith-1.3.tgz;
@@ -26,9 +26,8 @@ stdenv.mkDerivation rec {
propagatedBuildInputs = [ gmp ];
patchPhase = "patchShebangs ./z_pp.pl";
- configurePhase = ''
- ./configure -installdir $out/lib/ocaml/${ocaml.version}/site-lib
- '';
+ dontAddPrefix = true;
+ configureFlags = [ "-installdir ${placeholder "out"}/lib/ocaml/${ocaml.version}/site-lib" ];
preInstall = "mkdir -p $out/lib/ocaml/${ocaml.version}/site-lib/stublibs";
diff --git a/pkgs/development/python-modules/Cython/default.nix b/pkgs/development/python-modules/Cython/default.nix
index 4c491f31465..aff4e0b62b3 100644
--- a/pkgs/development/python-modules/Cython/default.nix
+++ b/pkgs/development/python-modules/Cython/default.nix
@@ -26,11 +26,11 @@ let
in buildPythonPackage rec {
pname = "Cython";
- version = "0.29.15";
+ version = "0.29.14";
src = fetchPypi {
inherit pname version;
- sha256 = "050lh336791yl76krn44zm2dz00mlhpb26bk9fq9wcfh0f3vpmp4";
+ sha256 = "e4d6bb8703d0319eb04b7319b12ea41580df44fd84d83ccda13ea463c6801414";
};
nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/azure-loganalytics/default.nix b/pkgs/development/python-modules/azure-loganalytics/default.nix
index ab512480f0c..4bfda9a9342 100644
--- a/pkgs/development/python-modules/azure-loganalytics/default.nix
+++ b/pkgs/development/python-modules/azure-loganalytics/default.nix
@@ -1,6 +1,8 @@
{ lib
, buildPythonPackage
, fetchPypi
+, python
+, isPy3k
, msrest
, azure-common
}:
@@ -20,6 +22,10 @@ buildPythonPackage rec {
azure-common
];
+ postInstall = lib.optionalString isPy3k ''
+ rm -rf $out/${python.sitePackages}/azure/__init__.py
+ '';
+
# has no tests
doCheck = false;
@@ -27,6 +33,6 @@ buildPythonPackage rec {
description = "This is the Microsoft Azure Log Analytics Client Library";
homepage = "https://github.com/Azure/azure-sdk-for-python";
license = licenses.mit;
- maintainers = with maintainers; [ mwilsoninsight ];
+ maintainers = with maintainers; [ mwilsoninsight jonringer ];
};
}
diff --git a/pkgs/development/python-modules/azure-mgmt-appconfiguration/default.nix b/pkgs/development/python-modules/azure-mgmt-appconfiguration/default.nix
index 271fb2e6aef..1cacd988157 100644
--- a/pkgs/development/python-modules/azure-mgmt-appconfiguration/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-appconfiguration/default.nix
@@ -5,13 +5,13 @@
}:
buildPythonPackage rec {
- version = "0.1.0";
+ version = "0.3.0";
pname = "azure-mgmt-appconfiguration";
disabled = isPy27;
src = fetchPypi {
inherit pname version;
- sha256 = "0z2f0rbv7drdxihny479bv80bnhgvx8gb2pr0jvbaslll6d6rxig";
+ sha256 = "1igl3ikdwcz7d2zcja5nm2qjysjh53vgwzcc96lylypmq6z4aq1s";
extension = "zip";
};
diff --git a/pkgs/development/python-modules/azure-mgmt-compute/default.nix b/pkgs/development/python-modules/azure-mgmt-compute/default.nix
index c13676dc672..afe57ee6204 100644
--- a/pkgs/development/python-modules/azure-mgmt-compute/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-compute/default.nix
@@ -7,13 +7,13 @@
}:
buildPythonPackage rec {
- version = "9.0.0";
+ version = "10.0.0";
pname = "azure-mgmt-compute";
src = fetchPypi {
inherit pname version;
extension = "zip";
- sha256 = "06795ccb7377eaa3864819a1c63b9bfe9957a58814c65025aef89e9cd81190fc";
+ sha256 = "1s3bx6knxw5dxycp43yimvgrh0i19drzd09asglcwz2x5mr3bpyg";
};
postInstall = if isPy3k then "" else ''
diff --git a/pkgs/development/python-modules/azure-mgmt-imagebuilder/default.nix b/pkgs/development/python-modules/azure-mgmt-imagebuilder/default.nix
index bb6e06aa68b..f5b04c36b0d 100644
--- a/pkgs/development/python-modules/azure-mgmt-imagebuilder/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-imagebuilder/default.nix
@@ -5,13 +5,13 @@
}:
buildPythonPackage rec {
- version = "0.2.1";
+ version = "0.3.0";
pname = "azure-mgmt-imagebuilder";
disabled = isPy27;
src = fetchPypi {
inherit pname version;
- sha256 = "0mwlvy4x5nr3hsz7wdpdhpzwarzzwz4225bfpd68hr0pcjgzspky";
+ sha256 = "0r4sxr3pbcci5qif1ip1lrix3cryj0b3asqch3zds4q705jiakc4";
extension = "zip";
};
diff --git a/pkgs/development/python-modules/azure-mgmt-kusto/default.nix b/pkgs/development/python-modules/azure-mgmt-kusto/default.nix
index fe84fc01dec..53aeff46c58 100644
--- a/pkgs/development/python-modules/azure-mgmt-kusto/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-kusto/default.nix
@@ -5,13 +5,13 @@
}:
buildPythonPackage rec {
- version = "0.4.0";
+ version = "0.5.0";
pname = "azure-mgmt-kusto";
disabled = isPy27;
src = fetchPypi {
inherit pname version;
- sha256 = "1sx8f98206wccj0mbmb75c4wyhf57g3pnkhl9wn70lqzi9n4mk0b";
+ sha256 = "0r6j3yp7ys0zgszqdjm6y90nigsapni4xhfpfgyk5c5qbgdpl93w";
extension = "zip";
};
diff --git a/pkgs/development/python-modules/azure-mgmt-monitor/default.nix b/pkgs/development/python-modules/azure-mgmt-monitor/default.nix
index 23e6bcf8cb4..252760950e5 100644
--- a/pkgs/development/python-modules/azure-mgmt-monitor/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-monitor/default.nix
@@ -28,8 +28,8 @@ buildPythonPackage rec {
];
postInstall = lib.optionalString isPy3k ''
- rm $out/${python.sitePackages}/azure/__init__.py
- rm $out/${python.sitePackages}/azure/mgmt/__init__.py
+ rm -rf $out/${python.sitePackages}/azure/__init__.py
+ rm -rf $out/${python.sitePackages}/azure/mgmt/__init__.py
'';
# has no tests
diff --git a/pkgs/development/python-modules/azure-mgmt-sqlvirtualmachine/default.nix b/pkgs/development/python-modules/azure-mgmt-sqlvirtualmachine/default.nix
index 6704df2d21a..a34ebae2b81 100644
--- a/pkgs/development/python-modules/azure-mgmt-sqlvirtualmachine/default.nix
+++ b/pkgs/development/python-modules/azure-mgmt-sqlvirtualmachine/default.nix
@@ -5,13 +5,13 @@
}:
buildPythonPackage rec {
- version = "0.4.0";
+ version = "0.5.0";
pname = "azure-mgmt-sqlvirtualmachine";
disabled = isPy27;
src = fetchPypi {
inherit pname version;
- sha256 = "1jxmikjvyxkwr8c9kn6xw8gvj9pajlk7y8111rq8fgkivwjq8wcm";
+ sha256 = "1b9am8raa17hxnz7d5pk2ix0309wsnhnchq1mi22icd728sl5adm";
extension = "zip";
};
diff --git a/pkgs/development/python-modules/curio/default.nix b/pkgs/development/python-modules/curio/default.nix
index b60025a91b0..31dc8327fc4 100644
--- a/pkgs/development/python-modules/curio/default.nix
+++ b/pkgs/development/python-modules/curio/default.nix
@@ -19,6 +19,8 @@ buildPythonPackage rec {
checkInputs = [ pytest sphinx ];
+ __darwinAllowLocalNetworking = true;
+
# test_aside_basic times out,
# test_aside_cancel fails because modifies PYTHONPATH and cant find pytest
checkPhase = ''
diff --git a/pkgs/development/python-modules/deprecated/default.nix b/pkgs/development/python-modules/deprecated/default.nix
index 1d4461fea19..2af9d020c95 100644
--- a/pkgs/development/python-modules/deprecated/default.nix
+++ b/pkgs/development/python-modules/deprecated/default.nix
@@ -10,11 +10,6 @@ buildPythonPackage rec {
sha256 = "408038ab5fdeca67554e8f6742d1521cd3cd0ee0ff9d47f29318a4f4da31c308";
};
- postPatch = ''
- # odd broken tests, don't appear in GitHub repo
- rm tests/demo_classic_usage*.py
- '';
-
propagatedBuildInputs = [ wrapt ];
checkInputs = [ pytest ];
meta = with stdenv.lib; {
diff --git a/pkgs/development/python-modules/dotnetcore2/default.nix b/pkgs/development/python-modules/dotnetcore2/default.nix
index 5432bc2888e..4d3edf0906a 100644
--- a/pkgs/development/python-modules/dotnetcore2/default.nix
+++ b/pkgs/development/python-modules/dotnetcore2/default.nix
@@ -15,7 +15,7 @@ buildPythonPackage rec {
inherit pname version format;
python = "py3";
platform = "manylinux1_x86_64";
- sha256 = "a335fb0abdaaeee7ba128b81b5350adfc5d2b2adf6a64cbc4d1a3b7cdf8560da";
+ sha256 = "0qhp94bjz4icz2f0fnhgck875chiqzy4lvsp6lwhj5jd0zsv2bb3";
};
nativeBuildInputs = [ unzip ];
diff --git a/pkgs/development/python-modules/fido2/default.nix b/pkgs/development/python-modules/fido2/default.nix
index e6c9021bdf1..96019f61cac 100644
--- a/pkgs/development/python-modules/fido2/default.nix
+++ b/pkgs/development/python-modules/fido2/default.nix
@@ -1,15 +1,19 @@
-{ lib, buildPythonPackage, fetchPypi
-, six, cryptography
-, mock, pyfakefs
+{ lib
+, buildPythonPackage
+, fetchPypi
+, six
+, cryptography
+, mock
+, pyfakefs
}:
buildPythonPackage rec {
pname = "fido2";
- version = "0.7.3";
+ version = "0.8.1";
src = fetchPypi {
inherit pname version;
- sha256 = "8b592ec0e51348f29636706fe3266423a0e41c35c9df63a259a91488450c1285";
+ sha256 = "1hzprnd407g2xh9kyv8j8pq949hwr1snmg3fp65pqfbghzv6i424";
};
propagatedBuildInputs = [ six cryptography ];
@@ -18,7 +22,8 @@ buildPythonPackage rec {
meta = with lib; {
description = "Provides library functionality for FIDO 2.0, including communication with a device over USB.";
- homepage = https://github.com/Yubico/python-fido2;
- license = licenses.mpl20;
+ homepage = "https://github.com/Yubico/python-fido2";
+ license = licenses.bsd2;
+ maintainers = with maintainers; [ prusnak ];
};
}
diff --git a/pkgs/development/python-modules/gpapi/default.nix b/pkgs/development/python-modules/gpapi/default.nix
index 13ba4f934e8..7bf8b13cd0f 100644
--- a/pkgs/development/python-modules/gpapi/default.nix
+++ b/pkgs/development/python-modules/gpapi/default.nix
@@ -1,12 +1,12 @@
{ stdenv, buildPythonPackage, fetchPypi, requests, protobuf, pycryptodome }:
buildPythonPackage rec {
- version = "0.4.3";
+ version = "0.4.4";
pname = "gpapi";
src = fetchPypi {
inherit version pname;
- sha256 = "9fd1351eb29c4da92d3a0ed2cd4e3c1634ea16afddbca133f6acc54766d61b02";
+ sha256 = "0ampvsv97r3hy1cakif4kmyk1ynf3scbvh4fbk02x7xrxn4kl38w";
};
propagatedBuildInputs = [ requests protobuf pycryptodome ];
diff --git a/pkgs/development/python-modules/nose-exclude/default.nix b/pkgs/development/python-modules/nose-exclude/default.nix
index 7eb6b6cc047..7f679e545e7 100644
--- a/pkgs/development/python-modules/nose-exclude/default.nix
+++ b/pkgs/development/python-modules/nose-exclude/default.nix
@@ -1,4 +1,5 @@
-{ lib
+{ stdenv
+, lib
, buildPythonPackage
, fetchPypi
, nose
@@ -15,10 +16,13 @@ buildPythonPackage rec {
propagatedBuildInputs = [ nose ];
+ # "OSError: AF_UNIX path too long" for darwin
+ doCheck = !stdenv.isDarwin;
+
meta = {
license = lib.licenses.lgpl21;
description = "Exclude specific directories from nosetests runs";
homepage = https://github.com/kgrandis/nose-exclude;
maintainers = with lib.maintainers; [ fridh ];
};
-}
\ No newline at end of file
+}
diff --git a/pkgs/development/python-modules/pyfxa/default.nix b/pkgs/development/python-modules/pyfxa/default.nix
index be6502893a3..4bde8e9997a 100644
--- a/pkgs/development/python-modules/pyfxa/default.nix
+++ b/pkgs/development/python-modules/pyfxa/default.nix
@@ -1,6 +1,6 @@
{ lib, buildPythonPackage, fetchPypi
, requests, cryptography, pybrowserid, hawkauthlib, six
-, grequests, mock, responses, unittest2 }:
+, grequests, mock, responses, pytest }:
buildPythonPackage rec {
pname = "PyFxA";
@@ -21,9 +21,13 @@ buildPythonPackage rec {
];
checkInputs = [
- grequests mock responses unittest2
+ grequests mock responses pytest
];
+ checkPhase = ''
+ pytest
+ '';
+
meta = with lib; {
description = "Firefox Accounts client library for Python";
homepage = https://github.com/mozilla/PyFxA;
diff --git a/pkgs/development/python-modules/spectral-cube/default.nix b/pkgs/development/python-modules/spectral-cube/default.nix
index e12f00cf7a7..39edcf9b8f5 100644
--- a/pkgs/development/python-modules/spectral-cube/default.nix
+++ b/pkgs/development/python-modules/spectral-cube/default.nix
@@ -1,5 +1,5 @@
{ lib
-, fetchPypi
+, fetchFromGitHub
, buildPythonPackage
, astropy
, radio_beam
@@ -10,11 +10,14 @@
buildPythonPackage rec {
pname = "spectral-cube";
- version = "0.4.4";
+ version = "0.4.5";
- src = fetchPypi {
- inherit pname version;
- sha256 = "9051ede204b1e25b6358b5e0e573b624ec0e208c24eb03a7ed4925b745c93b5e";
+ # Fetch from GitHub instead of PyPi, as 0.4.5 isn't available in PyPi
+ src = fetchFromGitHub {
+ owner = "radio-astro-tools";
+ repo = pname;
+ rev = "v${version}";
+ sha256 = "1xc1m6vpl0bm600fx9vypa7zcvwg7yvhgn0w89y6v9d1vl0qcs7z";
};
propagatedBuildInputs = [ astropy radio_beam ];
@@ -40,8 +43,6 @@ buildPythonPackage rec {
license = lib.licenses.bsd3;
platforms = lib.platforms.all;
maintainers = with lib.maintainers; [ smaret ];
- broken = true;
};
}
-
diff --git a/pkgs/development/tools/analysis/flow/default.nix b/pkgs/development/tools/analysis/flow/default.nix
index 3fa2dabdcb0..2150ca004c2 100644
--- a/pkgs/development/tools/analysis/flow/default.nix
+++ b/pkgs/development/tools/analysis/flow/default.nix
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "flow";
- version = "0.112.0";
+ version = "0.113.0";
src = fetchFromGitHub {
owner = "facebook";
repo = "flow";
rev = "refs/tags/v${version}";
- sha256 = "1l8aahvlj9hk93snvrqm7r0mxj5iw244q72s6wallsqm7j4g967h";
+ sha256 = "1z7zy2ma1rmx2jjrsrnlrv2j5ff4zlzzlqvlmv7fc7dds3wlz6ia";
};
installPhase = ''
diff --git a/pkgs/development/tools/lazygit/default.nix b/pkgs/development/tools/lazygit/default.nix
index f91938fb62e..c98a0a79705 100644
--- a/pkgs/development/tools/lazygit/default.nix
+++ b/pkgs/development/tools/lazygit/default.nix
@@ -2,7 +2,7 @@
buildGoPackage rec {
pname = "lazygit";
- version = "0.8";
+ version = "0.11.3";
goPackagePath = "github.com/jesseduffield/lazygit";
@@ -12,13 +12,13 @@ buildGoPackage rec {
owner = "jesseduffield";
repo = pname;
rev = "v${version}";
- sha256 = "0zynw5gr96a59x1qshzhhvld883ndf1plnw6l9dbhmff0wcfv6l1";
+ sha256 = "0v765f93hkq94bmzfwkkb9ndbfka415sxyi01679fg860746rl6l";
};
meta = with stdenv.lib; {
description = "Simple terminal UI for git commands";
homepage = "https://github.com/jesseduffield/lazygit";
license = licenses.mit;
- maintainers = with maintainers; [ fpletz ];
+ maintainers = with maintainers; [ fpletz equirosa ];
};
}
diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/3.0.nix b/pkgs/development/tools/ocaml/js_of_ocaml/3.0.nix
index d1ff9eee817..9ca6ca67421 100644
--- a/pkgs/development/tools/ocaml/js_of_ocaml/3.0.nix
+++ b/pkgs/development/tools/ocaml/js_of_ocaml/3.0.nix
@@ -3,11 +3,12 @@
}:
stdenv.mkDerivation {
- pname = "js_of_ocaml";
+ pname = "js_of_ocaml";
- inherit (js_of_ocaml-compiler) version src installPhase meta;
+ inherit (js_of_ocaml-compiler) version src installPhase meta;
- buildInputs = [ ocaml findlib dune ocaml-migrate-parsetree ppx_tools_versioned ];
+ buildInputs = [ findlib ocaml-migrate-parsetree ppx_tools_versioned ];
+ nativeBuildInputs = [ ocaml findlib dune ];
postPatch = "patchShebangs lib/generate_stubs.sh";
diff --git a/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix b/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix
index c449c0f9002..801e4142780 100644
--- a/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix
+++ b/pkgs/development/tools/ocaml/js_of_ocaml/compiler.nix
@@ -1,5 +1,5 @@
{ lib, fetchFromGitHub, buildDunePackage
-, cmdliner, cppo, yojson
+, ocaml, findlib, cmdliner, dune, cppo, yojson
}:
buildDunePackage rec {
@@ -13,8 +13,10 @@ buildDunePackage rec {
sha256 = "0c537say0f3197zn8d83nrihabrxyn28xc6d7c9c3l0vvrv6qvfj";
};
- buildInputs = [ cmdliner cppo ];
+ nativeBuildInputs = [ ocaml findlib dune cppo ];
+ buildInputs = [ cmdliner ];
+ configurePlatforms = [];
propagatedBuildInputs = [ yojson ];
meta = {
diff --git a/pkgs/development/tools/rubocop/Gemfile.lock b/pkgs/development/tools/rubocop/Gemfile.lock
index 7c523c3ea15..9d166f0fad5 100644
--- a/pkgs/development/tools/rubocop/Gemfile.lock
+++ b/pkgs/development/tools/rubocop/Gemfile.lock
@@ -2,12 +2,12 @@ GEM
remote: https://rubygems.org/
specs:
ast (2.4.0)
- jaro_winkler (1.5.3)
- parallel (1.18.0)
+ jaro_winkler (1.5.4)
+ parallel (1.19.1)
parser (2.6.5.0)
ast (~> 2.4.0)
rainbow (3.0.0)
- rubocop (0.76.0)
+ rubocop (0.77.0)
jaro_winkler (~> 1.5.1)
parallel (~> 1.10)
parser (>= 2.6)
diff --git a/pkgs/development/tools/rubocop/gemset.nix b/pkgs/development/tools/rubocop/gemset.nix
index 5defb56109f..d7e1b9328dc 100644
--- a/pkgs/development/tools/rubocop/gemset.nix
+++ b/pkgs/development/tools/rubocop/gemset.nix
@@ -14,20 +14,20 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "1930v0chc1q4fr7hn0y1j34mw0v032a8kh0by4d4sbz8ksy056kf";
+ sha256 = "1y8l6k34svmdyqxya3iahpwbpvmn3fswhwsvrz0nk1wyb8yfihsh";
type = "gem";
};
- version = "1.5.3";
+ version = "1.5.4";
};
parallel = {
groups = ["default"];
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "091p5zrzzyg3fg48jhdz9lzjf2r9r3akra2cd46yd4nza3xgxshz";
+ sha256 = "12jijkap4akzdv11lm08dglsc8jmc87xcgq6947i1s3qb69f4zn2";
type = "gem";
};
- version = "1.18.0";
+ version = "1.19.1";
};
parser = {
dependencies = ["ast"];
@@ -56,10 +56,10 @@
platforms = [];
source = {
remotes = ["https://rubygems.org"];
- sha256 = "07x51ixlx76y194xsszh5lbkaqakz44ykbrjxg3qaggbs18790q0";
+ sha256 = "0m88b1bgbhmmbdnz2xv6n0il0j4q5qm9jbc0vf1zsaxmxqp06nx9";
type = "gem";
};
- version = "0.76.0";
+ version = "0.77.0";
};
ruby-progressbar = {
groups = ["default"];
diff --git a/pkgs/os-specific/linux/cpupower/default.nix b/pkgs/os-specific/linux/cpupower/default.nix
index 1b307da8cb8..601810f2600 100644
--- a/pkgs/os-specific/linux/cpupower/default.nix
+++ b/pkgs/os-specific/linux/cpupower/default.nix
@@ -14,7 +14,11 @@ stdenv.mkDerivation {
sed -i 's,/usr/bin/install,${buildPackages.coreutils}/bin/install,' Makefile
'';
- makeFlags = [ "CROSS=${stdenv.cc.targetPrefix}" ];
+ makeFlags = [
+ "CROSS=${stdenv.cc.targetPrefix}"
+ "CC=${stdenv.cc.targetPrefix}cc"
+ "LD=${stdenv.cc.targetPrefix}cc"
+ ];
installFlags = stdenv.lib.mapAttrsToList
(n: v: "${n}dir=${placeholder "out"}/${v}") {
diff --git a/pkgs/os-specific/linux/kernel-headers/default.nix b/pkgs/os-specific/linux/kernel-headers/default.nix
index 1699324546d..fb2b9068921 100644
--- a/pkgs/os-specific/linux/kernel-headers/default.nix
+++ b/pkgs/os-specific/linux/kernel-headers/default.nix
@@ -58,7 +58,7 @@ let
+ '' mkdir -p $out/include/config
echo "${version}-default" > $out/include/config/kernel.release
''
- # These oddly named file records teh `SHELL` passed, which causes bootstrap
+ # These oddly named file records the `SHELL` passed, which causes bootstrap
# tools run-time dependency.
+ ''
find "$out" -name '..install.cmd' -print0 | xargs -0 rm
diff --git a/pkgs/os-specific/linux/kmod/default.nix b/pkgs/os-specific/linux/kmod/default.nix
index 433506e5c39..052ab3061c1 100644
--- a/pkgs/os-specific/linux/kmod/default.nix
+++ b/pkgs/os-specific/linux/kmod/default.nix
@@ -1,5 +1,6 @@
{ stdenv, lib, fetchurl, autoreconfHook, pkgconfig
-, libxslt, xz, elf-header }:
+, libxslt, xz, elf-header
+, withStatic ? false }:
let
systems = [ "/run/current-system/kernel-modules" "/run/booted-system/kernel-modules" "" ];
@@ -21,10 +22,11 @@ in stdenv.mkDerivation rec {
"--sysconfdir=/etc"
"--with-xz"
"--with-modulesdirs=${modulesDirs}"
- ];
+ ] ++ lib.optional withStatic "--enable-static";
patches = [ ./module-dir.patch ]
- ++ lib.optional stdenv.isDarwin ./darwin.patch;
+ ++ lib.optional stdenv.isDarwin ./darwin.patch
+ ++ lib.optional withStatic ./enable-static.patch;
postInstall = ''
for prog in rmmod insmod lsmod modinfo modprobe depmod; do
diff --git a/pkgs/os-specific/linux/kmod/enable-static.patch b/pkgs/os-specific/linux/kmod/enable-static.patch
new file mode 100644
index 00000000000..8308c655792
--- /dev/null
+++ b/pkgs/os-specific/linux/kmod/enable-static.patch
@@ -0,0 +1,12 @@
+diff --git a/configure.ac b/configure.ac
+index ee72283..b42c42a 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -19,7 +19,6 @@ AM_SILENT_RULES([yes])
+ LT_INIT([disable-static pic-only])
+ DOLT
+
+-AS_IF([test "x$enable_static" = "xyes"], [AC_MSG_ERROR([--enable-static is not supported by kmod])])
+ AS_IF([test "x$enable_largefile" = "xno"], [AC_MSG_ERROR([--disable-largefile is not supported by kmod])])
+
+ #####################################################################
diff --git a/pkgs/servers/amqp/qpid-cpp/default.nix b/pkgs/servers/amqp/qpid-cpp/default.nix
index c63b234031b..6d2bf10cd91 100644
--- a/pkgs/servers/amqp/qpid-cpp/default.nix
+++ b/pkgs/servers/amqp/qpid-cpp/default.nix
@@ -2,11 +2,11 @@
let
name = "qpid-cpp-${version}";
- version = "1.37.0";
+ version = "1.38.0";
src = fetchurl {
url = "mirror://apache/qpid/cpp/${version}/${name}.tar.gz";
- sha256 = "1s4hyi867i0lqn81c1crrk6fga1gmsv61675vjv5v41skz56lrsb";
+ sha256 = "1q7nsl9g8xv81ymhpkdp9mlw3gkzba62gggp3b72f0ywpc3kc3cz";
};
meta = with stdenv.lib; {
diff --git a/pkgs/servers/caddy/default.nix b/pkgs/servers/caddy/default.nix
index bb1f4ac8538..2eca465bfd2 100644
--- a/pkgs/servers/caddy/default.nix
+++ b/pkgs/servers/caddy/default.nix
@@ -2,7 +2,7 @@
buildGoModule rec {
pname = "caddy";
- version = "1.0.3";
+ version = "1.0.4";
goPackagePath = "github.com/caddyserver/caddy";
@@ -12,9 +12,9 @@ buildGoModule rec {
owner = "caddyserver";
repo = pname;
rev = "v${version}";
- sha256 = "1n7i9w4vva5x5wry7gzkyfylk39x40ykv7ypf1ca3zbbk7w5x6mw";
+ sha256 = "0mqbaa9cshrqm5fggm5l5nzcnv8c9dvylcc4z7qj3322vl5cpfdc";
};
- modSha256 = "0np0mbs0mrn8scqa0dgvi7ya1707b3883prdaf1whsqrcr71ig8q";
+ modSha256 = "0f08smcnzmrj3v43v0qgyd11qwdbymbl86c9prais6sykgh1ld97";
preBuild = ''
cat << EOF > caddy/main.go
@@ -28,9 +28,9 @@ buildGoModule rec {
'';
meta = with stdenv.lib; {
- homepage = https://caddyserver.com;
+ homepage = "https://caddyserver.com";
description = "Fast, cross-platform HTTP/2 web server with automatic HTTPS";
license = licenses.asl20;
- maintainers = with maintainers; [ rushmorem fpletz zimbatm ];
+ maintainers = with maintainers; [ rushmorem fpletz zimbatm filalex77 ];
};
}
diff --git a/pkgs/servers/caddy/v2.nix b/pkgs/servers/caddy/v2.nix
new file mode 100644
index 00000000000..c0b2134abde
--- /dev/null
+++ b/pkgs/servers/caddy/v2.nix
@@ -0,0 +1,25 @@
+{ stdenv, callPackage, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+ pname = "caddy";
+ version = "2.0.0-beta10";
+
+ goPackagePath = "github.com/caddyserver/caddy";
+
+ subPackages = [ "cmd/caddy" ];
+
+ src = fetchFromGitHub {
+ owner = "caddyserver";
+ repo = pname;
+ rev = "v${version}";
+ sha256 = "1vagcw6ibri4nbx1n60xp7rffcfr64a2202hjaijyjzc8wcl80na";
+ };
+ modSha256 = "1sb8w6n84cpya2rjm0zm798kzf5vjpkr5440j1gfnnnr07jl2aqn";
+
+ meta = with stdenv.lib; {
+ homepage = "https://caddyserver.com";
+ description = "Fast, cross-platform HTTP/2 web server with automatic HTTPS";
+ license = licenses.asl20;
+ maintainers = with maintainers; [ filalex77 ];
+ };
+}
diff --git a/pkgs/servers/monitoring/zabbix/versions.nix b/pkgs/servers/monitoring/zabbix/versions.nix
index 74c927f752e..affd73f9b41 100644
--- a/pkgs/servers/monitoring/zabbix/versions.nix
+++ b/pkgs/servers/monitoring/zabbix/versions.nix
@@ -1,17 +1,12 @@
generic: {
v44 = generic {
- version = "4.4.1";
- sha256 = "0jjn2przn9s25slrcxmq8iqdgqkgxnqs45zy0n1ma6nlgmclxxqb";
- };
-
- v42 = generic {
- version = "4.2.7";
- sha256 = "09znh8x1sass5mw6wjrfmizjbfls8ad2c16y24ldfj40hlfxz6wx";
+ version = "4.4.3";
+ sha256 = "1rpkgimi9kv9zrcis1zwbrny7yzralick206n71i8071hf95jvwx";
};
v40 = generic {
- version = "4.0.14";
- sha256 = "0igdxxfc61rqx6r7r81jsmv2d7nxw4whai211gk3y88dfm7l4xkb";
+ version = "4.0.15";
+ sha256 = "19q8h79h7lnsq6gbd0awrlw59scg92x0a1375kd2av6bjpx8r0y9";
};
v30 = generic {
diff --git a/pkgs/servers/tautulli/default.nix b/pkgs/servers/tautulli/default.nix
index 68e8f46e319..cbcd3c354cb 100644
--- a/pkgs/servers/tautulli/default.nix
+++ b/pkgs/servers/tautulli/default.nix
@@ -1,7 +1,7 @@
{stdenv, fetchFromGitHub, python }:
stdenv.mkDerivation rec {
- version = "2.1.37";
+ version = "2.1.38";
pname = "Tautulli";
pythonPath = [ python.pkgs.setuptools ];
@@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
owner = "Tautulli";
repo = pname;
rev = "v${version}";
- sha256 = "0imq81njw6hsd0m091hmbaaq0znfan6lmnbg6m7g2vfgwvqh9fbq";
+ sha256 = "00kxz4i97lk3cb11vcpj894xdi7q9f1jcy29yglya8rcvsqmddwd";
};
buildPhase = ":";
diff --git a/pkgs/shells/bash/bash-completion/default.nix b/pkgs/shells/bash/bash-completion/default.nix
index fbc07c86494..a741633340d 100644
--- a/pkgs/shells/bash/bash-completion/default.nix
+++ b/pkgs/shells/bash/bash-completion/default.nix
@@ -1,4 +1,5 @@
{ stdenv, fetchFromGitHub
+, fetchpatch
, autoreconfHook
, python3Packages
, bashInteractive
@@ -6,6 +7,7 @@
stdenv.mkDerivation rec {
pname = "bash-completion";
+ # TODO: Remove musl patch below upon next release!
version = "2.9";
src = fetchFromGitHub {
@@ -26,6 +28,14 @@ stdenv.mkDerivation rec {
patches = [
./0001-Revert-build-Do-cmake-pc-and-profile-variable-replac.patch
+ # TODO: Remove when https://github.com/scop/bash-completion/commit/2cdac1b9f24df62a1fa80c1824ee8524c9b02393
+ # is availabe in a release in nixpkgs. see https://github.com/scop/bash-completion/issues/312.
+ # Fixes a test failure with musl.
+ (fetchpatch {
+ url = "https://github.com/scop/bash-completion/commit/2cdac1b9f24df62a1fa80c1824ee8524c9b02393.patch";
+ name = "bash-completion-musl-test_iconv-skip-option-completion-if-help-fails";
+ sha256 = "1l53d62zf01k625nzw3vcrxky93h7bzdpchgk4argxalrn17ckvb";
+ })
];
# ignore ip_addresses because it tries to touch network
diff --git a/pkgs/tools/admin/azure-cli/default.nix b/pkgs/tools/admin/azure-cli/default.nix
index 3a80b4752c2..b28ef88ad99 100644
--- a/pkgs/tools/admin/azure-cli/default.nix
+++ b/pkgs/tools/admin/azure-cli/default.nix
@@ -1,16 +1,16 @@
-{ lib, python, fetchFromGitHub, installShellFiles }:
+{ stdenv, lib, python, fetchFromGitHub, installShellFiles }:
let
- version = "2.0.76";
+ version = "2.0.77";
src = fetchFromGitHub {
owner = "Azure";
repo = "azure-cli";
rev = "azure-cli-${version}";
- sha256 = "0zfy8nhw4nx0idh94qidr06vsfxgdk2ky0ih76s27121pdwr05aa";
+ sha256 = "1qd6di8cqwhpcsqcx6g3scmwj90m15r695y5977q6a3qy13knisv";
};
# put packages that needs to be overriden in the py package scope
- py = import ./python-packages.nix { inherit python lib src version; };
+ py = import ./python-packages.nix { inherit stdenv python lib src version; };
in
py.pkgs.toPythonApplication (py.pkgs.buildAzureCliPackage {
pname = "azure-cli";
@@ -45,6 +45,7 @@ py.pkgs.toPythonApplication (py.pkgs.buildAzureCliPackage {
azure-functions-devops-build
azure-graphrbac
azure-keyvault
+ azure-loganalytics
azure-mgmt-advisor
azure-mgmt-apimanagement
azure-mgmt-applicationinsights
@@ -173,6 +174,7 @@ py.pkgs.toPythonApplication (py.pkgs.buildAzureCliPackage {
"azure_functions_devops_build"
"azure.graphrbac"
"azure.keyvault"
+ "azure.loganalytics"
"azure.mgmt.advisor"
"azure.mgmt.apimanagement"
"azure.mgmt.applicationinsights"
diff --git a/pkgs/tools/admin/azure-cli/python-packages.nix b/pkgs/tools/admin/azure-cli/python-packages.nix
index 06886ba4c79..958bf31673c 100644
--- a/pkgs/tools/admin/azure-cli/python-packages.nix
+++ b/pkgs/tools/admin/azure-cli/python-packages.nix
@@ -1,4 +1,4 @@
-{ python, lib, src, version }:
+{ stdenv, python, lib, src, version }:
let
buildAzureCliPackage = with py.pkgs; attrs: buildPythonPackage (attrs // {
@@ -53,31 +53,37 @@ let
propagatedBuildInputs = with self; [
adal
argcomplete
+ azure-common
azure-cli-telemetry
+ azure-mgmt-resource
colorama
- jmespath
humanfriendly
+ jmespath
knack
msrest
msrestazure
paramiko
+ psutil
pygments
pyjwt
pyopenssl
+ pyperclip
pyyaml
requests
six
- azure-mgmt-resource
tabulate
- pyperclip
- psutil
]
++ lib.optionals isPy3k [ antlr4-python3-runtime ]
++ lib.optionals (!isPy3k) [ enum34 futures antlr4-python2-runtime ndg-httpsclient ];
+ doCheck = stdenv.isLinux;
# ignore test that does network call
checkPhase = ''
- HOME=$TMPDIR pytest --ignore=azure/cli/core/tests/test_profile.py
+ rm azure/{,cli/}__init__.py
+ python -c 'import azure.common; print(azure.common)'
+ PYTHONPATH=$PWD:$PYTHONPATH HOME=$TMPDIR pytest \
+ --ignore=azure/cli/core/tests/test_profile.py \
+ --ignore=azure/cli/core/tests/test_generic_update.py
'';
pythonImportsCheck = [
@@ -108,18 +114,21 @@ let
azure-mgmt-resource = overrideAzureMgmtPackage super.azure-mgmt-resource "4.0.0" "zip"
"0gy89bi89ikg5hps8rvnq28r33lixci3sk2m86jvziv9fh9rz41b";
- azure-mgmt-compute = overrideAzureMgmtPackage super.azure-mgmt-compute "8.0.0" "zip"
- "06hmf9iq2yqpmmvw7pr9zm4v427q03i436lnin3aczizfndrk76i";
+ azure-mgmt-compute = overrideAzureMgmtPackage super.azure-mgmt-compute "10.0.0" "zip"
+ "1s3bx6knxw5dxycp43yimvgrh0i19drzd09asglcwz2x5mr3bpyg";
azure-mgmt-consumption = overrideAzureMgmtPackage super.azure-mgmt-consumption "2.0.0" "zip"
"12ai4qps73ivawh0yzvgb148ksx02r30pqlvfihx497j62gsi1cs";
- azure-mgmt-containerservice = overrideAzureMgmtPackage super.azure-mgmt-containerservice "7.0.0" "zip"
- "104w7rxv7hy84yzddbbpkjqha04ghr0zz9qy788n3wl69cj4cv1a";
+ azure-mgmt-containerservice = overrideAzureMgmtPackage super.azure-mgmt-containerservice "8.0.0" "zip"
+ "0akpm12xj453dp84dfdpi06phr4q0hknr5l7bz96zbc8iand78wg";
azure-mgmt-cosmosdb = overrideAzureMgmtPackage super.azure-mgmt-cosmosdb "0.8.0" "zip"
"0iakxb2rr1w9171802m9syjzqas02vjah711mpagbgcj549mjysb";
+ azure-mgmt-imagebuilder = overrideAzureMgmtPackage super.azure-mgmt-imagebuilder "0.2.1" "zip"
+ "0mwlvy4x5nr3hsz7wdpdhpzwarzzwz4225bfpd68hr0pcjgzspky";
+
azure-mgmt-iothub = overrideAzureMgmtPackage super.azure-mgmt-iothub "0.8.2" "zip"
"0w3w1d156rnkwjdarv3qvycklxr3z2j7lry7a3jfgj3ykzny12rq";
@@ -129,8 +138,8 @@ let
azure-mgmt-devtestlabs = overrideAzureMgmtPackage super.azure-mgmt-devtestlabs "2.2.0" "zip"
"15lpyv9z8ss47rjmg1wx5akh22p9br2vckaj7jk3639vi38ac5nl";
- azure-mgmt-netapp = overrideAzureMgmtPackage super.azure-mgmt-netapp "0.6.0" "zip"
- "10ymvyj386z9bjdm2g1b5a4vfnn87ig2zm6xn2xddvbpy0jxnyfv";
+ azure-mgmt-netapp = overrideAzureMgmtPackage super.azure-mgmt-netapp "0.7.0" "zip"
+ "0cf4pknb5y2yz4jqwg7xm626zkfx8i8hqcr3dkvq21lrx7fz96r3";
azure-mgmt-dns = overrideAzureMgmtPackage super.azure-mgmt-dns "2.1.0" "zip"
"1l55py4fzzwhxlmnwa41gpmqk9v2ncc79w7zq11sm9a5ynrv2c1p";
@@ -144,12 +153,15 @@ let
azure-mgmt-web = overrideAzureMgmtPackage super.azure-mgmt-web "0.42.0" "zip"
"0vp40i9aaw5ycz7s7qqir6jq7327f7zg9j9i8g31qkfl1h1c7pdn";
- azure-mgmt-reservations = overrideAzureMgmtPackage super.azure-mgmt-reservations "0.3.2" "zip"
- "0nksxjh5kh09dr0zw667fg8mzik4ymvfq3dipwag6pynbqr9ls4l";
+ azure-mgmt-reservations = overrideAzureMgmtPackage super.azure-mgmt-reservations "0.6.0" "zip"
+ "16ycni3cjl9c0mv419gy5rgbrlg8zp0vnr6aj8z8p2ypdw6sgac3";
azure-mgmt-security = overrideAzureMgmtPackage super.azure-mgmt-security "0.1.0" "zip"
"1cb466722bs0ribrirb32kc299716pl0pwivz3jyn40dd78cwhhx";
+ azure-mgmt-sqlvirtualmachine = overrideAzureMgmtPackage super.azure-mgmt-sqlvirtualmachine "0.4.0" "zip"
+ "1jxmikjvyxkwr8c9kn6xw8gvj9pajlk7y8111rq8fgkivwjq8wcm";
+
azure-mgmt-datamigration = overrideAzureMgmtPackage super.azure-mgmt-datamigration "0.1.0" "zip"
"1pq5rn32yvrf5kqjafnj0kc92gpfg435w2l0k7cm8gvlja4r4m77";
@@ -165,8 +177,8 @@ let
azure-mgmt-containerregistry = overrideAzureMgmtPackage super.azure-mgmt-containerregistry "3.0.0rc7" "zip"
"1bzfpbz186dhnxn0blgr20xxnk67gkr8ysn2b3f1r41bq9hz97xp";
- azure-mgmt-monitor = overrideAzureMgmtPackage super.azure-mgmt-monitor "0.5.2" "zip"
- "1r01aq5rbynbc1my4qljdifjdj9h65bh8cdzgd7vm4ij7r48v9gi";
+ azure-mgmt-monitor = overrideAzureMgmtPackage super.azure-mgmt-monitor "0.7.0" "zip"
+ "1pprvk5255b6brbw73g0g13zygwa7a2px5x08wy3153rqlzan5l2";
azure-mgmt-advisor = overrideAzureMgmtPackage super.azure-mgmt-advisor "2.0.1" "zip"
"1wsfkprdrn22mwm24y2zlcms8ppp7jwq3s86r3ymbl29pbaxca8r";
@@ -233,17 +245,6 @@ let
'';
});
-
-
-
-
-
-
-
-
-
-
-
};
};
in
diff --git a/pkgs/tools/misc/chezmoi/default.nix b/pkgs/tools/misc/chezmoi/default.nix
index 587bc2b9278..660dcf34459 100644
--- a/pkgs/tools/misc/chezmoi/default.nix
+++ b/pkgs/tools/misc/chezmoi/default.nix
@@ -2,16 +2,16 @@
buildGoModule rec {
pname = "chezmoi";
- version = "1.7.2";
+ version = "1.7.5";
src = fetchFromGitHub {
owner = "twpayne";
repo = "chezmoi";
rev = "v${version}";
- sha256 = "06wgfnlzcs6yfrjpy6zhcg5y844zd22manbm2sfq5vyng02bg229";
+ sha256 = "1s64468q7hhp42lzgcixhh3jq7i7bgmiakahyfj0mzc49mn6rr0a";
};
- modSha256 = "1y1q1lps3a8piikh8ds28yrw5r82af9pyl6vy87207z1y5v2hams";
+ modSha256 = "0c2jslcigq9ajchfr7inb7b6cpla7xjibcmjsvwspfzknrlrsbfn";
buildFlagsArray = [
"-ldflags=-s -w -X github.com/twpayne/chezmoi/cmd.VersionStr=${version}"
diff --git a/pkgs/tools/misc/multitime/default.nix b/pkgs/tools/misc/multitime/default.nix
new file mode 100644
index 00000000000..a46ee2b7c9c
--- /dev/null
+++ b/pkgs/tools/misc/multitime/default.nix
@@ -0,0 +1,39 @@
+{ stdenv, fetchFromGitHub, autoreconfHook }:
+
+stdenv.mkDerivation rec {
+ pname = "multitime";
+ version = "1.4";
+
+ src = fetchFromGitHub {
+ owner = "ltratt";
+ repo = pname;
+ rev = "${pname}-${version}";
+ sha256 = "1p6m4gyy6dw7nxnpsk32qiijagmiq9vwch0fbc25qvmybwqp8qc0";
+ };
+
+ nativeBuildInputs = [ autoreconfHook ];
+
+ meta = {
+ description = "Time command execution over multiple executions";
+
+ longDescription = ''
+ Unix's `time` utility is a simple and often effective way of measuring
+ how long a command takes to run. Unfortunately, running a command once
+ can give misleading timings: the process may create a cache on its first
+ execution, running faster subsequently; other processes may cause the
+ command to be starved of CPU or IO time; etc. It is common to see people
+ run `time` several times and take whichever values they feel most
+ comfortable with. Inevitably, this causes problems.
+
+ `multitime` is, in essence, a simple extension to time which runs a
+ command multiple times and prints the timing means (with confidence
+ intervals), standard deviations, minimums, medians, and maximums having
+ done so. This can give a much better understanding of the command's
+ performance.
+ '';
+
+ license = stdenv.lib.licenses.mit;
+ homepage = "https://tratt.net/laurie/src/multitime/";
+ platforms = stdenv.lib.platforms.unix;
+ };
+}
diff --git a/pkgs/tools/misc/youtube-dl/default.nix b/pkgs/tools/misc/youtube-dl/default.nix
index da54b885bfc..35075495fbf 100644
--- a/pkgs/tools/misc/youtube-dl/default.nix
+++ b/pkgs/tools/misc/youtube-dl/default.nix
@@ -18,11 +18,11 @@ buildPythonPackage rec {
# The websites youtube-dl deals with are a very moving target. That means that
# downloads break constantly. Because of that, updates should always be backported
# to the latest stable release.
- version = "2019.11.22";
+ version = "2019.11.28";
src = fetchurl {
url = "https://yt-dl.org/downloads/${version}/${pname}-${version}.tar.gz";
- sha256 = "0avdlp0dc9p3lm68mfnic21x6blxmr0zvlxa4br5vj4y4sckq2m8";
+ sha256 = "19xiwdn3l0kizyj7cik9vyhgrlwg7ss4wl4hy2pbbbqwh5vwppwk";
};
nativeBuildInputs = [ makeWrapper ];
diff --git a/pkgs/tools/networking/sslsplit/default.nix b/pkgs/tools/networking/sslsplit/default.nix
new file mode 100644
index 00000000000..bf23d06551d
--- /dev/null
+++ b/pkgs/tools/networking/sslsplit/default.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchFromGitHub, openssl, libevent, libpcap, libnet, zlib }:
+
+stdenv.mkDerivation rec {
+ pname = "sslsplit";
+ version = "0.5.5";
+
+ src = fetchFromGitHub {
+ owner = "droe";
+ repo = pname;
+ rev = version;
+ sha256 = "1p43z9ln5rbc76v0j1k3r4nhvfw71hq8jzsallb54z9hvwfvqp3l";
+ };
+
+ buildInputs = [ openssl libevent libpcap libnet zlib ];
+
+ makeFlags = [
+ "PREFIX=$(out)"
+ "OPENSSL_BASE=${openssl.dev}"
+ "LIBEVENT_BASE=${libevent.dev}"
+ "LIBPCAP_BASE=${libpcap}"
+ "LIBNET_BASE=${libnet}"
+ ];
+
+ meta = with stdenv.lib; {
+ description = "Transparent SSL/TLS interception";
+ homepage = "https://www.roe.ch/SSLsplit";
+ platforms = platforms.all;
+ maintainers = with maintainers; [ contrun ];
+ license = with licenses; [ bsd2 mit unlicense free ];
+ };
+}
diff --git a/pkgs/tools/networking/v2ray/default.nix b/pkgs/tools/networking/v2ray/default.nix
new file mode 100644
index 00000000000..78f17934a78
--- /dev/null
+++ b/pkgs/tools/networking/v2ray/default.nix
@@ -0,0 +1,36 @@
+{ callPackage, fetchFromGitHub, fetchurl
+, assetOverrides ? {}
+, ... } @ args:
+
+callPackage ./generic.nix (rec {
+ version = "4.21.3";
+
+ src = fetchFromGitHub {
+ owner = "v2ray";
+ repo = "v2ray-core";
+ rev = "v${version}";
+ sha256 = "0z45nrjnalrvpprq7g4zrjbrdkc3d3lhs4ci8hb8m69f92asiwbs";
+ };
+
+ assets = {
+ # MIT licensed
+ "geoip.dat" = let
+ geoipRev = "20190516.1";
+ geoipSha256 = "14h4rq7rlcl1397pwpylfgwpk3fiscpzqb04c4wd5lxkfvk5f02r";
+ in fetchurl {
+ url = "https://github.com/v2ray/geoip/releases/download/${geoipRev}/geoip.dat";
+ sha256 = geoipSha256;
+ };
+
+ # MIT licensed
+ "geosite.dat" = let
+ geositeRev = "20191121.1";
+ geositeSha256 = "0ijmvy43pvm69w38djf114j8swni7wfq5ry9wdpv9dj0rzb59m74";
+ in fetchurl {
+ url = "https://github.com/v2ray/domain-list-community/releases/download/${geositeRev}/dlc.dat";
+ sha256 = geositeSha256;
+ };
+
+ } // assetOverrides;
+
+} // args)
diff --git a/pkgs/tools/networking/v2ray/generic.nix b/pkgs/tools/networking/v2ray/generic.nix
new file mode 100644
index 00000000000..bf6e6cd55ae
--- /dev/null
+++ b/pkgs/tools/networking/v2ray/generic.nix
@@ -0,0 +1,50 @@
+{ lib, linkFarm, buildGoModule, runCommand, makeWrapper
+
+# Version specific args
+, version, src, assets
+, ... }:
+
+let
+ assetsDrv = linkFarm "v2ray-assets" (lib.mapAttrsToList (name: path: {
+ inherit name path;
+ }) assets);
+
+ core = buildGoModule rec {
+ pname = "v2ray-core";
+ inherit version src;
+
+ modSha256 = "11gsncy3449a7y6w6pr7acqabyj2q2a1q52f8fcl5cdz1vjbmmxi";
+
+ buildPhase = ''
+ runHook preBuild
+
+ go build -o v2ray v2ray.com/core/main
+ go build -o v2ctl v2ray.com/core/infra/control/main
+
+ runHook postBuild
+ '';
+
+ installPhase = ''
+ install -Dm755 v2ray v2ctl -t $out/bin
+ '';
+ };
+
+in runCommand "v2ray-${version}" {
+ inherit version;
+
+ buildInputs = [ assetsDrv core ];
+ nativeBuildInputs = [ makeWrapper ];
+
+ meta = {
+ homepage = "https://www.v2ray.com/en/index.html";
+ description = "A platform for building proxies to bypass network restrictions";
+ license = with lib.licenses; [ mit ];
+ maintainers = with lib.maintainers; [ servalcatty ];
+ };
+
+} ''
+ for file in ${core}/bin/*; do
+ makeWrapper "$file" "$out/bin/$(basename "$file")" \
+ --set-default V2RAY_LOCATION_ASSET ${assetsDrv}
+ done
+''
diff --git a/pkgs/tools/networking/v2ray/update.sh b/pkgs/tools/networking/v2ray/update.sh
new file mode 100755
index 00000000000..38ad77e98f8
--- /dev/null
+++ b/pkgs/tools/networking/v2ray/update.sh
@@ -0,0 +1,53 @@
+#!/usr/bin/env nix-shell
+#!nix-shell -i bash -p curl jq
+set -eo pipefail
+
+version_nix=$(dirname "$0")/default.nix
+deps_nix=$(dirname "$0")/deps.nix
+
+old_core_rev="v$(sed -En 's/.*\bversion = "(.*?)".*/\1/p' "$version_nix")"
+old_geoip_rev=$(sed -En 's/.*\bgeoipRev = "(.*?)".*/\1/p' "$version_nix")
+old_geosite_rev=$(sed -En 's/.*\bgeositeRev = "(.*?)".*/\1/p' "$version_nix")
+echo "Current version:" >&2
+echo "core: $old_core_rev, geoip: $old_geoip_rev, geosite: $old_geosite_rev" >&2
+
+function fetch_latest_rev {
+ curl "https://api.github.com/repos/v2ray/$1/releases" |
+ jq '.[0].tag_name' --raw-output
+}
+
+core_rev=$(fetch_latest_rev 'v2ray-core')
+geoip_rev=$(fetch_latest_rev 'geoip')
+geosite_rev=$(fetch_latest_rev 'domain-list-community')
+echo "Latest version:" >&2
+echo "core: $core_rev, geoip: $geoip_rev, geosite: $geosite_rev" >&2
+
+if [[ $core_rev != $old_core_rev ]]; then
+ echo "Prefetching core..." >&2
+ { read hash; read store_path; } < <(
+ nix-prefetch-url --unpack --print-path "https://github.com/v2ray/v2ray-core/archive/$core_rev.zip"
+ )
+
+ sed --in-place \
+ -e "s/\bversion = \".*\"/version = \"$(echo "$core_rev" | tail -c+2)\"/" \
+ -e "s/\bsha256 = \".*\"/sha256 = \"$hash\"/" \
+ "$version_nix"
+fi
+
+if [[ $geoip_rev != $old_geoip_rev ]]; then
+ echo "Prefetching geoip..." >&2
+ hash=$(nix-prefetch-url "https://github.com/v2ray/geoip/releases/download/$geoip_rev/geoip.dat")
+ sed --in-place \
+ -e "s/\bgeoipRev = \".*\"/geoipRev = \"$geoip_rev\"/" \
+ -e "s/\bgeoipSha256 = \".*\"/geoipSha256 = \"$hash\"/" \
+ "$version_nix"
+fi
+
+if [[ $geosite_rev != $old_geosite_rev ]]; then
+ echo "Prefetching geosite..." >&2
+ hash=$(nix-prefetch-url "https://github.com/v2ray/domain-list-community/releases/download/$geosite_rev/dlc.dat")
+ sed --in-place \
+ -e "s/\bgeositeRev = \".*\"/geositeRev = \"$geosite_rev\"/" \
+ -e "s/\bgeositeSha256 = \".*\"/geositeSha256 = \"$hash\"/" \
+ "$version_nix"
+fi
diff --git a/pkgs/tools/package-management/emplace/default.nix b/pkgs/tools/package-management/emplace/default.nix
new file mode 100644
index 00000000000..614959b651c
--- /dev/null
+++ b/pkgs/tools/package-management/emplace/default.nix
@@ -0,0 +1,23 @@
+{ lib, rustPlatform, fetchFromGitHub }:
+
+rustPlatform.buildRustPackage rec {
+ pname = "emplace";
+ version = "0.2.7";
+
+ src = fetchFromGitHub {
+ owner = "tversteeg";
+ repo = pname;
+ rev = "v${version}";
+ sha256 = "0dkdgb0hbaixc69yh75lq4lamvgd421lk1v7qn802h83fibcmh81";
+ };
+
+ cargoSha256 = "10y7lpgj9mxrh3rmc15km4rfzspwdjr8dcdh0747rjn6dcpfhcdq";
+
+ meta = with lib; {
+ description = "Mirror installed software on multiple machines";
+ homepage = "https://github.com/tversteeg/emplace";
+ license = licenses.agpl3;
+ maintainers = with maintainers; [ filalex77 ];
+ platforms = platforms.all;
+ };
+}
diff --git a/pkgs/tools/system/osquery/0001-Fix-CMake-configuration-for-Nix.patch b/pkgs/tools/system/osquery/0001-Fix-CMake-configuration-for-Nix.patch
deleted file mode 100644
index b90752f8dc5..00000000000
--- a/pkgs/tools/system/osquery/0001-Fix-CMake-configuration-for-Nix.patch
+++ /dev/null
@@ -1,41 +0,0 @@
-From 511400b8ec0794588df88e2bb1c45cc6a4a51b1e Mon Sep 17 00:00:00 2001
-From: Maximilian Bosch
-Date: Sun, 26 May 2019 23:10:02 +0200
-Subject: [PATCH] Fix CMake configuration for Nix
-
-* -fno-limit-debug-info: CLang specific, patch away to support both
- CLang and GCC.
-* Dropped unnecessary `lvm-internal` and `daemonclient` references.
----
- CMakeLists.txt | 1 -
- osquery/tables/CMakeLists.txt | 2 +-
- 2 files changed, 1 insertion(+), 2 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index f545d6c9..cfe68ddb 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -328,7 +328,6 @@ if (POSIX)
- # To be safe, only include them when building 'release' outputs.
- add_compile_options(
- "$<$:-g>"
-- "$<$:-fno-limit-debug-info>"
- "$<$:-fPIE>"
- "$<$:-fpie>"
- "$<$:-fPIC>"
-diff --git a/osquery/tables/CMakeLists.txt b/osquery/tables/CMakeLists.txt
-index 470bdf1d..caa6ab6f 100644
---- a/osquery/tables/CMakeLists.txt
-+++ b/osquery/tables/CMakeLists.txt
-@@ -68,7 +68,7 @@ if(LINUX)
- set(TABLE_PLATFORM "linux")
-
- ADD_OSQUERY_LINK_ADDITIONAL("libresolv.so")
-- ADD_OSQUERY_LINK_ADDITIONAL("cryptsetup devmapper lvm2app lvm-internal daemonclient")
-+ ADD_OSQUERY_LINK_ADDITIONAL("cryptsetup devmapper lvm2app")
- ADD_OSQUERY_LINK_ADDITIONAL("gcrypt gpg-error")
- ADD_OSQUERY_LINK_ADDITIONAL("blkid")
- ADD_OSQUERY_LINK_ADDITIONAL("ip4tc")
---
-2.19.2
-
diff --git a/pkgs/tools/text/amber/default.nix b/pkgs/tools/text/amber/default.nix
index c8f380739a6..935b6a60729 100644
--- a/pkgs/tools/text/amber/default.nix
+++ b/pkgs/tools/text/amber/default.nix
@@ -4,16 +4,16 @@
rustPlatform.buildRustPackage rec {
pname = "amber";
- version = "0.5.2";
+ version = "0.5.3";
src = fetchFromGitHub {
owner = "dalance";
repo = pname;
rev = "v${version}";
- sha256 = "0jwrkd6qhxj2mqsfmhk687k15f7gf36gjyxnynj0yh8db2db6mjc";
+ sha256 = "0k70rk19hwdlhhqm91x12xcb8r09kzpijs0xwhplrwdh86qfxymx";
};
- cargoSha256 = "0iv8zvglwaihcc89dk9kkhchbj1g3v8wq8jcbrgcbclcsyymmplc";
+ cargoSha256 = "0hh3sgcdcp0llgf3i3dysrr3vry3fv3fzzf44ad1953d5mnyhvap";
buildInputs = stdenv.lib.optional stdenv.isDarwin Security;
diff --git a/pkgs/tools/typesetting/pdf2djvu/default.nix b/pkgs/tools/typesetting/pdf2djvu/default.nix
index 5b1412f3792..1090ad300f7 100644
--- a/pkgs/tools/typesetting/pdf2djvu/default.nix
+++ b/pkgs/tools/typesetting/pdf2djvu/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, djvulibre, poppler, fontconfig, libjpeg }:
+{ stdenv, fetchurl, fetchpatch, pkgconfig, djvulibre, poppler, fontconfig, libjpeg }:
stdenv.mkDerivation rec {
version = "0.9.14";
@@ -9,6 +9,18 @@ stdenv.mkDerivation rec {
sha256 = "05z2bbg54pfsi668fwcjrcr5iz9llf9gprzdsrn6fw5wjv4876zi";
};
+ patches = [
+ # fix build with Poppler 0.83
+ (fetchpatch {
+ url = "https://github.com/jwilk/pdf2djvu/commit/0aa17bb79dbcdfc249e4841f5b5398e27cfdfd41.patch";
+ sha256 = "0mr14nz5w7z4ri2556bxkf3cnn2f7dhwsld7csrh6z5qqb7d5805";
+ })
+ (fetchpatch {
+ url = "https://github.com/jwilk/pdf2djvu/commit/27b9e028091a2f370367e9eaf37b4bb1cde87b62.patch";
+ sha256 = "03apsg1487jl800q8j70hicvg6xsndd593bg7babm4vgivkxb0da";
+ })
+ ];
+
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ djvulibre poppler fontconfig libjpeg ];
diff --git a/pkgs/tools/typesetting/tex/texlive/bin.nix b/pkgs/tools/typesetting/tex/texlive/bin.nix
index 5bb02f06f23..7c3b9d015db 100644
--- a/pkgs/tools/typesetting/tex/texlive/bin.nix
+++ b/pkgs/tools/typesetting/tex/texlive/bin.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, fetchpatch
+{ stdenv, fetchurl, fetchpatch, patchutils
, texlive
, zlib, libiconv, libpng, libX11
, freetype, gd, libXaw, icu, ghostscript, libXpm, libXmu, libXext
@@ -27,27 +27,47 @@ let
};
patches = [
- ] ++ stdenv.lib.optionals (stdenv.lib.versionAtLeast (stdenv.lib.getVersion poppler) "0.76") [
- (fetchpatch {
- name = "pdftex-poppler0.76.patch";
- url = "https://git.archlinux.org/svntogit/packages.git/plain/texlive-bin/trunk/pdftex-poppler0.76.patch?id=8cb784073cfd2299a6c301ce7bb0d89126a47f4e";
- sha256 = "04x7myzysranddzjifxhahl7gjy407zkiyzfs5l9cbwzp6pqh7gh";
-
- includes = [
- "texk/web2c/pdftexdir/pdftoepdf-poppler0.76.0.cc"
- "texk/web2c/pdftexdir/pdftosrc-poppler0.76.0.cc"
- ];
- })
];
postPatch = let
- popplerSuffix = if (stdenv.lib.versionAtLeast (stdenv.lib.getVersion poppler) "0.76") then "-poppler0.76.0" else "-poppler0.72.0";
+ # The source compatible with Poppler ${popplerVersion} not yet available in TeXLive ${year}
+ # so we need to use files introduced in https://www.tug.org/svn/texlive?view=revision&revision=52959
+ popplerVersion = "0.83.0";
+ pdftoepdf = let
+ revert-pdfmajorversion = fetchpatch {
+ name = "pdftoepdf-revert-pdfmajorversion.patch";
+ url = "https://www.tug.org/svn/texlive/trunk/Build/source/texk/web2c/pdftexdir/pdftoepdf.cc?view=patch&r1=52953&r2=52952&pathrev=52953";
+ sha256 = "19jiv5xbvnfdk8lj6yd6mdxgs8f313a4dwg8svjj90dd35kjcfh8";
+ revert = true;
+ postFetch = ''
+ # The default file, changed by this patch, contains a branch for vendored Poppler
+ # The version-specific file replaces the section with an error, so we need to drop that part from the patch.
+ # Fortunately, there is not anything else in the patch after #else.
+ sed '/ #else/q' $out > "$tmpfile"
+ ${patchutils}/bin/recountdiff "$tmpfile" > "$out"
+ '';
+ };
+ in fetchurl {
+ name = "pdftoepdf-poppler${popplerVersion}.cc";
+ url = "https://www.tug.org/svn/texlive/trunk/Build/source/texk/web2c/pdftexdir/pdftoepdf-poppler${popplerVersion}.cc?revision=52959&view=co";
+ sha256 = "0pngvw1jgnm4cqskrzf5a3z8rj4ssl10007n3wbblj50hvvzjph3";
+ postFetch = ''
+ # The trunk added some extra arguments to certain functions so we need to revert that
+ # https://www.tug.org/svn/texlive?view=revision&revision=52953
+ patch $out < ${revert-pdfmajorversion}
+ '';
+ };
+ pdftosrc = fetchurl {
+ name = "pdftosrc-poppler${popplerVersion}.cc";
+ url = "https://www.tug.org/svn/texlive/trunk/Build/source/texk/web2c/pdftexdir/pdftosrc-poppler${popplerVersion}.cc?revision=52959&view=co";
+ sha256 = "0iq2cmwvf2lxy32sygrafwqgcwvvbdnvxm5l3mrg9cb2a1g06380";
+ };
in ''
for i in texk/kpathsea/mktex*; do
sed -i '/^mydir=/d' "$i"
done
- cp -pv texk/web2c/pdftexdir/pdftoepdf{${popplerSuffix},}.cc
- cp -pv texk/web2c/pdftexdir/pdftosrc{${popplerSuffix},}.cc
+ cp -pv ${pdftoepdf} texk/web2c/pdftexdir/pdftoepdf.cc
+ cp -pv ${pdftosrc} texk/web2c/pdftexdir/pdftosrc.cc
'';
# remove when removing synctex-missing-header.patch
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 76fd9bb8c84..19c3e965180 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -853,6 +853,8 @@ in
elvish = callPackage ../shells/elvish { };
+ emplace = callPackage ../tools/package-management/emplace { };
+
encryptr = callPackage ../tools/security/encryptr {
gconf = gnome2.GConf;
};
@@ -1310,6 +1312,7 @@ in
});
caddy = callPackage ../servers/caddy { };
+ caddy2 = callPackage ../servers/caddy/v2.nix { };
traefik = callPackage ../servers/traefik { };
calamares = libsForQt5.callPackage ../tools/misc/calamares {
@@ -2561,7 +2564,7 @@ in
cron = callPackage ../tools/system/cron { };
- cudaPackages = callPackages ../development/compilers/cudatoolkit { };
+ cudaPackages = recurseIntoAttrs (callPackage ../development/compilers/cudatoolkit {});
inherit (cudaPackages)
cudatoolkit_6
cudatoolkit_6_5
@@ -5020,6 +5023,8 @@ in
mt-st = callPackage ../tools/backup/mt-st {};
+ multitime = callPackage ../tools/misc/multitime { };
+
multitran = recurseIntoAttrs (let callPackage = newScope pkgs.multitran; in {
multitrandata = callPackage ../tools/text/multitran/data { };
@@ -6436,6 +6441,8 @@ in
ssldump = callPackage ../tools/networking/ssldump { };
+ sslsplit = callPackage ../tools/networking/sslsplit { };
+
sstp = callPackage ../tools/networking/sstp {};
strip-nondeterminism = perlPackages.strip-nondeterminism;
@@ -6891,6 +6898,8 @@ in
uwsgi = callPackage ../servers/uwsgi { };
+ v2ray = callPackage ../tools/networking/v2ray { };
+
vacuum = callPackage ../applications/networking/instant-messengers/vacuum {};
vampire = callPackage ../applications/science/logic/vampire {};
@@ -19527,7 +19536,7 @@ in
k3d = callPackage ../applications/graphics/k3d {
inherit (pkgs.gnome2) gtkglext;
stdenv = gcc6Stdenv;
- boost = boost.override { enablePython = true; };
+ boost = boost155.override { enablePython = true; };
};
k9copy = libsForQt5.callPackage ../applications/video/k9copy {};
@@ -24535,8 +24544,9 @@ in
kops_1_12
kops_1_13
kops_1_14
+ kops_1_15
;
- kops = kops_1_14;
+ kops = kops_1_15;
lguf-brightness = callPackage ../misc/lguf-brightness { };
diff --git a/pkgs/top-level/coq-packages.nix b/pkgs/top-level/coq-packages.nix
index 235dfc79487..2cc1750c464 100644
--- a/pkgs/top-level/coq-packages.nix
+++ b/pkgs/top-level/coq-packages.nix
@@ -128,7 +128,7 @@ in rec {
version = "8.9.1";
};
coq_8_10 = callPackage ../applications/science/logic/coq {
- version = "8.10.1";
+ version = "8.10.2";
};
coqPackages_8_5 = mkCoqPackages coq_8_5;
diff --git a/pkgs/top-level/static.nix b/pkgs/top-level/static.nix
index d1708096032..98a75e2df87 100644
--- a/pkgs/top-level/static.nix
+++ b/pkgs/top-level/static.nix
@@ -52,6 +52,39 @@ self: super: let
});
};
+ removeUnknownConfigureFlags = f: with self.lib;
+ remove "--disable-shared"
+ (remove "--enable-static" f);
+
+ ocamlFixPackage = b:
+ b.overrideAttrs (o: {
+ configurePlatforms = [ ];
+ configureFlags = removeUnknownConfigureFlags (o.configureFlags or [ ]);
+ buildInputs = o.buildInputs ++ o.nativeBuildInputs or [ ];
+ propagatedNativeBuildInputs = o.propagatedBuildInputs or [ ];
+ });
+
+ ocamlStaticAdapter = _: super:
+ self.lib.mapAttrs
+ (_: p: if p ? overrideAttrs then ocamlFixPackage p else p)
+ super
+ // {
+ lablgtk = null; # Currently xlibs cause infinite recursion
+ ocaml = ((super.ocaml.override { useX11 = false; }).overrideAttrs (o: {
+ configurePlatforms = [ ];
+ dontUpdateAutotoolsGnuConfigScripts = true;
+ })).overrideDerivation (o: {
+ preConfigure = ''
+ configureFlagsArray+=("-cc" "$CC" "-as" "$AS" "-partialld" "$LD -r")
+ '';
+ configureFlags = (removeUnknownConfigureFlags o.configureFlags) ++ [
+ "--no-shared-libs"
+ "-host ${o.stdenv.hostPlatform.config}"
+ "-target ${o.stdenv.targetPlatform.config}"
+ ];
+ });
+ };
+
in {
stdenv = foldl (flip id) super.stdenv staticAdapters;
gcc49Stdenv = foldl (flip id) super.gcc49Stdenv staticAdapters;
@@ -172,6 +205,10 @@ in {
};
};
+ kmod = super.kmod.override {
+ withStatic = true;
+ };
+
curl = super.curl.override {
# a very sad story: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=439039
gssSupport = false;
@@ -196,5 +233,9 @@ in {
};
};
+ ocaml-ng = self.lib.mapAttrs (_: set:
+ if set ? overrideScope' then set.overrideScope' ocamlStaticAdapter else set
+ ) super.ocaml-ng;
+
python27 = super.python27.override { static = true; };
}