diff options
author | Pol Dellaiera <pol.dellaiera@protonmail.com> | 2024-02-23 20:12:41 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-23 20:12:41 +0100 |
commit | f9ef0053c54f953f6420d6d7180059e23eaad90b (patch) | |
tree | b773c709ac052583d4749ba50ad87a6b58751134 /pkgs/applications | |
parent | bb21c060aad9021330da2931058855949f5a134e (diff) | |
parent | ce0a47cd2ce845d82fc85bae68c73101c73e31fb (diff) | |
download | nixlib-f9ef0053c54f953f6420d6d7180059e23eaad90b.tar nixlib-f9ef0053c54f953f6420d6d7180059e23eaad90b.tar.gz nixlib-f9ef0053c54f953f6420d6d7180059e23eaad90b.tar.bz2 nixlib-f9ef0053c54f953f6420d6d7180059e23eaad90b.tar.lz nixlib-f9ef0053c54f953f6420d6d7180059e23eaad90b.tar.xz nixlib-f9ef0053c54f953f6420d6d7180059e23eaad90b.tar.zst nixlib-f9ef0053c54f953f6420d6d7180059e23eaad90b.zip |
Merge pull request #288401 from katexochen/bees/refactor
bee: refactor & update; bee{-unstable,-clef}: remove; maintainers: remove attila-lendvai
Diffstat (limited to 'pkgs/applications')
5 files changed, 25 insertions, 217 deletions
diff --git a/pkgs/applications/networking/bee/0001-clef-service-accept-default-CONFIGDIR-from-the-envir.patch b/pkgs/applications/networking/bee/0001-clef-service-accept-default-CONFIGDIR-from-the-envir.patch deleted file mode 100644 index fb551646b7c6..000000000000 --- a/pkgs/applications/networking/bee/0001-clef-service-accept-default-CONFIGDIR-from-the-envir.patch +++ /dev/null @@ -1,44 +0,0 @@ -From 04933c578f51aa1f536991318dc5aede57f81c0d Mon Sep 17 00:00:00 2001 -From: Attila Lendvai <attila@lendvai.name> -Date: Sat, 30 Jan 2021 14:02:02 +0100 -Subject: [PATCH 1/2] clef-service: accept default CONFIGDIR from the - environment - ---- - packaging/bee-clef-service | 15 ++++++++++----- - 1 file changed, 10 insertions(+), 5 deletions(-) - -diff --git a/packaging/bee-clef-service b/packaging/bee-clef-service -index 10bcd92..34c7edd 100755 ---- a/packaging/bee-clef-service -+++ b/packaging/bee-clef-service -@@ -1,16 +1,21 @@ - #!/usr/bin/env sh - - start() { -- KEYSTORE=/var/lib/bee-clef/keystore -- CONFIGDIR=/var/lib/bee-clef -+ if [ -z "$CONFIGDIR" ]; then -+ CONFIGDIR=/var/lib/bee-clef -+ fi -+ if [ -z "$PASSWORD_FILE" ]; then -+ PASSWORD_FILE=${CONFIGDIR}/password -+ fi -+ KEYSTORE=${CONFIGDIR}/keystore -+ SECRET=$(cat ${PASSWORD_FILE}) - CHAINID=5 -- SECRET=$(cat /var/lib/bee-clef/password) - # clef with every start sets permissions back to 600 -- (sleep 4; chmod 660 /var/lib/bee-clef/clef.ipc) & -+ (sleep 4; chmod 660 ${CONFIGDIR}/clef.ipc) & - ( sleep 2; cat << EOF - { "jsonrpc": "2.0", "id":1, "result": { "text":"$SECRET" } } - EOF --) | clef --stdio-ui --keystore $KEYSTORE --configdir $CONFIGDIR --chainid $CHAINID --rules /etc/bee-clef/rules.js --nousb --4bytedb-custom /etc/bee-clef/4byte.json --pcscdpath "" --auditlog "" --loglevel 3 --ipcpath /var/lib/bee-clef -+) | clef --stdio-ui --keystore $KEYSTORE --configdir $CONFIGDIR --chainid $CHAINID --rules /etc/bee-clef/rules.js --nousb --4bytedb-custom /etc/bee-clef/4byte.json --pcscdpath "" --auditlog "" --loglevel 3 --ipcpath ${CONFIGDIR} - } - - stop() { --- -2.29.2 - diff --git a/pkgs/applications/networking/bee/0002-nix-diff-for-substituteAll.patch b/pkgs/applications/networking/bee/0002-nix-diff-for-substituteAll.patch deleted file mode 100644 index 611aed0b890a..000000000000 --- a/pkgs/applications/networking/bee/0002-nix-diff-for-substituteAll.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 1a1ab986245e8b74648a1a0adb5d1c7019561d18 Mon Sep 17 00:00:00 2001 -From: Attila Lendvai <attila@lendvai.name> -Date: Sat, 30 Jan 2021 15:24:57 +0100 -Subject: [PATCH 2/2] nix diff for substituteAll - ---- - packaging/bee-clef-service | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/packaging/bee-clef-service b/packaging/bee-clef-service -index 34c7edd..31e9d95 100755 ---- a/packaging/bee-clef-service -+++ b/packaging/bee-clef-service -@@ -15,7 +15,7 @@ start() { - ( sleep 2; cat << EOF - { "jsonrpc": "2.0", "id":1, "result": { "text":"$SECRET" } } - EOF --) | clef --stdio-ui --keystore $KEYSTORE --configdir $CONFIGDIR --chainid $CHAINID --rules /etc/bee-clef/rules.js --nousb --4bytedb-custom /etc/bee-clef/4byte.json --pcscdpath "" --auditlog "" --loglevel 3 --ipcpath ${CONFIGDIR} -+) | @clefBinary@ --stdio-ui --keystore $KEYSTORE --configdir $CONFIGDIR --chainid $CHAINID --rules @out@/share/bee-clef/rules.js --nousb --4bytedb-custom @out@/share/bee-clef/4byte.json --pcscdpath "" --auditlog "" --loglevel 3 --ipcpath ${CONFIGDIR} - } - - stop() { --- -2.29.2 - diff --git a/pkgs/applications/networking/bee/bee-clef.nix b/pkgs/applications/networking/bee/bee-clef.nix deleted file mode 100644 index 9e36f8670d46..000000000000 --- a/pkgs/applications/networking/bee/bee-clef.nix +++ /dev/null @@ -1,57 +0,0 @@ -{ version ? "release", stdenv, lib, fetchFromGitHub, go-ethereum }: - -stdenv.mkDerivation rec { - pname = "bee-clef"; - version = "0.4.7"; - - src = fetchFromGitHub { - owner = "ethersphere"; - repo = "bee-clef"; - rev = "refs/tags/v${version}"; - sha256 = "1sfwql0kvnir8b9ggpqcyc0ar995gxgfbhqb1xpfzp6wl0g3g4zz"; - }; - - buildInputs = [ go-ethereum ]; - - clefBinary = "${go-ethereum}/bin/clef"; - - patches = [ - ./0001-clef-service-accept-default-CONFIGDIR-from-the-envir.patch - ./0002-nix-diff-for-substituteAll.patch - ]; - - dontBuild = true; - - installPhase = '' - mkdir -p $out/bin/ - mkdir -p $out/share/bee-clef/ - mkdir -p $out/lib/systemd/system/ - cp packaging/bee-clef.service $out/lib/systemd/system/ - substituteAll packaging/bee-clef-service $out/share/bee-clef/bee-clef-service - substituteAll ${./ensure-clef-account} $out/share/bee-clef/ensure-clef-account - substituteAll packaging/bee-clef-keys $out/bin/bee-clef-keys - cp packaging/rules.js packaging/4byte.json $out/share/bee-clef/ - chmod +x $out/bin/bee-clef-keys - chmod +x $out/share/bee-clef/bee-clef-service - chmod +x $out/share/bee-clef/ensure-clef-account - patchShebangs $out/ - ''; - - meta = with lib; { - # homepage = "https://gateway.ethswarm.org/bzz/docs.swarm.eth/docs/installation/bee-clef/"; - homepage = "https://docs.ethswarm.org/docs/installation/bee-clef"; - description = "External signer for Ethereum Swarm Bee"; - longDescription = '' - clef is go-ethereum's external signer. - - bee-clef is a package that starts up a vanilla clef instance as a systemd service, - but configured in such a way that is suitable for bee (relaxed security for - automated operation). - - This package contains the files necessary to run the bee-clef service. - ''; - license = with licenses; [ bsd3 ]; - maintainers = with maintainers; [ attila-lendvai ]; - platforms = go-ethereum.meta.platforms; - }; -} diff --git a/pkgs/applications/networking/bee/bee.nix b/pkgs/applications/networking/bee/bee.nix index f2fe81e8379f..cca2e549c8b1 100644 --- a/pkgs/applications/networking/bee/bee.nix +++ b/pkgs/applications/networking/bee/bee.nix @@ -1,55 +1,34 @@ -{ version ? "release", lib, fetchFromGitHub, buildGoModule }: +{ lib +, fetchFromGitHub +, buildGoModule +}: -let - - versionSpec = rec { - unstable = rec { - pname = "bee-unstable"; - version = "2021-01-30"; - rev = "824636a2c2629c329ab10275cef6a0b7395343ad"; - goVersionString = "g" + builtins.substring 0 7 rev; # this seems to be some kind of standard of git describe... - sha256 = "0ly1yqjq29arbak8lchdradf39l5bmxpbfir6ljjc7nyqdxz0sxg"; - vendorHash = "sha256-w5ZijaK8Adt1ZHPMmXqRWq0v0jdprRKRu03rePtZLXA="; - }; - release = rec { - pname = "bee"; - version = "0.5.0"; - rev = "refs/tags/v${version}"; - sha256 = "sha256-3Oy9RhgMPRFjUs3Dj8XUhAqoxx5BTi32OiK4Y8YEG2Q="; - vendorHash = "sha256-w5ZijaK8Adt1ZHPMmXqRWq0v0jdprRKRu03rePtZLXA="; - }; - "0.5.0" = release; - "0.4.1" = rec { - pname = "bee"; - version = "0.4.1"; - rev = "refs/tags/v${version}"; - sha256 = "1bmgbav52pcb5p7cgq9756512fzfqhjybyr0dv538plkqx47mpv7"; - vendorHash = "sha256-UGxiCXWlIfnhRZZBMYcWXFj77pqvJkb5wOllSdQeaUg="; - }; - }.${version}; - -in - -buildGoModule { - inherit (versionSpec) pname version vendorHash; +buildGoModule rec { + pname = "bee"; + version = "1.18.2"; src = fetchFromGitHub { owner = "ethersphere"; repo = "bee"; - inherit (versionSpec) rev sha256; + rev = "v${version}"; + sha256 = "sha256-LUOKF1073GmQWG2q4w0cTErSHw7ok5N6PQZ45xpjYx4="; }; + vendorHash = "sha256-UdsF/otjXqS1NY3PkCimRiD93hGntHG3Xhw6avFtHog="; + subPackages = [ "cmd/bee" ]; - # no symbol table, no debug info, and pass the commit for the version string - ldflags = lib.optionals ( lib.hasAttr "goVersionString" versionSpec) - [ "-s" "-w" "-X=github.com/ethersphere/bee.commit=${versionSpec.goVersionString}" ]; + ldflags = [ + "-s" + "-w" + "-X github.com/ethersphere/bee.version=${version}" + "-X github.com/ethersphere/bee/pkg/api.Version=5.2.0" + "-X github.com/ethersphere/bee/pkg/api.DebugVersion=4.1.0" + "-X github.com/ethersphere/bee/pkg/p2p/libp2p.reachabilityOverridePublic=false" + "-X github.com/ethersphere/bee/pkg/postage/listener.batchFactorOverridePublic=5" + ]; - # Mimic the bee Makefile: without disabling CGO, two (transitive and - # unused) dependencies would fail to compile. - preBuild = '' - export CGO_ENABLED=0 - ''; + CGO_ENABLED = 0; postInstall = '' mkdir -p $out/lib/systemd/system @@ -65,11 +44,13 @@ buildGoModule { longDescription = '' A decentralised storage and communication system for a sovereign digital society. - Swarm is a system of peer-to-peer networked nodes that create a decentralised storage and communication service. The system is economically self-sustaining due to a built-in incentive system enforced through smart contracts on the Ethereum blockchain. + Swarm is a system of peer-to-peer networked nodes that create a decentralised storage + and communication service. The system is economically self-sustaining due to a built-in + incentive system enforced through smart contracts on the Ethereum blockchain. Bee is a Swarm node implementation, written in Go. ''; license = with licenses; [ bsd3 ]; - maintainers = with maintainers; [ attila-lendvai ]; + maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/applications/networking/bee/ensure-clef-account b/pkgs/applications/networking/bee/ensure-clef-account deleted file mode 100644 index def67ff9cc33..000000000000 --- a/pkgs/applications/networking/bee/ensure-clef-account +++ /dev/null @@ -1,47 +0,0 @@ -#!/usr/bin/env sh - -set -e - -# NOTE This file is called by the systemd service in its preStart -# hook, but it's not Nix specific in any way. Ideally, the same file -# should be called from the postinst scripts of the other packages, -# but... the world is not ideal. - -# What follows was extracted from, and should be in sync with -# https://github.com/ethersphere/bee-clef/tree/master/packaging - -DATA_DIR="$1" -CONFIG_DIR="$2" -PASSWORD_FILE=${DATA_DIR}/password -MASTERSEED=${DATA_DIR}/masterseed.json -KEYSTORE=${DATA_DIR}/keystore - -echo "ensure-clef-account $DATA_DIR $CONFIG_DIR" - -if ! test -f ${PASSWORD_FILE}; then - < /dev/urandom tr -dc _A-Z-a-z-0-9 2> /dev/null | head -c32 > ${PASSWORD_FILE} - chmod 0400 ${PASSWORD_FILE} - echo "Initialized ${PASSWORD_FILE} from /dev/urandom" -fi - -if ! test -f ${MASTERSEED}; then - parse_json() { echo $1|sed -e 's/[{}]/''/g'|sed -e 's/", "/'\",\"'/g'|sed -e 's/" ,"/'\",\"'/g'|sed -e 's/" , "/'\",\"'/g'|sed -e 's/","/'\"---SEPERATOR---\"'/g'|awk -F=':' -v RS='---SEPERATOR---' "\$1~/\"$2\"/ {print}"|sed -e "s/\"$2\"://"|tr -d "\n\t"|sed -e 's/\\"/"/g'|sed -e 's/\\\\/\\/g'|sed -e 's/^[ \t]*//g'|sed -e 's/^"//' -e 's/"$//' ; } - SECRET=$(cat ${PASSWORD_FILE}) - CLEF="@clefBinary@ --configdir ${DATA_DIR} --keystore ${KEYSTORE} --stdio-ui" - $CLEF init >/dev/null << EOF -$SECRET -$SECRET -EOF - $CLEF newaccount >/dev/null << EOF -$SECRET -EOF - $CLEF setpw 0x$(parse_json $(cat ${KEYSTORE}/*) address) >/dev/null << EOF -$SECRET -$SECRET -$SECRET -EOF - $CLEF attest $(sha256sum ${CONFIG_DIR}/rules.js | cut -d' ' -f1 | tr -d '\n') >/dev/null << EOF -$SECRET -EOF - echo "Clef data dir initialized" -fi |