@ -0,0 +1,6 @@ | |||
trackomatron (@VERSION@) @STABILITY@; urgency=medium | |||
* Automatic build. See https://github.com/tendermint/trackomatron for more information. | |||
-- Greg Szabo <greg@philosobear.com> @DATETIMESTAMP@ | |||
@ -0,0 +1 @@ | |||
9 |
@ -0,0 +1,15 @@ | |||
Source: trackomatron | |||
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: trackomatron | |||
Architecture: amd64 | |||
Version: @VERSION@ | |||
Installed-Size: @INSTALLEDSIZE@ | |||
Description: Trackomatron - Track invoices on the blockchain | |||
This software is intended to create a space to easily send invoices between and within institutions. Firstly, the commands of trackmatron are separated into two broad categories: submitting information to the blockchain (transactions), and retrieving information from the blockchain (query). | |||
@ -0,0 +1,21 @@ | |||
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ | |||
Upstream-Name: trackomatron | |||
Source: https://github.com/tendermint/trackomatron | |||
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,45 @@ | |||
#!/bin/sh | |||
# postinst script for trackomatron | |||
# | |||
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 trackomatron.trackomatron /etc/trackomatron | |||
chown trackomatron.trackomatron /etc/trackomatron/tendermint | |||
sudo -Hu trackomatron tracko init --home /etc/trackomatron 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 trackomatron tracko init --home /etc/trackomatron/tendermint | |||
#The above command might need some kind of additional option in the future. https://github.com/tendermint/tendermint/issues/542 | |||
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 trackomatron | |||
# | |||
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,37 @@ | |||
#!/bin/sh | |||
# preinst script for trackomatron | |||
# | |||
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 '^trackomatron:' /etc/passwd ; then | |||
useradd -k /dev/null -r -m -b /etc trackomatron | |||
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 basecoin | |||
# | |||
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 trackomatron 2> /dev/null || : | |||
systemctl stop trackomatron-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 trackomatron.service | |||
disable trackomatron-server.service | |||
@ -0,0 +1,23 @@ | |||
[Unit] | |||
Description=Trackomatron server | |||
Requires=network-online.target | |||
BindTo=trackomatron.service | |||
PartOf=trackomatron.service | |||
After=network-online.target trackomatron.service | |||
PropagatesReloadTo=trackomatron.service | |||
ReloadPropagatedFrom=trackomatron.service | |||
[Service] | |||
Environment="TMHOME=/etc/trackomatron/tendermint" | |||
Restart=on-failure | |||
User=trackomatron | |||
Group=trackomatron | |||
PermissionsStartOnly=true | |||
ExecStart=/usr/bin/tendermint node | |||
ExecReload=/bin/kill -HUP $MAINPID | |||
KillSignal=SIGTERM | |||
[Install] | |||
WantedBy=multi-user.target trackomatron.service | |||
Also=trackomatron.service | |||
@ -0,0 +1,29 @@ | |||
[Unit] | |||
Description=Trackomatron | |||
#propagates activation, deactivation and activation fails. | |||
Requires=network-online.target | |||
#propagates activation, deactivation, activation fails and stops | |||
BindTo=trackomatron-server.service | |||
#propagates stop and restart (one-way) | |||
PartOf=trackomatron-server.service | |||
#order | |||
Before=trackomatron-server.service | |||
After=network-online.target | |||
#propagates reload | |||
PropagatesReloadTo=trackomatron-server.service | |||
ReloadPropagatedFrom=trackomatron-server.service | |||
[Service] | |||
Environment="BCHOME=/etc/trackomatron" | |||
Restart=on-failure | |||
User=trackomatron | |||
Group=trackomatron | |||
PermissionsStartOnly=true | |||
ExecStart=/usr/bin/trackomatron start --without-tendermint | |||
ExecReload=/bin/kill -HUP $MAINPID | |||
KillSignal=SIGTERM | |||
[Install] | |||
WantedBy=multi-user.target | |||
Also=trackomatron-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,74 @@ | |||
%define __spec_install_post %{nil} | |||
%define debug_package %{nil} | |||
%define __os_install_post %{nil} | |||
Name: trackomatron | |||
Summary: Trackomatron - Track invoices on the blockchain | |||
License: Apache 2.0 | |||
URL: https://tendermint.com/ | |||
Packager: Greg Szabo | |||
Requires: tendermint >= 0.10.0 | |||
Requires(pre): /sbin/useradd | |||
%description | |||
This software is intended to create a space to easily send invoices between and within institutions. Firstly, the commands of trackmatron are separated into two broad categories: submitting information to the blockchain (transactions), and retrieving information from the blockchain (query). | |||
%pre | |||
if ! %{__grep} -q '^%{name}:' /etc/passwd ; then | |||
useradd -k /dev/null -r -m -b %{_sysconfdir} %{name} | |||
fi | |||
%prep | |||
test -d "$GOPATH" || echo "GOPATH not set" | |||
test -d "$GOPATH" | |||
%{__mkdir_p} %{name}-%{version} | |||
cd %{name}-%{version} | |||
%{__mkdir_p} .%{_bindir} .%{_defaultlicensedir}/%{name} .%{_sysconfdir}/%{name}/tendermint | |||
%{__cp} $GOPATH/bin/tracko $GOPATH/bin/trackocli .%{_bindir} | |||
%{__cp} $GOPATH/src/github.com/tendermint/%{name}/LICENSE .%{_defaultlicensedir}/%{name} | |||
cp -r %{_topdir}/extrafiles/trackomatron/* ./ | |||
%{__chmod} -Rf a+rX,u+w,g-w,o-w . | |||
%build | |||
# Nothing to do here. | |||
%install | |||
cd %{name}-%{version} | |||
%{__cp} -a * %{buildroot} | |||
%post | |||
sudo -Hu %{name} tracko 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 | |||
#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 | |||
%attr(0755, %{name}, %{name}) %dir %{_sysconfdir}/%{name} | |||
%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 | |||