diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index 4f1f996756bb..1307b293fe98 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -8127,6 +8127,12 @@
githubId = 3889405;
name = "vyp";
};
+ wamserma = {
+ name = "Markus S. Wamser";
+ email = "github-dev@mail2013.wamser.eu";
+ github = "wamserma";
+ githubId = 60148;
+ };
waynr = {
name = "Wayne Warren";
email = "wayne.warren.s@gmail.com";
diff --git a/nixos/doc/manual/release-notes/rl-2009.xml b/nixos/doc/manual/release-notes/rl-2009.xml
index 4965f9c36297..f34bfc9411ec 100644
--- a/nixos/doc/manual/release-notes/rl-2009.xml
+++ b/nixos/doc/manual/release-notes/rl-2009.xml
@@ -203,6 +203,15 @@ environment.systemPackages = [
here.
+
+
+ Deluge 2.x was added and is used as default for new NixOS
+ installations where stateVersion is >= 20.09. If you are upgrading from a previous
+ NixOS version, you can set service.deluge.package = pkgs.deluge-2_x
+ to upgrade to Deluge 2.x and migrate the state to the new format.
+ Be aware that backwards state migrations are not supported by Deluge.
+
+
@@ -246,7 +255,6 @@ environment.systemPackages = [
# sudo /run/current-system/fine-tune/child-1/bin/switch-to-configuration test
-
diff --git a/nixos/modules/services/torrent/deluge.nix b/nixos/modules/services/torrent/deluge.nix
index 0c72505395dd..2f1e7300ca38 100644
--- a/nixos/modules/services/torrent/deluge.nix
+++ b/nixos/modules/services/torrent/deluge.nix
@@ -5,6 +5,7 @@ with lib;
let
cfg = config.services.deluge;
cfg_web = config.services.deluge.web;
+ isDeluge1 = versionOlder cfg.package.version "2.0.0";
openFilesLimit = 4096;
listenPortsDefault = [ 6881 6889 ];
@@ -18,11 +19,11 @@ let
preStart = if cfg.declarative then ''
if [ -e ${declarativeLockFile} ]; then
# Was declarative before, no need to back up anything
- ln -sf ${configFile} ${configDir}/core.conf
+ ${if isDeluge1 then "ln -sf" else "cp"} ${configFile} ${configDir}/core.conf
ln -sf ${cfg.authFile} ${configDir}/auth
else
# Declarative for the first time, backup stateful files
- ln -sb --suffix=.stateful ${configFile} ${configDir}/core.conf
+ ${if isDeluge1 then "ln -s" else "cp"} -b --suffix=.stateful ${configFile} ${configDir}/core.conf
ln -sb --suffix=.stateful ${cfg.authFile} ${configDir}/auth
echo "Autogenerated file that signifies that this server configuration is managed declaratively by NixOS" \
> ${declarativeLockFile}
@@ -144,6 +145,14 @@ in {
This always contains unzip, gnutar, xz, p7zip and bzip2.
'';
};
+
+ package = mkOption {
+ type = types.package;
+ example = literalExample "pkgs.deluge-1_x";
+ description = ''
+ Deluge package to use.
+ '';
+ };
};
deluge.web = {
@@ -170,6 +179,13 @@ in {
config = mkIf cfg.enable {
+ services.deluge.package = mkDefault (
+ if versionAtLeast config.system.stateVersion "20.09" then
+ pkgs.deluge-2_x
+ else
+ pkgs.deluge-1_x
+ );
+
# Provide a default set of `extraPackages`.
services.deluge.extraPackages = with pkgs; [ unzip gnutar xz p7zip bzip2 ];
@@ -189,10 +205,10 @@ in {
after = [ "network.target" ];
description = "Deluge BitTorrent Daemon";
wantedBy = [ "multi-user.target" ];
- path = [ pkgs.deluge ] ++ cfg.extraPackages;
+ path = [ cfg.package ] ++ cfg.extraPackages;
serviceConfig = {
ExecStart = ''
- ${pkgs.deluge}/bin/deluged \
+ ${cfg.package}/bin/deluged \
--do-not-daemonize \
--config ${configDir}
'';
@@ -212,10 +228,11 @@ in {
requires = [ "deluged.service" ];
description = "Deluge BitTorrent WebUI";
wantedBy = [ "multi-user.target" ];
- path = [ pkgs.deluge ];
+ path = [ cfg.package ];
serviceConfig = {
ExecStart = ''
- ${pkgs.deluge}/bin/deluge-web \
+ ${cfg.package}/bin/deluge-web \
+ ${optionalString (!isDeluge1) "--do-not-daemonize"} \
--config ${configDir} \
--port ${toString cfg.web.port}
'';
@@ -234,7 +251,7 @@ in {
})
];
- environment.systemPackages = [ pkgs.deluge ];
+ environment.systemPackages = [ cfg.package ];
users.users = mkIf (cfg.user == "deluge") {
deluge = {
diff --git a/nixos/tests/deluge.nix b/nixos/tests/deluge.nix
index 37689c3d9137..3cf179a38216 100644
--- a/nixos/tests/deluge.nix
+++ b/nixos/tests/deluge.nix
@@ -5,9 +5,10 @@ import ./make-test-python.nix ({ pkgs, ...} : {
};
nodes = {
- simple = {
+ simple1 = {
services.deluge = {
enable = true;
+ package = pkgs.deluge-1_x;
web = {
enable = true;
openFirewall = true;
@@ -15,50 +16,92 @@ import ./make-test-python.nix ({ pkgs, ...} : {
};
};
- declarative =
- { ... }:
+ declarative1 = {
+ services.deluge = {
+ enable = true;
+ package = pkgs.deluge-1_x;
+ openFirewall = true;
+ declarative = true;
+ config = {
+ allow_remote = true;
+ download_location = "/var/lib/deluge/my-download";
+ daemon_port = 58846;
+ listen_ports = [ 6881 6889 ];
+ };
+ web = {
+ enable = true;
+ port = 3142;
+ };
+ authFile = pkgs.writeText "deluge-auth" ''
+ localclient:a7bef72a890:10
+ andrew:password:10
+ user3:anotherpass:5
+ '';
+ };
+ };
- {
- services.deluge = {
+ simple2 = {
+ services.deluge = {
+ enable = true;
+ package = pkgs.deluge-2_x;
+ web = {
enable = true;
openFirewall = true;
- declarative = true;
- config = {
- allow_remote = true;
- download_location = "/var/lib/deluge/my-download";
- daemon_port = 58846;
- listen_ports = [ 6881 6889 ];
- };
- web = {
- enable = true;
- port = 3142;
- };
- authFile = pkgs.writeText "deluge-auth" ''
- localclient:a7bef72a890:10
- andrew:password:10
- user3:anotherpass:5
- '';
};
- environment.systemPackages = [ pkgs.deluge ];
};
+ };
+
+ declarative2 = {
+ services.deluge = {
+ enable = true;
+ package = pkgs.deluge-2_x;
+ openFirewall = true;
+ declarative = true;
+ config = {
+ allow_remote = true;
+ download_location = "/var/lib/deluge/my-download";
+ daemon_port = 58846;
+ listen_ports = [ 6881 6889 ];
+ };
+ web = {
+ enable = true;
+ port = 3142;
+ };
+ authFile = pkgs.writeText "deluge-auth" ''
+ localclient:a7bef72a890:10
+ andrew:password:10
+ user3:anotherpass:5
+ '';
+ };
+ };
};
testScript = ''
start_all()
- simple.wait_for_unit("deluged")
- simple.wait_for_unit("delugeweb")
- simple.wait_for_open_port("8112")
- declarative.wait_for_unit("network.target")
- declarative.wait_until_succeeds("curl --fail http://simple:8112")
+ simple1.wait_for_unit("deluged")
+ simple2.wait_for_unit("deluged")
+ simple1.wait_for_unit("delugeweb")
+ simple2.wait_for_unit("delugeweb")
+ simple1.wait_for_open_port("8112")
+ simple2.wait_for_open_port("8112")
+ declarative1.wait_for_unit("network.target")
+ declarative2.wait_for_unit("network.target")
+ declarative1.wait_until_succeeds("curl --fail http://simple1:8112")
+ declarative2.wait_until_succeeds("curl --fail http://simple2:8112")
- declarative.wait_for_unit("deluged")
- declarative.wait_for_unit("delugeweb")
- declarative.wait_until_succeeds("curl --fail http://declarative:3142")
- declarative.succeed("deluge-console 'help' | grep -q 'rm - Remove a torrent'")
- declarative.succeed(
- "deluge-console 'connect 127.0.0.1:58846 andrew password; help' | grep -q 'rm - Remove a torrent'"
+ declarative1.wait_for_unit("deluged")
+ declarative2.wait_for_unit("deluged")
+ declarative1.wait_for_unit("delugeweb")
+ declarative2.wait_for_unit("delugeweb")
+ declarative1.wait_until_succeeds("curl --fail http://declarative1:3142")
+ declarative2.wait_until_succeeds("curl --fail http://declarative2:3142")
+ declarative1.succeed(
+ "deluge-console 'connect 127.0.0.1:58846 andrew password; help' | grep -q 'rm.*Remove a torrent'"
+ )
+ declarative2.succeed(
+ "deluge-console 'connect 127.0.0.1:58846 andrew password; help' | grep -q 'rm.*Remove a torrent'"
)
'';
})
diff --git a/pkgs/applications/networking/p2p/deluge/default.nix b/pkgs/applications/networking/p2p/deluge/1/default.nix
similarity index 100%
rename from pkgs/applications/networking/p2p/deluge/default.nix
rename to pkgs/applications/networking/p2p/deluge/1/default.nix
diff --git a/pkgs/applications/networking/p2p/deluge/2/default.nix b/pkgs/applications/networking/p2p/deluge/2/default.nix
new file mode 100644
index 000000000000..755ef4cc33b5
--- /dev/null
+++ b/pkgs/applications/networking/p2p/deluge/2/default.nix
@@ -0,0 +1,44 @@
+{ stdenv, fetchurl, intltool, libtorrentRasterbar, pythonPackages
+, gtk3, gobject-introspection, librsvg, wrapGAppsHook }:
+
+pythonPackages.buildPythonPackage rec {
+ pname = "deluge";
+ version = "2.0.3";
+
+ src = fetchurl {
+ url = "http://download.deluge-torrent.org/source/2.0/${pname}-${version}.tar.xz";
+ sha256 = "14d8kn2pvr1qv8mwqrxmj85jycr73vwfqz12hzag0ararbkfhyky";
+ };
+
+ propagatedBuildInputs = with pythonPackages; [
+ twisted Mako chardet pyxdg pyopenssl service-identity
+ libtorrentRasterbar.dev libtorrentRasterbar.python setuptools
+ setproctitle pillow rencode six zope_interface
+ dbus-python pygobject3 pycairo
+ gtk3 gobject-introspection librsvg
+ ];
+
+ nativeBuildInputs = [ intltool wrapGAppsHook ];
+
+ checkInputs = with pythonPackages; [
+ pytest /* pytest-twisted */ pytestcov mock
+ mccabe pylint
+ ];
+
+ doCheck = false; # until pytest-twisted is packaged
+
+ postInstall = ''
+ mkdir -p $out/share/applications
+ cp -R deluge/ui/data/pixmaps $out/share/
+ cp -R deluge/ui/data/icons $out/share/
+ cp deluge/ui/data/share/applications/deluge.desktop $out/share/applications
+ '';
+
+ meta = with stdenv.lib; {
+ homepage = "https://deluge-torrent.org";
+ description = "Torrent client";
+ license = licenses.gpl3Plus;
+ maintainers = with maintainers; [ domenkozar ebzzry ];
+ platforms = platforms.all;
+ };
+}
diff --git a/pkgs/applications/version-management/sourcehut/builds.nix b/pkgs/applications/version-management/sourcehut/builds.nix
index 79aa586007d3..99907993104f 100644
--- a/pkgs/applications/version-management/sourcehut/builds.nix
+++ b/pkgs/applications/version-management/sourcehut/builds.nix
@@ -4,14 +4,14 @@
, srht, redis, celery, pyyaml, markdown }:
let
- version = "0.52.5";
+ version = "0.56.13";
buildWorker = src: buildGoModule {
inherit src version;
pname = "builds-sr-ht-worker";
goPackagePath = "git.sr.ht/~sircmpwn/builds.sr.ht/worker";
- modSha256 = "1dwp87zsbh4a48q0pacssy329kchrd4sa47c5a1k8smbqn078424";
+ modSha256 = "10is7siscids9qz6jh9m1i17749dafqqkg4b3sslmxaxyn16yj97";
};
in buildPythonPackage rec {
inherit version;
@@ -20,7 +20,7 @@ in buildPythonPackage rec {
src = fetchgit {
url = "https://git.sr.ht/~sircmpwn/builds.sr.ht";
rev = version;
- sha256 = "142aycnary6yfi0y1i3zgpyndi0756fingavcz2dnqi36pkajaaj";
+ sha256 = "uFoS9xaVXsZZf4neZQcUyTqKo2RshOQeifD27kaKSVE=";
};
patches = [
diff --git a/pkgs/applications/version-management/sourcehut/core.nix b/pkgs/applications/version-management/sourcehut/core.nix
index abc2955e2717..76a81ce89683 100644
--- a/pkgs/applications/version-management/sourcehut/core.nix
+++ b/pkgs/applications/version-management/sourcehut/core.nix
@@ -1,18 +1,18 @@
{ stdenv, fetchgit, fetchNodeModules, buildPythonPackage
-, pgpy, flask, bleach, misaka, humanize, markdown, psycopg2, pygments, requests
-, sqlalchemy, cryptography, beautifulsoup4, sqlalchemy-utils, celery, alembic
-, importlib-metadata
+, pgpy, flask, bleach, misaka, humanize, html5lib, markdown, psycopg2, pygments
+, requests, sqlalchemy, cryptography, beautifulsoup4, sqlalchemy-utils, prometheus_client
+, celery, alembic, importlib-metadata
, sassc, nodejs
, writeText }:
buildPythonPackage rec {
pname = "srht";
- version = "0.57.2";
+ version = "0.59.13";
src = fetchgit {
url = "https://git.sr.ht/~sircmpwn/core.sr.ht";
rev = version;
- sha256 = "11rfpb0wf1xzrhcnpahaghmi5626snzph0vsbxlmmqx75wf0p6mf";
+ sha256 = "5jc6MtG/cBry05Sq51UAFzSBvKKkdNTA67UIDvJt9uU=";
};
node_modules = fetchNodeModules {
@@ -36,6 +36,7 @@ buildPythonPackage rec {
bleach
misaka
humanize
+ html5lib
markdown
psycopg2
pygments
@@ -44,6 +45,7 @@ buildPythonPackage rec {
cryptography
beautifulsoup4
sqlalchemy-utils
+ prometheus_client
# Unofficial runtime dependencies?
celery
diff --git a/pkgs/applications/version-management/sourcehut/dispatch.nix b/pkgs/applications/version-management/sourcehut/dispatch.nix
index 2ca40c314080..52a49d4a0845 100644
--- a/pkgs/applications/version-management/sourcehut/dispatch.nix
+++ b/pkgs/applications/version-management/sourcehut/dispatch.nix
@@ -4,12 +4,12 @@
buildPythonPackage rec {
pname = "dispatchsrht";
- version = "0.13.3";
+ version = "0.14.1";
src = fetchgit {
url = "https://git.sr.ht/~sircmpwn/dispatch.sr.ht";
rev = version;
- sha256 = "08asayfwpzafscpli5grx1p0y1ryz7pqkznf5bd9j8ir2iyhbc10";
+ sha256 = "eJ+oHs9m74Q8V6fUBLOA1ksUiwdaR1/Bxlf3jcexdkA=";
};
patches = [
diff --git a/pkgs/applications/version-management/sourcehut/git.nix b/pkgs/applications/version-management/sourcehut/git.nix
index 09cdd061b38d..de4656e58816 100644
--- a/pkgs/applications/version-management/sourcehut/git.nix
+++ b/pkgs/applications/version-management/sourcehut/git.nix
@@ -1,10 +1,10 @@
{ stdenv, fetchgit, buildPythonPackage
, python
, buildGoModule
-, srht, pygit2, scmsrht }:
+, srht, minio, pygit2, scmsrht }:
let
- version = "0.43.3";
+ version = "0.50.3";
buildShell = src: buildGoModule {
inherit src version;
@@ -44,7 +44,7 @@ in buildPythonPackage rec {
src = fetchgit {
url = "https://git.sr.ht/~sircmpwn/git.sr.ht";
rev = version;
- sha256 = "1f9wfyri85bq4zi9xkbfcfb69q4abh0hz7p3lghj460hh9zxc57w";
+ sha256 = "dmcTee3hp6ZkwwunG4ouEVmCxQ1a9LfQ7oWpHxnKumc=";
};
patches = [
@@ -55,6 +55,7 @@ in buildPythonPackage rec {
propagatedBuildInputs = [
srht
+ minio
pygit2
scmsrht
];
diff --git a/pkgs/applications/version-management/sourcehut/hg.nix b/pkgs/applications/version-management/sourcehut/hg.nix
index 040d7783d472..ee6dd2707591 100644
--- a/pkgs/applications/version-management/sourcehut/hg.nix
+++ b/pkgs/applications/version-management/sourcehut/hg.nix
@@ -4,12 +4,12 @@
buildPythonPackage rec {
pname = "hgsrht";
- version = "0.21.1";
+ version = "0.26.0";
src = fetchhg {
url = "https://hg.sr.ht/~sircmpwn/hg.sr.ht";
rev = version;
- sha256 = "19r8zcy4xf9imqifqw3b7ylxd46i025ncns69kn5xp11damilz66";
+ sha256 = "kX0KZSEzYQ/hxL2vKh+mpaRuG16qbBKN2Xwp+e9pTxs=";
};
patches = [
diff --git a/pkgs/applications/version-management/sourcehut/lists.nix b/pkgs/applications/version-management/sourcehut/lists.nix
index dc2573bd2451..1d915e915b10 100644
--- a/pkgs/applications/version-management/sourcehut/lists.nix
+++ b/pkgs/applications/version-management/sourcehut/lists.nix
@@ -4,12 +4,12 @@
buildPythonPackage rec {
pname = "listssrht";
- version = "0.40.3";
+ version = "0.41.8";
src = fetchgit {
url = "https://git.sr.ht/~sircmpwn/lists.sr.ht";
rev = version;
- sha256 = "1s736i5wm04pqa5k7455bdjdi7vjgvq32q1v6mdsp1w7jhgy1ags";
+ sha256 = "Gmt6ttupyhZhpyH/IASEt8SZGrlQmEEtV5bE11yIiXQ=";
};
patches = [
diff --git a/pkgs/applications/version-management/sourcehut/man.nix b/pkgs/applications/version-management/sourcehut/man.nix
index 753ba46d6c33..a150b774f614 100644
--- a/pkgs/applications/version-management/sourcehut/man.nix
+++ b/pkgs/applications/version-management/sourcehut/man.nix
@@ -4,12 +4,12 @@
buildPythonPackage rec {
pname = "mansrht";
- version = "0.14.1";
+ version = "0.14.7";
src = fetchgit {
url = "https://git.sr.ht/~sircmpwn/man.sr.ht";
rev = version;
- sha256 = "13yar0sa24jyiq0l4p4bgq6p5crj148f26sxwyi37g76jqba4rfi";
+ sha256 = "CKXWVXr2P1D6Nz9/S5rOkuOi9piy66RreQv2RQ0KSfs=";
};
patches = [
diff --git a/pkgs/applications/version-management/sourcehut/meta.nix b/pkgs/applications/version-management/sourcehut/meta.nix
index a2a23367a332..5b75b5818d72 100644
--- a/pkgs/applications/version-management/sourcehut/meta.nix
+++ b/pkgs/applications/version-management/sourcehut/meta.nix
@@ -1,16 +1,16 @@
{ stdenv, fetchgit, buildPythonPackage
, python
, pgpy, srht, redis, bcrypt, qrcode, stripe, zxcvbn, alembic, pystache
-, sshpubkeys, weasyprint, prometheus_client }:
+, sshpubkeys, weasyprint }:
buildPythonPackage rec {
pname = "metasrht";
- version = "0.41.10";
+ version = "0.42.13";
src = fetchgit {
url = "https://git.sr.ht/~sircmpwn/meta.sr.ht";
rev = version;
- sha256 = "1srzrajgwq85kjryxykj708m2c98r6a84x4k4a5grwznqw3mwm6p";
+ sha256 = "p7WgnfOsX09YxJJclHwdIky/jYkTOxibbYmXwcmE2S4=";
};
nativeBuildInputs = srht.nativeBuildInputs;
@@ -27,7 +27,6 @@ buildPythonPackage rec {
pystache
sshpubkeys
weasyprint
- prometheus_client
];
patches = [
diff --git a/pkgs/applications/version-management/sourcehut/paste.nix b/pkgs/applications/version-management/sourcehut/paste.nix
index bd5a9ef5fc6d..e05dec5d6aaa 100644
--- a/pkgs/applications/version-management/sourcehut/paste.nix
+++ b/pkgs/applications/version-management/sourcehut/paste.nix
@@ -4,12 +4,12 @@
buildPythonPackage rec {
pname = "pastesrht";
- version = "0.9.2";
+ version = "0.10.3";
src = fetchgit {
url = "https://git.sr.ht/~sircmpwn/paste.sr.ht";
rev = version;
- sha256 = "0hiv607a7446dba524kblmpswlcz0z4i1jr49ng7g90nhpsk8dy4";
+ sha256 = "i1M4L5NG152zkIEFj2vDHa9lr5aE1ioToDVPpkIqemk=";
};
patches = [
diff --git a/pkgs/applications/version-management/sourcehut/scm.nix b/pkgs/applications/version-management/sourcehut/scm.nix
index f2ba55951e5b..e3210673cb73 100644
--- a/pkgs/applications/version-management/sourcehut/scm.nix
+++ b/pkgs/applications/version-management/sourcehut/scm.nix
@@ -4,12 +4,12 @@
buildPythonPackage rec {
pname = "scmsrht";
- version = "0.18.1";
+ version = "0.19.11";
src = fetchgit {
url = "https://git.sr.ht/~sircmpwn/scm.sr.ht";
rev = version;
- sha256 = "1f0h8vbbqx34v1rgzqjkgbf0z7jhnp8hdlzmrxwhs74kj6zjb134";
+ sha256 = "a0JIZcO/3op409t+jq4/fImuppuGqfGxBPgBh67DGHM=";
};
nativeBuildInputs = srht.nativeBuildInputs;
diff --git a/pkgs/applications/version-management/sourcehut/todo.nix b/pkgs/applications/version-management/sourcehut/todo.nix
index 506b287bc921..3a5bc2c105ea 100644
--- a/pkgs/applications/version-management/sourcehut/todo.nix
+++ b/pkgs/applications/version-management/sourcehut/todo.nix
@@ -5,12 +5,12 @@
buildPythonPackage rec {
pname = "todosrht";
- version = "0.55.3";
+ version = "0.57.14";
src = fetchgit {
url = "https://git.sr.ht/~sircmpwn/todo.sr.ht";
rev = version;
- sha256 = "1j82yxdnag0q6rp0rpiq3ccn5maa1k58j2f1ilcsxf1gr13pycf5";
+ sha256 = "nlTf7KV6vjqqVEXZ6OOZ5dAj1iHTDPYj4DnAD2hGp5c=";
};
patches = [
diff --git a/pkgs/build-support/alternatives/blas/default.nix b/pkgs/build-support/alternatives/blas/default.nix
index 1b8783438662..b1dadf23c078 100644
--- a/pkgs/build-support/alternatives/blas/default.nix
+++ b/pkgs/build-support/alternatives/blas/default.nix
@@ -59,7 +59,7 @@ stdenv.mkDerivation {
unpackPhase = "src=$PWD";
installPhase = (''
- mkdir -p $out/lib $dev/include $dev/include/pkgconfig
+ mkdir -p $out/lib $dev/include $dev/lib/pkgconfig
libblas="${lib.getLib blasProvider}/lib/libblas${stdenv.hostPlatform.extensions.sharedLibrary}"
diff --git a/pkgs/development/libraries/libtorrent-rasterbar/default.nix b/pkgs/development/libraries/libtorrent-rasterbar/1.1/default.nix
similarity index 82%
rename from pkgs/development/libraries/libtorrent-rasterbar/default.nix
rename to pkgs/development/libraries/libtorrent-rasterbar/1.1/default.nix
index f910964a2cac..b2c958795f3e 100644
--- a/pkgs/development/libraries/libtorrent-rasterbar/default.nix
+++ b/pkgs/development/libraries/libtorrent-rasterbar/1.1/default.nix
@@ -1,9 +1,9 @@
{ stdenv, lib, fetchFromGitHub, pkgconfig, automake, autoconf
-, zlib, boost, openssl, libtool, python, libiconv, geoip, ncurses
+, zlib, boost, openssl, libtool, python, libiconv, ncurses
}:
let
- version = "1.2.5";
+ version = "1.1.11";
formattedVersion = lib.replaceChars ["."] ["_"] version;
# Make sure we override python, so the correct version is chosen
@@ -17,14 +17,13 @@ in stdenv.mkDerivation {
src = fetchFromGitHub {
owner = "arvidn";
repo = "libtorrent";
- rev = "libtorrent-${formattedVersion}";
+ rev = "libtorrent_${formattedVersion}";
sha256 = "0nwdsv6d2gkdsh7l5a46g6cqx27xwh3msify5paf02l1qzjy4s5l";
};
enableParallelBuilding = true;
nativeBuildInputs = [ automake autoconf libtool pkgconfig ];
- buildInputs = [ boostPython openssl zlib python libiconv geoip ncurses ];
-
+ buildInputs = [ boostPython openssl zlib python libiconv ncurses ];
preConfigure = "./autotool.sh";
postInstall = ''
@@ -36,11 +35,9 @@ in stdenv.mkDerivation {
configureFlags = [
"--enable-python-binding"
- "--with-libgeoip=system"
"--with-libiconv=yes"
"--with-boost=${boostPython.dev}"
"--with-boost-libdir=${boostPython.out}/lib"
- "--with-libiconv=yes"
];
meta = with stdenv.lib; {
diff --git a/pkgs/development/libraries/libtorrent-rasterbar/1.2/default.nix b/pkgs/development/libraries/libtorrent-rasterbar/1.2/default.nix
new file mode 100644
index 000000000000..8b9992ec66d4
--- /dev/null
+++ b/pkgs/development/libraries/libtorrent-rasterbar/1.2/default.nix
@@ -0,0 +1,50 @@
+{ stdenv, lib, fetchFromGitHub, pkgconfig, automake, autoconf
+, zlib, boost, openssl, libtool, python, libiconv, ncurses
+}:
+
+let
+ version = "1.2.5";
+ formattedVersion = lib.replaceChars ["."] ["_"] version;
+
+ # Make sure we override python, so the correct version is chosen
+ # for the bindings, if overridden
+ boostPython = boost.override { enablePython = true; inherit python; };
+
+in stdenv.mkDerivation {
+ pname = "libtorrent-rasterbar";
+ inherit version;
+
+ src = fetchFromGitHub {
+ owner = "arvidn";
+ repo = "libtorrent";
+ rev = "libtorrent-${formattedVersion}";
+ sha256 = "0y2fzqbvb1bxvf93d7sphwzxih6j40p5p3fay943k26w0nrq802w";
+ };
+
+ enableParallelBuilding = true;
+ nativeBuildInputs = [ automake autoconf libtool pkgconfig ];
+ buildInputs = [ boostPython openssl zlib python libiconv ncurses ];
+ preConfigure = "./autotool.sh";
+
+ postInstall = ''
+ moveToOutput "include" "$dev"
+ moveToOutput "lib/${python.libPrefix}" "$python"
+ '';
+
+ outputs = [ "out" "dev" "python" ];
+
+ configureFlags = [
+ "--enable-python-binding"
+ "--with-libiconv=yes"
+ "--with-boost=${boostPython.dev}"
+ "--with-boost-libdir=${boostPython.out}/lib"
+ ];
+
+ meta = with stdenv.lib; {
+ homepage = "https://libtorrent.org/";
+ description = "A C++ BitTorrent implementation focusing on efficiency and scalability";
+ license = licenses.bsd3;
+ maintainers = [ maintainers.phreedom ];
+ platforms = platforms.unix;
+ };
+}
diff --git a/pkgs/development/tools/packet-cli/default.nix b/pkgs/development/tools/packet-cli/default.nix
new file mode 100644
index 000000000000..52bb0f158446
--- /dev/null
+++ b/pkgs/development/tools/packet-cli/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, buildGoModule, fetchFromGitHub }:
+
+buildGoModule rec {
+ pname = "packet-cli";
+ version = "0.0.6";
+
+ src = fetchFromGitHub {
+ owner = "packethost";
+ repo = pname;
+ rev = version;
+ sha256 = "17f3ax7pjm5k93cxj7fd8hwr4id1lbzz9pkl2xflpxydi89bwdfz";
+ };
+
+ modSha256 = "1hyv1vxk1rsr3jq3b08q0487sqf3y0km3mlwvqivib1y6hrknnnr";
+
+ meta = with stdenv.lib; {
+ description = "Official Packet CLI";
+ homepage = "https://github.com/packethost/packet-cli";
+ license = licenses.mit;
+ maintainers = with maintainers; [ filalex77 ];
+ platforms = platforms.all;
+ };
+}
diff --git a/pkgs/development/tools/yq-go/default.nix b/pkgs/development/tools/yq-go/default.nix
index 9041667a0fc7..8bcfaa2e46ac 100644
--- a/pkgs/development/tools/yq-go/default.nix
+++ b/pkgs/development/tools/yq-go/default.nix
@@ -2,16 +2,16 @@
buildGoModule rec {
pname = "yq-go";
- version = "3.2.1";
+ version = "3.3.0";
src = fetchFromGitHub {
owner = "mikefarah";
rev = version;
repo = "yq";
- sha256 = "1n20m1zizbkgzag4676fvf16h6f8vll6pniblj7haqdwvnza8zwd";
+ sha256 = "1jll5nmskvs61031h3sizhv3scv8znrr9apyc4qlxcp4jiv7xpmp";
};
- modSha256 = "0hbazc6hf3zrni25lpbyi36sbxyabbrpi591gkqwxgr9hdbdpcg9";
+ modSha256 = "1m7sha6kwis1a00il1iigb9lxxh5m2myj9ps20s816m0b9bhd43v";
meta = with lib; {
description = "Portable command-line YAML processor";
diff --git a/pkgs/tools/security/ghidra/default.nix b/pkgs/tools/security/ghidra/default.nix
index 63fbca8f4468..d31e1f2c2758 100644
--- a/pkgs/tools/security/ghidra/default.nix
+++ b/pkgs/tools/security/ghidra/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, unzip, lib, makeWrapper, autoPatchelfHook
+{ stdenv, fetchzip, lib, makeWrapper, autoPatchelfHook
, openjdk11, pam, makeDesktopItem, icoutils
}: let
@@ -16,23 +16,22 @@
in stdenv.mkDerivation {
- name = "ghidra-9.1";
+ name = "ghidra-9.1.2";
- src = fetchurl {
- url = "https://ghidra-sre.org/ghidra_9.1_PUBLIC_20191023.zip";
- sha256 = "0pl7s59008gvgwz4mxp7rz3xr3vaa12a6s5zvx2yr9jxx3gk1l99";
+ src = fetchzip {
+ url = "https://ghidra-sre.org/ghidra_9.1.2_PUBLIC_20200212.zip";
+ sha256 = "0j48pijypg44bw06azbrgfqjkigb13ljfdxib70sxwyqia3vkbbm";
};
nativeBuildInputs = [
makeWrapper
autoPatchelfHook
- unzip
+ icoutils
];
buildInputs = [
stdenv.cc.cc.lib
pam
- icoutils
];
dontStrip = true;
@@ -42,7 +41,7 @@ in stdenv.mkDerivation {
mkdir -p "${pkg_path}" "$out/share/applications"
cp -a * "${pkg_path}"
ln -s ${desktopItem}/share/applications/* $out/share/applications
-
+
icotool -x "${pkg_path}/support/ghidra.ico"
rm ghidra_4_40x40x32.png
for f in ghidra_*.png; do
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 34ae3ef1d785..40edd160b231 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -2839,9 +2839,15 @@ in
ddrutility = callPackage ../tools/system/ddrutility { };
- deluge = callPackage ../applications/networking/p2p/deluge {
- pythonPackages = python2Packages;
+ deluge-2_x = callPackage ../applications/networking/p2p/deluge/2 {
+ pythonPackages = python3Packages;
+ libtorrentRasterbar = libtorrentRasterbar.override { python = python3; };
};
+ deluge-1_x = callPackage ../applications/networking/p2p/deluge/1 {
+ pythonPackages = python2Packages;
+ libtorrentRasterbar = libtorrentRasterbar-1_1_x;
+ };
+ deluge = deluge-2_x;
desktop-file-utils = callPackage ../tools/misc/desktop-file-utils { };
@@ -13242,7 +13248,11 @@ in
libtomcrypt = callPackage ../development/libraries/libtomcrypt { };
- libtorrentRasterbar = callPackage ../development/libraries/libtorrent-rasterbar { };
+ libtorrentRasterbar-1_2_x = callPackage ../development/libraries/libtorrent-rasterbar/1.2 { };
+
+ libtorrentRasterbar-1_1_x = callPackage ../development/libraries/libtorrent-rasterbar/1.1 { };
+
+ libtorrentRasterbar = libtorrentRasterbar-1_2_x;
# this is still the new version of the old API
libtoxcore-new = callPackage ../development/libraries/libtoxcore/new-api.nix { };
@@ -21132,6 +21142,8 @@ in
packet = callPackage ../development/tools/packet { };
+ packet-cli = callPackage ../development/tools/packet-cli { };
+
pb_cli = callPackage ../tools/misc/pb_cli {};
capture = callPackage ../tools/misc/capture {};