From 9ad8e09ca26a77b110ccddc7c473b648435e1370 Mon Sep 17 00:00:00 2001 From: Anton Evangelatov Date: Thu, 19 Jul 2018 16:32:18 +0200 Subject: [PATCH] build: hack ethereum-swarm as a "depends" in deb package --- build/ci.go | 17 +++++++++++++++-- build/deb/ethereum/deb.control | 6 +++--- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/build/ci.go b/build/ci.go index 5bbc4fb572..1b1770b52c 100644 --- a/build/ci.go +++ b/build/ci.go @@ -89,6 +89,8 @@ var ( executablePath("swarm"), } + swarmPackageName = "ethereum-swarm" + // A debian package is created for all executables listed here. debExecutables = []debExecutable{ { @@ -125,13 +127,13 @@ var ( debSwarmExecutables = []debExecutable{ { BinaryName: "swarm", - PackageName: "ethereum-swarm", + PackageName: swarmPackageName, Description: "Ethereum Swarm daemon and tools", }, } debSwarm = debPackage{ - Name: "ethereum-swarm", + Name: swarmPackageName, VersionFilePath: "swarm/VERSION", Executables: debSwarmExecutables, } @@ -653,6 +655,17 @@ func (meta debMetadata) ExeName(exe debExecutable) string { return exe.Package() } +// EthereumSwarmPackageName returns the name of the swarm package based on +// environment, e.g. "ethereum-swarm-unstable", or "ethereum-swarm". +// This is needed so that we make sure that "ethereum" package, +// depends on and installs "ethereum-swarm" +func (meta debMetadata) EthereumSwarmPackageName() string { + if isUnstableBuild(meta.Env) { + return swarmPackageName + "-unstable" + } + return swarmPackageName +} + // ExeConflicts returns the content of the Conflicts field // for executable packages. func (meta debMetadata) ExeConflicts(exe debExecutable) string { diff --git a/build/deb/ethereum/deb.control b/build/deb/ethereum/deb.control index 33c1a779f4..e693d1d046 100644 --- a/build/deb/ethereum/deb.control +++ b/build/deb/ethereum/deb.control @@ -10,9 +10,9 @@ Vcs-Browser: https://github.com/ethereum/go-ethereum Package: {{.Name}} Architecture: any -Depends: ${misc:Depends}, {{.ExeList}} -Description: Meta-package to install geth and other tools - Meta-package to install geth and other tools +Depends: ${misc:Depends}, {{.EthereumSwarmPackageName}}, {{.ExeList}} +Description: Meta-package to install geth, swarm, and other tools + Meta-package to install geth, swarm and other tools {{range .Executables}} Package: {{$.ExeName .}}