From aa248752074d7951745b67a2789ee183f827504d Mon Sep 17 00:00:00 2001 From: John Ericson Date: Fri, 16 Oct 2020 00:04:51 -0400 Subject: [PATCH 1/2] ipfs: prepare to add 0.9 in addition (cherry picked from commit 27949d611a7cca14e21438df725f7c6356f458ac) --- .../networking/ipfs/{default.nix => 0.8.nix} | 0 pkgs/applications/networking/ipfs/0.9.nix | 45 +++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 +- 3 files changed, 46 insertions(+), 1 deletion(-) rename pkgs/applications/networking/ipfs/{default.nix => 0.8.nix} (100%) create mode 100644 pkgs/applications/networking/ipfs/0.9.nix diff --git a/pkgs/applications/networking/ipfs/default.nix b/pkgs/applications/networking/ipfs/0.8.nix similarity index 100% rename from pkgs/applications/networking/ipfs/default.nix rename to pkgs/applications/networking/ipfs/0.8.nix diff --git a/pkgs/applications/networking/ipfs/0.9.nix b/pkgs/applications/networking/ipfs/0.9.nix new file mode 100644 index 00000000000..1b648108e78 --- /dev/null +++ b/pkgs/applications/networking/ipfs/0.9.nix @@ -0,0 +1,45 @@ +{ lib, buildGoModule, fetchurl, nixosTests }: + +buildGoModule rec { + pname = "ipfs"; + version = "0.8.0"; + rev = "v${version}"; + + # go-ipfs makes changes to it's source tarball that don't match the git source. + src = fetchurl { + url = "https://github.com/ipfs/go-ipfs/releases/download/${rev}/go-ipfs-source.tar.gz"; + sha256 = "sha256-uK3+Ekr5AM6mmGmjFSj1Rotm5pbH657BYUlP9B39WEw="; + }; + + # tarball contains multiple files/directories + postUnpack = '' + mkdir ipfs-src + shopt -s extglob + mv !(ipfs-src) ipfs-src || true + cd ipfs-src + ''; + + sourceRoot = "."; + + subPackages = [ "cmd/ipfs" ]; + + passthru.tests.ipfs = nixosTests.ipfs; + + vendorSha256 = null; + + postInstall = '' + install --mode=444 -D misc/systemd/ipfs.service $out/etc/systemd/system/ipfs.service + install --mode=444 -D misc/systemd/ipfs-api.socket $out/etc/systemd/system/ipfs-api.socket + install --mode=444 -D misc/systemd/ipfs-gateway.socket $out/etc/systemd/system/ipfs-gateway.socket + substituteInPlace $out/etc/systemd/system/ipfs.service \ + --replace /usr/bin/ipfs $out/bin/ipfs + ''; + + meta = with lib; { + description = "A global, versioned, peer-to-peer filesystem"; + homepage = "https://ipfs.io/"; + license = licenses.mit; + platforms = platforms.unix; + maintainers = with maintainers; [ fpletz ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 25cb7fb4a94..9189d746894 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5802,7 +5802,7 @@ in iperf3 = callPackage ../tools/networking/iperf/3.nix { }; iperf = iperf3; - ipfs = callPackage ../applications/networking/ipfs { }; + ipfs = callPackage ../applications/networking/ipfs/0.8.nix { }; ipfs-migrator = callPackage ../applications/networking/ipfs-migrator { }; ipfs-cluster = callPackage ../applications/networking/ipfs-cluster { }; From 0b2fbb2feffbb67c4d34718dc6aa818a2de364c2 Mon Sep 17 00:00:00 2001 From: John Ericson Date: Fri, 2 Jul 2021 14:41:23 +0000 Subject: [PATCH 2/2] ipfs: Add 0.9.0 in addition IPFS evolves quite fast. The network protocol is compatible, but we don't want to force migrations on stable, so we add a new version instead. See #100676 for last time we did this. (Adapted from from commit d96ccfaf16c5454aaa920ff39b38c81bcf104a3a) --- pkgs/applications/networking/ipfs/0.9.nix | 4 ++-- pkgs/top-level/all-packages.nix | 6 +++++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/networking/ipfs/0.9.nix b/pkgs/applications/networking/ipfs/0.9.nix index 1b648108e78..e96602a54c5 100644 --- a/pkgs/applications/networking/ipfs/0.9.nix +++ b/pkgs/applications/networking/ipfs/0.9.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "ipfs"; - version = "0.8.0"; + version = "0.9.0"; rev = "v${version}"; # go-ipfs makes changes to it's source tarball that don't match the git source. src = fetchurl { url = "https://github.com/ipfs/go-ipfs/releases/download/${rev}/go-ipfs-source.tar.gz"; - sha256 = "sha256-uK3+Ekr5AM6mmGmjFSj1Rotm5pbH657BYUlP9B39WEw="; + sha256 = "sha256:1fyffnw1d860w7gwm6ijbgrh68297z5bmvww8yqfshm3xgvcs6bf"; }; # tarball contains multiple files/directories diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9189d746894..93967ff85c8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5802,7 +5802,11 @@ in iperf3 = callPackage ../tools/networking/iperf/3.nix { }; iperf = iperf3; - ipfs = callPackage ../applications/networking/ipfs/0.8.nix { }; + ipfs = ipfs_0_8; + ipfs_latest = ipfs_0_9; + ipfs_0_8 = callPackage ../applications/networking/ipfs/0.8.nix { }; + ipfs_0_9 = callPackage ../applications/networking/ipfs/0.9.nix { }; + ipfs-migrator = callPackage ../applications/networking/ipfs-migrator { }; ipfs-cluster = callPackage ../applications/networking/ipfs-cluster { };