Merge pull request #14647 from MostAwesomeDude/tahoe

Tahoe-LAFS improvements
This commit is contained in:
zimbatm 2016-04-13 16:39:53 +01:00
commit 04267ed630
3 changed files with 33 additions and 8 deletions

View File

@ -235,6 +235,7 @@
mog = "Matthew O'Gorman <mog-lists@rldn.net>"; mog = "Matthew O'Gorman <mog-lists@rldn.net>";
moretea = "Maarten Hoogendoorn <maarten@moretea.nl>"; moretea = "Maarten Hoogendoorn <maarten@moretea.nl>";
mornfall = "Petr Ročkai <me@mornfall.net>"; mornfall = "Petr Ročkai <me@mornfall.net>";
MostAwesomeDude = "Corbin Simpson <cds@corbinsimpson.com>";
MP2E = "Cray Elliott <MP2E@archlinux.us>"; MP2E = "Cray Elliott <MP2E@archlinux.us>";
msackman = "Matthew Sackman <matthew@wellquite.org>"; msackman = "Matthew Sackman <matthew@wellquite.org>";
mschristiansen = "Mikkel Christiansen <mikkel@rheosystems.com>"; mschristiansen = "Mikkel Christiansen <mikkel@rheosystems.com>";

View File

@ -26,6 +26,15 @@ in
The port on which the introducer will listen. The port on which the introducer will listen.
''; '';
}; };
tub.location = mkOption {
default = null;
type = types.nullOr types.str;
description = ''
The external location that the introducer should listen on.
If specified, the port should be included.
'';
};
package = mkOption { package = mkOption {
default = pkgs.tahoelafs; default = pkgs.tahoelafs;
defaultText = "pkgs.tahoelafs"; defaultText = "pkgs.tahoelafs";
@ -60,6 +69,18 @@ in
system to listen on a different port. system to listen on a different port.
''; '';
}; };
tub.location = mkOption {
default = null;
type = types.nullOr types.str;
description = ''
The external location that the node should listen on.
This is the setting to tweak if there are multiple interfaces
and you want to alter which interface Tahoe is advertising.
If specified, the port should be included.
'';
};
web.port = mkOption { web.port = mkOption {
default = 3456; default = 3456;
type = types.int; type = types.int;
@ -144,6 +165,8 @@ in
[node] [node]
nickname = ${settings.nickname} nickname = ${settings.nickname}
tub.port = ${toString settings.tub.port} tub.port = ${toString settings.tub.port}
${optionalString (settings.tub.location != null)
"tub.location = ${settings.tub.location}"}
''; '';
}); });
# Actually require Tahoe, so that we will have it installed. # Actually require Tahoe, so that we will have it installed.
@ -209,6 +232,8 @@ in
[node] [node]
nickname = ${settings.nickname} nickname = ${settings.nickname}
tub.port = ${toString settings.tub.port} tub.port = ${toString settings.tub.port}
${optionalString (settings.tub.location != null)
"tub.location = ${settings.tub.location}"}
# This is a Twisted endpoint. Twisted Web doesn't work on # This is a Twisted endpoint. Twisted Web doesn't work on
# non-TCP. ~ C. # non-TCP. ~ C.
web.port = tcp:${toString settings.web.port} web.port = tcp:${toString settings.web.port}

View File

@ -6,13 +6,13 @@
# some loss of functionality because of it. # some loss of functionality because of it.
pythonPackages.buildPythonApplication rec { pythonPackages.buildPythonApplication rec {
version = "1.10.2"; version = "1.11.0";
name = "tahoe-lafs-${version}"; name = "tahoe-lafs-${version}";
namePrefix = ""; namePrefix = "";
src = fetchurl { src = fetchurl {
url = "http://tahoe-lafs.org/source/tahoe-lafs/releases/allmydata-tahoe-${version}.tar.bz2"; url = "https://tahoe-lafs.org/downloads/tahoe-lafs-${version}.tar.bz2";
sha256 = "1rvv0ik5biy7ji8pg56v0qycnggzr3k6dbg88n555nb6r4cxgmgy"; sha256 = "0hrp87rarbmmpnrxk91s83h6irkykds3pl263dagcddbdl5inqdi";
}; };
patchPhase = '' patchPhase = ''
@ -30,7 +30,6 @@ pythonPackages.buildPythonApplication rec {
sed -i 's/"pycrypto.*"/"pycrypto"/' src/allmydata/_auto_deps.py sed -i 's/"pycrypto.*"/"pycrypto"/' src/allmydata/_auto_deps.py
''; '';
# Some tests want this + http://tahoe-lafs.org/source/tahoe-lafs/deps/tahoe-dep-sdists/mock-0.6.0.tar.bz2
buildInputs = with pythonPackages; [ unzip numpy mock ]; buildInputs = with pythonPackages; [ unzip numpy mock ];
# The `backup' command requires `sqlite3'. # The `backup' command requires `sqlite3'.
@ -48,8 +47,8 @@ pythonPackages.buildPythonApplication rec {
''; '';
checkPhase = '' checkPhase = ''
# TODO: broken with wheels # Still broken. ~ C.
#${pythonPackages.python.interpreter} setup.py trial # trial allmydata
''; '';
meta = { meta = {
@ -60,9 +59,9 @@ pythonPackages.buildPythonApplication rec {
such a way that it remains available even when some of the peers such a way that it remains available even when some of the peers
are unavailable, malfunctioning, or malicious. are unavailable, malfunctioning, or malicious.
''; '';
homepage = http://allmydata.org/; homepage = http://tahoe-lafs.org/;
license = [ lib.licenses.gpl2Plus /* or */ "TGPPLv1+" ]; license = [ lib.licenses.gpl2Plus /* or */ "TGPPLv1+" ];
maintainers = [ lib.maintainers.simons ]; maintainers = with lib.maintainers; [ simons MostAwesomeDude ];
platforms = lib.platforms.gnu; # arbitrary choice platforms = lib.platforms.gnu; # arbitrary choice
}; };
} }