From b2aaa5f82c6d078bc38d0d8ab0e66d7be449caec Mon Sep 17 00:00:00 2001 From: Jean-Paul Calderone <exarkun@twistedmatrix.com> Date: Wed, 11 Dec 2019 13:57:19 -0500 Subject: [PATCH] re-use upstream tahoe-lafs nix packaging instead of duplicating it --- default.nix | 12 +++++++++-- overlays.nix | 2 +- tahoe-lafs.nix | 55 ++++++++------------------------------------------ 3 files changed, 19 insertions(+), 50 deletions(-) diff --git a/default.nix b/default.nix index 046aae0..868ef99 100644 --- a/default.nix +++ b/default.nix @@ -1,2 +1,10 @@ -{ pkgs ? import ./nixpkgs.nix { }, hypothesisProfile ? null, collectCoverage ? false, testSuite ? null, trialArgs ? null }: -pkgs.python27Packages.zkapauthorizer.override { inherit hypothesisProfile collectCoverage testSuite trialArgs; } +{ pkgs ? import <nixpkgs> { } +, hypothesisProfile ? null +, collectCoverage ? false +, testSuite ? null +, trialArgs ? null +}: +let pkgs' = pkgs.extend (import ./overlays.nix); +in pkgs'.python27Packages.zkapauthorizer.override { + inherit hypothesisProfile collectCoverage testSuite trialArgs; +} diff --git a/overlays.nix b/overlays.nix index 06a2aab..c3f9f6a 100644 --- a/overlays.nix +++ b/overlays.nix @@ -20,7 +20,7 @@ self: super: { # tahoe-lafs in nixpkgs is packaged as an application! so we have to # re-package it ourselves as a library. - tahoe-lafs = python-self.callPackage ./tahoe-lafs.nix { }; + tahoe-lafs = python-self.callPackage ((import ./tahoe-lafs.nix) + "/nix") { }; # we depend on the privacypass python library, a set of bindings to the # challenge-bypass-ristretto Rust library diff --git a/tahoe-lafs.nix b/tahoe-lafs.nix index c75f6db..c305267 100644 --- a/tahoe-lafs.nix +++ b/tahoe-lafs.nix @@ -1,48 +1,9 @@ -{ fetchFromGitHub, nettools, python -, twisted, foolscap, nevow, zfec -, setuptools, setuptoolsTrial, pyasn1, zope_interface -, service-identity, pyyaml, magic-wormhole, treq, appdirs -, beautifulsoup4, eliot, autobahn, cryptography -}: -python.pkgs.buildPythonPackage rec { - version = "1.14.0.dev"; - name = "tahoe-lafs-${version}"; - src = fetchFromGitHub { - owner = "LeastAuthority"; +let + pkgs = import <nixpkgs> {}; +in + pkgs.fetchFromGitHub { + owner = "tahoe-lafs"; repo = "tahoe-lafs"; - # A branch of master with the storage plugin web resource reuse issue - # resolved. https://tahoe-lafs.org/trac/tahoe-lafs/ticket/3265 - rev = "1fef61981940bbd63ffc4242c3b589258622d117"; - sha256 = "0kgkg7wd0nkj8f5p46341vjkr6nz3kf0fimd44d9kypm4rn8xczv"; - }; - - postPatch = '' - sed -i "src/allmydata/util/iputil.py" \ - -es"|_linux_path = '/sbin/ifconfig'|_linux_path = '${nettools}/bin/ifconfig'|g" - - # Chroots don't have /etc/hosts and /etc/resolv.conf, so work around - # that. - for i in $(find src/allmydata/test -type f) - do - sed -i "$i" -e"s/localhost/127.0.0.1/g" - done - ''; - - - propagatedBuildInputs = with python.pkgs; [ - twisted foolscap nevow zfec appdirs - setuptoolsTrial pyasn1 zope_interface - service-identity pyyaml magic-wormhole treq - beautifulsoup4 eliot autobahn cryptography setuptools - ]; - - checkInputs = with python.pkgs; [ - hypothesis - testtools - fixtures - ]; - - checkPhase = '' - $out/bin/tahoe --version - ''; -} + rev = "34aeefd3ddbf28dafbc3477e52461eafa53b545d"; + sha256 = "0l8n4njbzgiwmn3qsmvzyzqlb0y9bj9g2jvpdynvsn1ggxrqmvsq"; + } \ No newline at end of file -- GitLab