@ -0,0 +1,6 @@ | |||||
cosmos-sdk (@VERSION@) @STABILITY@; urgency=medium | |||||
* Automatic build. See https://github.com/tendermint/basecoin for more information. | |||||
-- Greg Szabo <greg@philosobear.com> @DATETIMESTAMP@ | |||||
@ -0,0 +1 @@ | |||||
9 |
@ -0,0 +1,15 @@ | |||||
Source: cosmos-sdk | |||||
Section: net | |||||
Priority: optional | |||||
Maintainer: Greg Szabo <greg@philosobear.com> | |||||
Build-Depends: debhelper (>=9) | |||||
Depends: tendermint (>=0.10.0) | |||||
Standards-Version: 3.9.6 | |||||
Homepage: https://tendermint.com | |||||
Package: cosmos-sdk | |||||
Architecture: amd64 | |||||
Version: @VERSION@ | |||||
Installed-Size: @INSTALLEDSIZE@ | |||||
Description: cosmos-sdk is a Proof-of-Stake framework | |||||
Cosmos-SDK is a general purpose framework for the Tendermint consensus engine to form a Proof-of-Stake cryptocurrency. | |||||
@ -0,0 +1,21 @@ | |||||
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ | |||||
Upstream-Name: cosmos-sdk | |||||
Source: https://github.com/cosmos/cosmos-sdk | |||||
Files: * | |||||
Copyright: 2017 All In Bits, Inc. | |||||
License: Apache-2.0 | |||||
Licensed under the Apache License, Version 2.0 (the "License"); | |||||
you may not use this file except in compliance with the License. | |||||
You may obtain a copy of the License at | |||||
. | |||||
http://www.apache.org/licenses/LICENSE-2.0 | |||||
. | |||||
Unless required by applicable law or agreed to in writing, software | |||||
distributed under the License is distributed on an "AS IS" BASIS, | |||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |||||
See the License for the specific language governing permissions and | |||||
limitations under the License. | |||||
. | |||||
On Debian systems, the full text of the Apache License 2.0 can be found | |||||
in the file `/usr/share/common-licenses/Apache-2.0'. |
@ -0,0 +1,46 @@ | |||||
#!/bin/sh | |||||
# postinst script for cosmos-sdk | |||||
# | |||||
set -e | |||||
# summary of how this script can be called: | |||||
# * <postinst> `configure' <most-recently-configured-version> | |||||
# * <old-postinst> `abort-upgrade' <new version> | |||||
# * <conflictor's-postinst> `abort-remove' `in-favour' <package> | |||||
# <new-version> | |||||
# * <postinst> `abort-remove' | |||||
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour' | |||||
# <failed-install-package> <version> `removing' | |||||
# <conflicting-package> <version> | |||||
# for details, see https://www.debian.org/doc/debian-policy/ or | |||||
# the debian-policy package | |||||
case "$1" in | |||||
configure) | |||||
chown basecoin.basecoin /etc/basecoin | |||||
sudo -Hu basecoin basecoin init --home /etc/basecoin 2B24DEE2364762300168DF19B6C18BCE2D399EA2 | |||||
#The above command generates a genesis.json file that contains validators. This is wrong, the validator part should be empty. https://github.com/tendermint/basecoin/issues/124 | |||||
sudo -Hu basecoin tendermint init --home /etc/basecoin/tendermint | |||||
#The above command might need some kind of additional option in the future. https://github.com/tendermint/tendermint/issues/542 | |||||
chmod 755 /etc/basecoin/tendermint | |||||
chown basecoin.basecoin /etc/basecoin/tendermint | |||||
systemctl daemon-reload | |||||
;; | |||||
abort-upgrade|abort-remove|abort-deconfigure) | |||||
;; | |||||
*) | |||||
echo "postinst called with unknown argument \`$1'" >&2 | |||||
exit 1 | |||||
;; | |||||
esac | |||||
# dh_installdeb will replace this with shell code automatically | |||||
# generated by other debhelper scripts. | |||||
#DEBHELPER# | |||||
exit 0 |
@ -0,0 +1,41 @@ | |||||
#!/bin/sh | |||||
# postrm script for cosmos-sdk | |||||
# | |||||
set -e | |||||
# summary of how this script can be called: | |||||
# * <postrm> `remove' | |||||
# * <postrm> `purge' | |||||
# * <old-postrm> `upgrade' <new-version> | |||||
# * <new-postrm> `failed-upgrade' <old-version> | |||||
# * <new-postrm> `abort-install' | |||||
# * <new-postrm> `abort-install' <old-version> | |||||
# * <new-postrm> `abort-upgrade' <old-version> | |||||
# * <disappearer's-postrm> `disappear' <overwriter> | |||||
# <overwriter-version> | |||||
# for details, see https://www.debian.org/doc/debian-policy/ or | |||||
# the debian-policy package | |||||
case "$1" in | |||||
upgrade|failed-upgrade|abort-upgrade) | |||||
systemctl daemon-reload | |||||
;; | |||||
purge|remove|abort-install|disappear) | |||||
systemctl daemon-reload | |||||
;; | |||||
*) | |||||
echo "postrm called with unknown argument \`$1'" >&2 | |||||
exit 1 | |||||
;; | |||||
esac | |||||
# dh_installdeb will replace this with shell code automatically | |||||
# generated by other debhelper scripts. | |||||
#DEBHELPER# | |||||
exit 0 |
@ -0,0 +1,38 @@ | |||||
#!/bin/sh | |||||
# preinst script for cosmos-sdk | |||||
# | |||||
set -e | |||||
# summary of how this script can be called: | |||||
# * <new-preinst> `install' | |||||
# * <new-preinst> `install' <old-version> | |||||
# * <new-preinst> `upgrade' <old-version> | |||||
# * <old-preinst> `abort-upgrade' <new-version> | |||||
# for details, see https://www.debian.org/doc/debian-policy/ or | |||||
# the debian-policy package | |||||
case "$1" in | |||||
install|upgrade) | |||||
if ! grep -q '^basecoin:' /etc/passwd ; then | |||||
useradd -k /dev/null -r -m -b /etc basecoin | |||||
chmod 755 /etc/basecoin | |||||
fi | |||||
;; | |||||
abort-upgrade) | |||||
;; | |||||
*) | |||||
echo "preinst called with unknown argument \`$1'" >&2 | |||||
exit 1 | |||||
;; | |||||
esac | |||||
# dh_installdeb will replace this with shell code automatically | |||||
# generated by other debhelper scripts. | |||||
#DEBHELPER# | |||||
exit 0 |
@ -0,0 +1,39 @@ | |||||
#!/bin/sh | |||||
# prerm script for cosmos-sdk | |||||
# | |||||
set -e | |||||
# summary of how this script can be called: | |||||
# * <prerm> `remove' | |||||
# * <old-prerm> `upgrade' <new-version> | |||||
# * <new-prerm> `failed-upgrade' <old-version> | |||||
# * <conflictor's-prerm> `remove' `in-favour' <package> <new-version> | |||||
# * <deconfigured's-prerm> `deconfigure' `in-favour' | |||||
# <package-being-installed> <version> `removing' | |||||
# <conflicting-package> <version> | |||||
# for details, see https://www.debian.org/doc/debian-policy/ or | |||||
# the debian-policy package | |||||
case "$1" in | |||||
remove|upgrade|deconfigure) | |||||
systemctl stop basecoin 2> /dev/null || : | |||||
systemctl stop basecoin-service 2> /dev/null || : | |||||
;; | |||||
failed-upgrade) | |||||
;; | |||||
*) | |||||
echo "prerm called with unknown argument \`$1'" >&2 | |||||
exit 1 | |||||
;; | |||||
esac | |||||
# dh_installdeb will replace this with shell code automatically | |||||
# generated by other debhelper scripts. | |||||
#DEBHELPER# | |||||
exit 0 |
@ -0,0 +1,3 @@ | |||||
disable basecoin.service | |||||
disable basecoin-server.service | |||||
@ -0,0 +1,23 @@ | |||||
[Unit] | |||||
Description=Basecoin server | |||||
Requires=network-online.target | |||||
BindTo=basecoin.service | |||||
PartOf=basecoin.service | |||||
After=network-online.target basecoin.service | |||||
PropagatesReloadTo=basecoin.service | |||||
ReloadPropagatedFrom=basecoin.service | |||||
[Service] | |||||
Environment="TMHOME=/etc/basecoin/tendermint" | |||||
Restart=on-failure | |||||
User=basecoin | |||||
Group=basecoin | |||||
PermissionsStartOnly=true | |||||
ExecStart=/usr/bin/tendermint node | |||||
ExecReload=/bin/kill -HUP $MAINPID | |||||
KillSignal=SIGTERM | |||||
[Install] | |||||
WantedBy=multi-user.target basecoin.service | |||||
Also=basecoin.service | |||||
@ -0,0 +1,29 @@ | |||||
[Unit] | |||||
Description=Basecoin | |||||
#propagates activation, deactivation and activation fails. | |||||
Requires=network-online.target | |||||
#propagates activation, deactivation, activation fails and stops | |||||
BindTo=basecoin-server.service | |||||
#propagates stop and restart (one-way) | |||||
PartOf=basecoin-server.service | |||||
#order | |||||
Before=basecoin-server.service | |||||
After=network-online.target | |||||
#propagates reload | |||||
PropagatesReloadTo=basecoin-server.service | |||||
ReloadPropagatedFrom=basecoin-server.service | |||||
[Service] | |||||
Environment="BCHOME=/etc/basecoin" | |||||
Restart=on-failure | |||||
User=basecoin | |||||
Group=basecoin | |||||
PermissionsStartOnly=true | |||||
ExecStart=/usr/bin/basecoin start --without-tendermint | |||||
ExecReload=/bin/kill -HUP $MAINPID | |||||
KillSignal=SIGTERM | |||||
[Install] | |||||
WantedBy=multi-user.target | |||||
Also=basecoin-server.service | |||||
@ -0,0 +1,12 @@ | |||||
{ | |||||
"address": "1B1BE55F969F54064628A63B9559E7C21C925165", | |||||
"priv_key": { | |||||
"type": "ed25519", | |||||
"data": "C70D6934B4F55F1B7BC33B56B9CA8A2061384AFC19E91E44B40C4BBA182953D1619D3678599971ED29C7529DDD4DA537B97129893598A17C82E3AC9A8BA95279" | |||||
}, | |||||
"pub_key": { | |||||
"type": "ed25519", | |||||
"data": "619D3678599971ED29C7529DDD4DA537B97129893598A17C82E3AC9A8BA95279" | |||||
} | |||||
} | |||||
@ -0,0 +1,12 @@ | |||||
{ | |||||
"address": "1DA7C74F9C219229FD54CC9F7386D5A3839F0090", | |||||
"priv_key": { | |||||
"type": "ed25519", | |||||
"data": "34BAE9E65CE8245FAD035A0E3EED9401BDE8785FFB3199ACCF8F5B5DDF7486A8352195DA90CB0B90C24295B90AEBA25A5A71BC61BAB2FE2387241D439698B7B8" | |||||
}, | |||||
"pub_key": { | |||||
"type": "ed25519", | |||||
"data": "352195DA90CB0B90C24295B90AEBA25A5A71BC61BAB2FE2387241D439698B7B8" | |||||
} | |||||
} | |||||
@ -0,0 +1,67 @@ | |||||
Version: @VERSION@ | |||||
Release: @BUILD_NUMBER@ | |||||
%define __spec_install_post %{nil} | |||||
%define debug_package %{nil} | |||||
%define __os_install_post %{nil} | |||||
Name: cosmos-sdk | |||||
Summary: cosmos-sdk is a Proof-of-Stake framework | |||||
License: Apache 2.0 | |||||
URL: https://cosmos.network/ | |||||
Packager: Greg Szabo | |||||
Requires: tendermint >= 0.10.0 | |||||
Provides: basecoin basecli | |||||
#Requires(pre): useradd | |||||
%description | |||||
Cosmos-SDK is a general purpose framework for the Tendermint consensus engine to form a Proof-of-Stake cryptocurrency. | |||||
%pre | |||||
if ! %{__grep} -q '^%{name}:' /etc/passwd ; then | |||||
useradd -k /dev/null -r -m -b %{_sysconfdir} %{name} | |||||
chmod 755 %{_sysconfdir}/%{name} | |||||
fi | |||||
%prep | |||||
# Nothing to do here. - It is done in the Makefile. | |||||
%build | |||||
# Nothing to do here. | |||||
%install | |||||
cd %{name}-%{version}-%{release} | |||||
%{__cp} -a * %{buildroot} | |||||
%post | |||||
sudo -Hu %{name} basecoin init --home %{_sysconfdir}/%{name} 2B24DEE2364762300168DF19B6C18BCE2D399EA2 | |||||
#The above command generates a genesis.json file that contains validators. This is wrong, the validator part should be empty. https://github.com/tendermint/basecoin/issues/124 | |||||
sudo -Hu %{name} tendermint init --home %{_sysconfdir}/%{name}/tendermint | |||||
#The above command might need some kind of additional option in the future. https://github.com/tendermint/tendermint/issues/542 | |||||
chmod 755 %{_sysconfdir}/%{name}/tendermint | |||||
#Temporary until https://github.com/tendermint/basecoin/issues/123 | |||||
rm -f %{_sysconfdir}/%{name}/key.json | |||||
rm -f %{_sysconfdir}/%{name}/key2.json | |||||
systemctl daemon-reload | |||||
%preun | |||||
systemctl stop %{name} 2> /dev/null || : | |||||
systemctl stop %{name}-service 2> /dev/null || : | |||||
%postun | |||||
systemctl daemon-reload | |||||
%files | |||||
%ghost %attr(0755, %{name}, %{name}) %dir %{_sysconfdir}/%{name} | |||||
%ghost %attr(0755, %{name}, %{name}) %dir %{_sysconfdir}/%{name}/tendermint | |||||
%{_bindir}/* | |||||
%{_sysconfdir}/systemd/system/* | |||||
%{_sysconfdir}/systemd/system-preset/* | |||||
%dir %{_datadir}/%{name} | |||||
%{_datadir}/%{name}/* | |||||
%dir %{_defaultlicensedir}/%{name} | |||||
%doc %{_defaultlicensedir}/%{name}/LICENSE | |||||