summarylogtreecommitdiffstats
path: root/deb.PKGBUILD
diff options
context:
space:
mode:
authorMoses Narrow2020-12-25 18:42:25 -0600
committerMoses Narrow2020-12-25 18:42:25 -0600
commit91eabd4d3fcd81fc9076cc47b5471a9836b2a1ad (patch)
tree04c1661ee9a2973374bca8c0778ca24e796bb1f1 /deb.PKGBUILD
parentefd6747f13c99ad58103305d07bd12860a0d5188 (diff)
downloadaur-91eabd4d3fcd81fc9076cc47b5471a9836b2a1ad.tar.gz
update deb.PKGBUILD scripts
Diffstat (limited to 'deb.PKGBUILD')
-rw-r--r--deb.PKGBUILD111
1 files changed, 69 insertions, 42 deletions
diff --git a/deb.PKGBUILD b/deb.PKGBUILD
index 6c56d3fca3a3..62955d0ba57d 100644
--- a/deb.PKGBUILD
+++ b/deb.PKGBUILD
@@ -7,7 +7,7 @@ _githuborg=${_projectname}
pkgdesc="Skywire Mainnet Node implementation. Develop Banch. Debian package"
#set to native architecture with dpkg
_pkgarch=$(dpkg --print-architecture)
-#Uncoment to select architecture - not working currently
+#Uncoment to select architecture - cross compile not working currently
#_pkgarch=amd64
#_pkgarch=arm64
#_pkgarch=armhf
@@ -19,8 +19,8 @@ _pkgver='0.3.0'
pkgver=${_pkgver}
#pkgver='autogenerated'
#pkgrel keeps getting reset when build is run
-_pkgrel=2
-#pkgrel=2
+_pkgrel=3
+#pkgrel=3
pkgrel=${_pkgrel}
_pkggopath="github.com/${_githuborg}/${_pkgname}"
url="https://${_pkggopath}"
@@ -33,12 +33,12 @@ _debdeps="reprepro"
_scripts="skywire-deb-scripts"
#source=("git+${url}.git#branch=${BRANCH:-develop}"
#build to needed commit because of develop branch instability
-source=("git+${url}.git#commit=d156980280fdb2ddfc8765ff77cdd55c0b7e9d9c"
-"${_scripts}.tar.gz")
+source=("git+${url}.git" ##branch=${BRANCH:-develop}"
+"${_scripts}.tar.gz" )
#'deb.PKGBUILD.sig' #skip the pgp checks for now as makepkg and yay handle it differently
#'deb.PKGBUILD')
sha256sums=('SKIP'
- '1e76ca2600fcbc5aad699aadf113589d8e7679907ad0b5f386fd30f2e44043fc')
+ '042f618c8786c13233fe80557439eb667f1caf7956c95fc240184e3139ab636b')
# 'SKIP'
# 'SKIP')
#validpgpkeys=('DE08F924EEE93832DABC642CA8DC761B1C0C0CFC') # Moses Narrow <moe_narrow@use.startmail.com>
@@ -67,12 +67,14 @@ prepare() {
mkdir -p ${srcdir}/go/src/github.com/${_githuborg}/ ${srcdir}/go/bin.${_pkgarch} ${srcdir}/go/apps.${_pkgarch}
ln -rTsf ${srcdir}/${_pkgname} ${srcdir}/go/src/${_pkggopath}
cd ${srcdir}/go/src/${_pkggopath}/
+
+ [[ $CARCH == "x86_64" ]] && git checkout develop || git checkout d156980280fdb2ddfc8765ff77cdd55c0b7e9d9c
}
build() {
local GOPATH=${srcdir}/go
local GOBIN=${GOPATH}/bin.${_pkgarch}
-local GOAPPS=${GOPATH}/apps.${_pkgarch}
+local _GOAPPS=${GOPATH}/apps.${_pkgarch}
local GOOS=linux
export CC=musl-gcc
#static cross-compilation
@@ -84,44 +86,29 @@ export CC=musl-gcc
#${_defaults} ${_goarch}
#create read only cache binary
- go build -trimpath -o $GOBIN/ ${srcdir}/${_scripts}/readonlycache.go
+ go build -trimpath -o $GOBIN/ ${srcdir}/${_scripts}/skycache.go
#create the skywire binaries
cd ${srcdir}/go/src/${_pkggopath}
_cmddir=${srcdir}/go/src/${_pkggopath}/cmd
-#using go build for determinism
-_msg2 'building skychat binary'
-cd ${_cmddir}/apps/skychat
- go build -trimpath --ldflags '-linkmode external -extldflags "-static" -buildid=' -o $GOAPPS/ .
-_msg2 'building skysocks binary'
-cd ${_cmddir}/apps/skysocks
- go build -trimpath --ldflags '-linkmode external -extldflags "-static" -buildid=' -o $GOAPPS/ .
-_msg2 'building skysocks-client binary'
-cd ${_cmddir}/apps/skysocks-client
- go build -trimpath --ldflags '-linkmode external -extldflags "-static" -buildid=' -o $GOAPPS/ .
-_msg2 'building vpn-client binary'
-cd ${_cmddir}/apps/vpn-client
- go build -trimpath --ldflags '-linkmode external -extldflags "-static" -buildid=' -o $GOAPPS/ .
-_msg2 'building vpn-server binary'
-cd ${_cmddir}/apps/vpn-server
- go build -trimpath --ldflags '-linkmode external -extldflags "-static" -buildid=' -o $GOAPPS/ .
-_msg2 'building skywire-visor binary'
-cd ${_cmddir}/skywire-visor
- go build -trimpath --ldflags '-linkmode external -extldflags "-static" -buildid=' -o $GOBIN/ .
-_msg2 'building skywire-cli binary'
-cd ${_cmddir}/skywire-cli
- go build -trimpath --ldflags '-linkmode external -extldflags "-static" -buildid=' -o $GOBIN/ .
-_msg2 'building setup-node binary'
-cd ${_cmddir}/setup-node
- go build -trimpath --ldflags '-linkmode external -extldflags "-static" -buildid=' -o $GOBIN/ .
+
+_buildbins skychat $_GOAPPS apps/
+_buildbins skysocks $_GOAPPS apps/
+_buildbins skysocks-client $_GOAPPS apps/
+_buildbins vpn-client $_GOAPPS apps/
+_buildbins vpn-server $_GOAPPS apps/
+_buildbins skywire-visor $GOBIN
+_buildbins skywire-cli $GOBIN
+_buildbins setup-node $GOBIN
#_msg2 'building hypervisor binary' #hypervisor has been combined with the visor
#cd ${_cmddir}/hypervisor
#go build -trimpath -ldflags '-extldflags ${LDFLAGS}' -ldflags=-buildid= -o $GOBIN/ .
+
#binary transparency
cd $GOBIN
_msg2 'binary sha256sums'
sha256sum $(ls)
-cd $GOAPPS
+cd $_GOAPPS
sha256sum $(ls)
@@ -137,7 +124,7 @@ echo "Description: ${pkgdesc}" >> ${srcdir}/${_pkgarch}.control
#create control file for the hypervisorkey debian package
echo "Package: hypervisorkey" > ${srcdir}/${_pkgarch}.hypervisorkey.control
-#TO DO: revise versioning for satellite package
+#TO DO: revise versioning for satellite packages
echo "Version: 1" >> ${srcdir}/${_pkgarch}.hypervisorkey.control
echo "Priority: optional" >> ${srcdir}/${_pkgarch}.hypervisorkey.control
echo "Section: web" >> ${srcdir}/${_pkgarch}.hypervisorkey.control
@@ -145,8 +132,34 @@ echo "Architecture: ${_pkgarch}" >> ${srcdir}/${_pkgarch}.hypervisorkey.control
echo "Depends: ${_pkgname}" >> ${srcdir}/${_pkgarch}.hypervisorkey.control
echo "Maintainer: github.com/the-skycoin-project" >> ${srcdir}/${_pkgarch}.hypervisorkey.control
echo "Description: package for the hypervisor key" >> ${srcdir}/${_pkgarch}.hypervisorkey.control
+
+#create control file for the skywire-save debian package
+echo "Package: skywire-save" > ${srcdir}/${_pkgarch}.skywire-save.control
+#TO DO: revise versioning for satellite packages
+echo "Version: 1" >> ${srcdir}/${_pkgarch}.skywire-save.control
+echo "Priority: optional" >> ${srcdir}/${_pkgarch}.skywire-save.control
+echo "Section: web" >> ${srcdir}/${_pkgarch}.skywire-save.control
+echo "Architecture: ${_pkgarch}" >> ${srcdir}/${_pkgarch}.skywire-save.control
+echo "Depends: ${_pkgname}" >> ${srcdir}/${_pkgarch}.skywire-save.control
+echo "Maintainer: github.com/the-skycoin-project" >> ${srcdir}/${_pkgarch}.skywire-save.control
+echo "Description: easy backup and restore skywire configuration" >> ${srcdir}/${_pkgarch}.skywire-save.control
+
}
+#I had to speed up the build for testing but there's a risk of using old binaries.
+#will change this when the commit for the build tracks a branch
+_buildbins() {
+_GOHERE=$2 #target bin dir
+_binpath=$3 #find the binary here- expecting 'apps/' or empty
+_binname=$1 #which binary to build
+_msg2 "building ${_binname} binary"
+if [[ ! -f ${_GOHERE}/${_binname} ]] ; then #don't waste time rebuilding existing bins
+ cd ${_cmddir}/${_binpath}${_binname}
+ go build -trimpath --ldflags '-linkmode external -extldflags "-static" -buildid=' -o $_GOHERE/ .
+fi
+}
+
+
package() {
_msg2 'creating dirs'
#set up to create a .deb package
@@ -165,6 +178,7 @@ mkdir -p ${_pkgdir}/${_skydir}/hypervisorkey/opt/${_pkgname}
mkdir -p ${_pkgdir}/${_skydir}/local
mkdir -p ${_pkgdir}/${_skydir}/dmsgpty
mkdir -p ${_pkgdir}/${_skydir}/${_pkgname} #needed?
+mkdir -p ${_pkgdir}/${_skydir}/skycache #local package repository
mkdir -p ${_pkgdir}/${_skydir}/transport_logs
_msg2 'installing binaries'
@@ -188,7 +202,7 @@ done
_msg2 'renaming skywire-visor to skywire'
mv ${_pkgdir}/usr/bin/${_pkgname}-visor ${_pkgdir}/usr/bin/${_pkgname}
-_msg2 'installing systemd services'
+_msg2 'installing skywire systemd services'
install -Dm644 ${srcdir}/${_scripts}/${_pkgname}.service ${_pkgdir}/${_systemddir}/${_pkgname}.service
install -Dm644 ${srcdir}/${_scripts}/${_pkgname}-visor.service ${_pkgdir}/${_systemddir}/${_pkgname}-visor.service
@@ -199,21 +213,34 @@ ln -rTsf ${_pkgdir}/${_skydir}/ssl/generate.sh ${_pkgdir}/usr/bin/skywire-tls-ge
#install -Dm644 ${srcdir}/${_pkgname}/static/skywire-manager-src/ssl/certificate.cnf ${pkgdir}/${_skydir}/ssl/certificate.cnf
install -Dm644 ${srcdir}/${_scripts}/certificate.cnf ${_pkgdir}/${_skydir}/ssl/certificate.cnf
+_msg2 'skywire-autoconfig script'
+install -Dm755 ${srcdir}/${_scripts}/skywire-autoconfig.sh ${_pkgdir}/usr/bin/skywire-autoconfig
+
+_msg2 'installing apt-repo-create script'
+install -Dm755 ${srcdir}/${_scripts}/apt-repo-create.sh ${_pkgdir}/usr/bin/apt-repo-create
+
_msg2 'installing `hypervisorkey` satellite .deb package build script'
install -Dm755 ${srcdir}/${_scripts}/keypkg-gen.sh ${_pkgdir}/usr/bin/keypkg-gen
+
_msg2 'installing `hypervisorkey` control file and postinst script'
install -Dm755 ${srcdir}/${_pkgarch}.hypervisorkey.control ${_pkgdir}/${_skydir}/hypervisorkey/DEBIAN/control
install -Dm755 ${srcdir}/${_scripts}/hypervisorkey.postinst ${_pkgdir}/${_skydir}/hypervisorkey/DEBIAN/postinst
+install -Dm755 ${srcdir}/${_scripts}/hypervisorkey.postrm ${_pkgdir}/${_skydir}/hypervisorkey/DEBIAN/postrm
+install -Dm755 ${srcdir}/${_scripts}/hypervisorkey-autoconfig.sh ${_pkgdir}/usr/bin/hypervisorkey-autoconfig
+_msg2 'installing `skywire-save` control file and postinst postrm and script'
+install -Dm755 ${srcdir}/${_pkgarch}.skywire-save.control ${_pkgdir}/${_skydir}/skywire-save/DEBIAN/control
+install -Dm755 ${srcdir}/${_scripts}/skywire-save.postinst ${_pkgdir}/${_skydir}/skywire-save/DEBIAN/postinst
+install -Dm755 ${srcdir}/${_scripts}/skywire-save.postrm ${_pkgdir}/${_skydir}/skywire-save/DEBIAN/postrm
+install -Dm755 ${srcdir}/${_scripts}/skywire-save.sh ${_pkgdir}/usr/bin/skywire-save
-_msg2 'installing apt-repo-create script'
-install -Dm755 ${srcdir}/${_scripts}/apt-repo-create.sh ${_pkgdir}/usr/bin/apt-repo-create
-_msg2 'installing readonly-cache systemd service'
-#install -Dm755 ${srcdir}/readonlycache ${_pkgdir}/usr/bin/readonlycache ##this was installed from the GOBIN
-install -Dm644 ${srcdir}/${_scripts}/readonly-cache.service ${_pkgdir}/etc/systemd/system/readonly-cache.service
-_msg2 'installing the control file, postinst & postrm scripts'
+_msg2 'installing skycache systemd services'
+install -Dm644 ${srcdir}/${_scripts}/skycache.service ${_pkgdir}/${_systemddir}/skycache.service
+
+
+_msg2 'installing skywire control file, postinst & postrm scripts'
install -Dm755 ${srcdir}/${_pkgarch}.control ${_pkgdir}/DEBIAN/control
install -Dm755 ${srcdir}/${_scripts}/postinst.sh ${_pkgdir}/DEBIAN/postinst
install -Dm755 ${srcdir}/${_scripts}/postrm.sh ${_pkgdir}/DEBIAN/postrm