diff --git a/build/templates/backend/config/bitcoin.conf b/build/templates/backend/config/bitcoin.conf index e3877184..dbf27d1b 100644 --- a/build/templates/backend/config/bitcoin.conf +++ b/build/templates/backend/config/bitcoin.conf @@ -3,13 +3,13 @@ daemon=1 server=1 {{if .Backend.Mainnet}}mainnet=1{{else}}testnet=1{{end}} nolisten=1 -rpcuser={{.RPC.RPCUser}} -rpcpassword={{.RPC.RPCPass}} +rpcuser={{.BlockChain.RPCUser}} +rpcpassword={{.BlockChain.RPCPass}} rpcport={{.Ports.BackendRPC}} txindex=1 -zmqpubhashtx={{template "MessageQueueBindingTemplate" .}} -zmqpubhashblock={{template "MessageQueueBindingTemplate" .}} +zmqpubhashtx={{template "BlockChain.MessageQueueBindingTemplate" .}} +zmqpubhashblock={{template "BlockChain.MessageQueueBindingTemplate" .}} rpcworkqueue=1100 maxmempool=2000 diff --git a/build/templates/backend/debian/changelog b/build/templates/backend/debian/changelog index c467b795..a9b83a77 100644 --- a/build/templates/backend/debian/changelog +++ b/build/templates/backend/debian/changelog @@ -3,5 +3,5 @@ backend ({{.Backend.Version}}{{if .Backend.PackageRevision}}-{{.Backend.PackageR * {{.Coin.Name}} backend daemon version {{.Backend.Version}} - -- {{.Backend.PackageMaintainer}} <{{.Backend.PackageMaintainerEmail}}> {{.Meta.BuildDatetime}} + -- {{.Meta.PackageMaintainer}} <{{.Meta.PackageMaintainerEmail}}> {{.Meta.BuildDatetime}} {{end}} diff --git a/build/templates/backend/debian/control b/build/templates/backend/debian/control index 7034a8e8..049d4000 100644 --- a/build/templates/backend/debian/control +++ b/build/templates/backend/debian/control @@ -2,12 +2,12 @@ Source: backend Section: satoshilabs Priority: optional -Maintainer: {{.Backend.PackageMaintainerEmail}} +Maintainer: {{.Meta.PackageMaintainerEmail}} Build-Depends: debhelper, wget, tar, gzip, make, dh-systemd, dh-exec Standards-Version: 3.9.5 Package: {{.Backend.PackageName}} Architecture: amd64 Depends: ${shlibs:Depends}, ${misc:Depends}, logrotate -Description: {{.Coin.Name}} backend daemon +Description: Satoshilabs packaged {{.Coin.Name}} server {{end}} diff --git a/build/templates/backend/debian/logrotate b/build/templates/backend/debian/logrotate index a1987fa3..26d003a9 100644 --- a/build/templates/backend/debian/logrotate +++ b/build/templates/backend/debian/logrotate @@ -1,5 +1,5 @@ {{define "main" -}} -{{template "LogrotateFilesTemplate" .}} +{{template "Backend.LogrotateFilesTemplate" .}} { rotate 7 daily diff --git a/build/templates/backend/debian/postinst b/build/templates/backend/debian/postinst index 81e51070..e74a57b5 100644 --- a/build/templates/backend/debian/postinst +++ b/build/templates/backend/debian/postinst @@ -17,7 +17,7 @@ case "$1" in {{if .Backend.PostinstScriptTemplate}} # generated from postinst_template - {{template "PostinstScriptTemplate" .}} + {{template "Backend.PostinstScriptTemplate" .}} {{end}} ;; diff --git a/build/templates/backend/debian/service b/build/templates/backend/debian/service index cdcb905f..ec6deed3 100644 --- a/build/templates/backend/debian/service +++ b/build/templates/backend/debian/service @@ -4,7 +4,7 @@ Description={{.Coin.Name}} backend daemon After=network.target [Service] -ExecStart={{template "ExecCommandTemplate" .}} +ExecStart={{template "Backend.ExecCommandTemplate" .}} User={{.Backend.SystemUser}} Restart=on-failure WorkingDirectory={{.Env.BackendInstallPath}}/{{.Coin.Alias}} diff --git a/build/templates/blockbook/blockchaincfg.json b/build/templates/blockbook/blockchaincfg.json new file mode 100644 index 00000000..6e7a21ce --- /dev/null +++ b/build/templates/blockbook/blockchaincfg.json @@ -0,0 +1,15 @@ +{{define "main" -}} +{ + "rpc_url": "{{template "BlockChain.RPCURLTemplate" .}}", + "rpc_user": "{{.BlockChain.RPCUser}}", + "rpc_pass": "{{.BlockChain.RPCPass}}", + "rpc_timeout": {{.BlockChain.RPCTimeout}}, + "parse": {{.BlockChain.Parse}}, + "message_queue_binding": "{{template "BlockChain.MessageQueueBindingTemplate" .}}", + "subversion": "{{.BlockChain.Subversion}}", + "address_format": "{{.BlockChain.AddressFormat}}", + "mempool_workers": {{.BlockChain.MempoolWorkers}}, + "mempool_sub_workers": {{.BlockChain.MempoolSubWorkers}}, + "block_addresses_to_keep": {{.BlockChain.BlockAddressesToKeep}} +} +{{end}} diff --git a/build/templates/blockbook/debian/changelog b/build/templates/blockbook/debian/changelog new file mode 100644 index 00000000..7f43c4f5 --- /dev/null +++ b/build/templates/blockbook/debian/changelog @@ -0,0 +1,7 @@ +{{define "main" -}} +blockbook ({{.Env.Version}}) unstable; urgency=medium + + * Blockbook daemon ({{.Coin.Name}}) version {{.Env.Version}} + + -- {{.Meta.PackageMaintainer}} <{{.Meta.PackageMaintainerEmail}}> {{.Meta.BuildDatetime}} +{{end}} diff --git a/build/templates/blockbook/debian/compat b/build/templates/blockbook/debian/compat new file mode 100644 index 00000000..2bbd4a85 --- /dev/null +++ b/build/templates/blockbook/debian/compat @@ -0,0 +1,3 @@ +{{define "main" -}} +9 +{{end}} diff --git a/build/templates/blockbook/debian/conffiles b/build/templates/blockbook/debian/conffiles new file mode 100644 index 00000000..ccb487ce --- /dev/null +++ b/build/templates/blockbook/debian/conffiles @@ -0,0 +1,3 @@ +{{define "main" -}} +{{.Env.BlockbookInstallPath}}/{{.Coin.Alias}}/config/blockchaincfg.json +{{end}} diff --git a/build/templates/blockbook/debian/control b/build/templates/blockbook/debian/control new file mode 100644 index 00000000..58df162a --- /dev/null +++ b/build/templates/blockbook/debian/control @@ -0,0 +1,13 @@ +{{define "main" -}} +Source: blockbook +Section: satoshilabs +Priority: optional +Maintainer: {{.Meta.PackageMaintainerEmail}} +Build-Depends: debhelper, dh-systemd, dh-exec +Standards-Version: 3.9.5 + +Package: {{.Blockbook.PackageName}} +Architecture: amd64 +Depends: ${shlibs:Depends}, ${misc:Depends}, coreutils, passwd, findutils, psmisc, backend-bitcoin +Description: Satoshilabs blockbook server ({{.Coin.Name}}) +{{end}} diff --git a/build/templates/blockbook/debian/cron.daily b/build/templates/blockbook/debian/cron.daily new file mode 100644 index 00000000..5bb508d4 --- /dev/null +++ b/build/templates/blockbook/debian/cron.daily @@ -0,0 +1,4 @@ +{{define "main" -}} +#!/bin/sh +{{.Env.BlockbookInstallPath}}/{{.Coin.Alias}}/bin/logrotate.sh +{{end}} diff --git a/build/templates/blockbook/debian/dirs b/build/templates/blockbook/debian/dirs new file mode 100644 index 00000000..9e166b12 --- /dev/null +++ b/build/templates/blockbook/debian/dirs @@ -0,0 +1,4 @@ +{{define "main" -}} +{{.Env.BlockbookDataPath}}/{{.Coin.Alias}}/blockbook +{{.Env.BlockbookInstallPath}}/{{.Coin.Alias}}/logs +{{end}} diff --git a/build/templates/blockbook/debian/install b/build/templates/blockbook/debian/install new file mode 100644 index 00000000..d2b8422c --- /dev/null +++ b/build/templates/blockbook/debian/install @@ -0,0 +1,9 @@ +{{define "main" -}} +blockbook {{.Env.BlockbookInstallPath}}/{{.Coin.Alias}}/bin +cert {{.Env.BlockbookInstallPath}}/{{.Coin.Alias}} +static {{.Env.BlockbookInstallPath}}/{{.Coin.Alias}} +blockchaincfg.json {{.Env.BlockbookInstallPath}}/{{.Coin.Alias}}/config +logrotate.sh {{.Env.BlockbookInstallPath}}/{{.Coin.Alias}}/bin +ldb {{.Env.BlockbookInstallPath}}/{{.Coin.Alias}}/bin +sst_dump {{.Env.BlockbookInstallPath}}/{{.Coin.Alias}}/bin +{{end}} diff --git a/build/templates/blockbook/debian/links b/build/templates/blockbook/debian/links new file mode 100644 index 00000000..08769efb --- /dev/null +++ b/build/templates/blockbook/debian/links @@ -0,0 +1,4 @@ +{{define "main" -}} +{{.Env.BlockbookInstallPath}}/{{.Coin.Alias}}/cert/testcert.crt {{.Env.BlockbookInstallPath}}/{{.Coin.Alias}}/cert/blockbook.crt +{{.Env.BlockbookInstallPath}}/{{.Coin.Alias}}/cert/testcert.key {{.Env.BlockbookInstallPath}}/{{.Coin.Alias}}/cert/blockbook.key +{{end}} diff --git a/build/templates/blockbook/debian/postinst b/build/templates/blockbook/debian/postinst new file mode 100644 index 00000000..75715f7c --- /dev/null +++ b/build/templates/blockbook/debian/postinst @@ -0,0 +1,25 @@ +{{define "main" -}} +#!/bin/bash +set -e + +case "$1" in + + configure) + if ! id -u {{.Blockbook.SystemUser}} &> /dev/null + then + useradd --system -M -U {{.Blockbook.SystemUser}} -s /bin/false + fi + + for dir in {{.Env.BlockbookDataPath}}/{{.Coin.Alias}}/blockbook {{.Env.BlockbookInstallPath}}/{{.Coin.Alias}}/logs + do + if [ "$(stat -c '%U' $dir)" != "{{.Blockbook.SystemUser}}" ] + then + chown -R {{.Blockbook.SystemUser}}:{{.Blockbook.SystemUser}} $dir + fi + done + ;; + +esac + +#DEBHELPER# +{{end}} diff --git a/build/templates/blockbook/debian/rules b/build/templates/blockbook/debian/rules new file mode 100755 index 00000000..6f7bd38a --- /dev/null +++ b/build/templates/blockbook/debian/rules @@ -0,0 +1,15 @@ +{{define "main" -}} +#!/usr/bin/make -f + +DH_VERBOSE = 1 + +%: + dh $@ --with=systemd + +override_dh_strip: + +override_dh_systemd_start: + dh_systemd_start --no-start + +override_dh_installinit: +{{end}} diff --git a/build/templates/blockbook/debian/service b/build/templates/blockbook/debian/service new file mode 100644 index 00000000..e59b352d --- /dev/null +++ b/build/templates/blockbook/debian/service @@ -0,0 +1,39 @@ +{{define "main" -}} +[Unit] +Description=Blockbook daemon ({{.Coin.Name}}) +After=network.target +Wants={{.Backend.PackageName}}-service + +[Service] +ExecStart={{.Env.BlockbookInstallPath}}/{{.Coin.Alias}}/bin/blockbook -blockchaincfg={{.Env.BlockbookInstallPath}}/{{.Coin.Alias}}/config/blockchaincfg.json -datadir={{.Env.BlockbookDataPath}}/{{.Coin.Alias}}/blockbook/db -sync -httpserver={{template "Blockbook.InternalBindingTemplate" .}} -socketio={{template "Blockbook.PublicBindingTemplate" .}} -certfile={{.Env.BlockbookInstallPath}}/{{.Coin.Alias}}/cert/blockbook -explorer={{.Blockbook.ExplorerURL}} -log_dir={{.Env.BlockbookInstallPath}}/{{.Coin.Alias}}/logs {{.Blockbook.AdditionalParams}} +User={{.Blockbook.SystemUser}} +Type=simple +Restart=on-failure +WorkingDirectory={{.Env.BlockbookInstallPath}}/{{.Coin.Alias}} + +# Resource limits +LimitNOFILE=500000 + +# Hardening measures +#################### + +# Provide a private /tmp and /var/tmp. +PrivateTmp=true + +# Mount /usr, /boot/ and /etc read-only for the process. +ProtectSystem=full + +# Disallow the process and all of its children to gain +# new privileges through execve(). +NoNewPrivileges=true + +# Use a new /dev namespace only populated with API pseudo devices +# such as /dev/null, /dev/zero and /dev/random. +PrivateDevices=true + +# Deny the creation of writable and executable memory mappings. +MemoryDenyWriteExecute=true + +[Install] +WantedBy=multi-user.target +{{end}} diff --git a/build/templates/blockbook/logrotate.sh b/build/templates/blockbook/logrotate.sh new file mode 100755 index 00000000..e8fe312c --- /dev/null +++ b/build/templates/blockbook/logrotate.sh @@ -0,0 +1,13 @@ +{{define "main" -}} +#!/bin/bash +set -e + +LOGS={{.Env.BlockbookInstallPath}}/{{.Coin.Alias}}/logs + +find $LOGS -mtime +30 -type f -print0 | while read -r -d $'\0' log; do + # remove log if isn't opened by any process + if ! fuser -s $log; then + rm -f $log + fi +done +{{end}} diff --git a/build/templates/generate.go b/build/templates/generate.go index 39bd6584..32e995ec 100644 --- a/build/templates/generate.go +++ b/build/templates/generate.go @@ -17,7 +17,9 @@ const ( type Config struct { Meta struct { - BuildDatetime string + BuildDatetime string // generated field + PackageMaintainer string `json:"package_maintainer"` + PackageMaintainerEmail string `json:"package_maintainer_email"` } Env struct { Version string `json:"version"` @@ -38,7 +40,7 @@ type Config struct { BlockbookInternal int `json:"blockbook_internal"` BlockbookPublic int `json:"blockbook_public"` } `json:"ports"` - RPC struct { + BlockChain struct { RPCURLTemplate string `json:"rpc_url_template"` RPCUser string `json:"rpc_user"` RPCPass string `json:"rpc_pass"` @@ -54,8 +56,6 @@ type Config struct { Backend struct { PackageName string `json:"package_name"` PackageRevision string `json:"package_revision"` - PackageMaintainer string `json:"package_maintainer"` - PackageMaintainerEmail string `json:"package_maintainer_email"` SystemUser string `json:"system_user"` Version string `json:"version"` BinaryURL string `json:"binary_url"` @@ -73,20 +73,24 @@ type Config struct { AdditionalParams interface{} `json:"additional_params"` } `json:"backend"` Blockbook struct { - PackageName string `json:"package_name"` - SystemUser string `json:"system_user"` - Explorer string `json:"explorer"` - AdditionalParams string `json:"additional_params"` + PackageName string `json:"package_name"` + SystemUser string `json:"system_user"` + InternalBindingTemplate string `json:"internal_binding_template"` + PublicBindingTemplate string `json:"public_binding_template"` + ExplorerURL string `json:"explorer_url"` + AdditionalParams string `json:"additional_params"` } `json:"blockbook"` } func (c *Config) ParseTemplate() *template.Template { templates := map[string]string{ - "RPCURLTemplate": c.RPC.RPCURLTemplate, - "MessageQueueBindingTemplate": c.RPC.MessageQueueBindingTemplate, - "ExecCommandTemplate": c.Backend.ExecCommandTemplate, - "LogrotateFilesTemplate": c.Backend.LogrotateFilesTemplate, - "PostinstScriptTemplate": c.Backend.PostinstScriptTemplate, + "BlockChain.RPCURLTemplate": c.BlockChain.RPCURLTemplate, + "BlockChain.MessageQueueBindingTemplate": c.BlockChain.MessageQueueBindingTemplate, + "Backend.ExecCommandTemplate": c.Backend.ExecCommandTemplate, + "Backend.LogrotateFilesTemplate": c.Backend.LogrotateFilesTemplate, + "Backend.PostinstScriptTemplate": c.Backend.PostinstScriptTemplate, + "Blockbook.InternalBindingTemplate": c.Blockbook.InternalBindingTemplate, + "Blockbook.PublicBindingTemplate": c.Blockbook.PublicBindingTemplate, } t := template.New("") @@ -160,7 +164,7 @@ func generatePackageDefinitions(config *Config) { makeOutputDir(outputDir) - for _, subdir := range []string{"backend"} { + for _, subdir := range []string{"backend", "blockbook"} { root := filepath.Join(inputDir, subdir) err := os.Mkdir(filepath.Join(outputDir, subdir), 0755) diff --git a/configs/coins/bcash.json b/configs/coins/bcash.json index c497eb6f..92e2c198 100644 --- a/configs/coins/bcash.json +++ b/configs/coins/bcash.json @@ -1,4 +1,8 @@ { + "meta": { + "package_maintainer": "Jakub Matys", + "package_maintainer_email": "jakub.matys@satoshilabs.com" + }, "coin": { "name": "Bcash", "shortcut": "BCH", @@ -27,8 +31,6 @@ "backend": { "package_name": "backend-bcash", "package_revision": "satoshilabs-1", - "package_maintainer": "Jakub Matys", - "package_maintainer_email": "jakub.matys@satoshilabs.com", "system_user": "bcash", "version": "0.17.1", "binary_url": "https://download.bitcoinabc.org/0.17.1/linux/bitcoin-abc-0.17.1-x86_64-linux-gnu.tar.gz", @@ -49,7 +51,9 @@ "blockbook": { "package_name": "blockbook-bcash", "system_user": "blockbook-bcash", - "explorer": "/explorer", + "internal_binding_template": ":{{.Ports.BlockbookInternal}}", + "public_binding_template": ":{{.Ports.BlockbookPublic}}", + "explorer_url": "https://bitcoincash.blockexplorer.com", "additional_params": "" } } diff --git a/configs/coins/bcash_testnet.json b/configs/coins/bcash_testnet.json index 6adf78ed..0eb5b931 100644 --- a/configs/coins/bcash_testnet.json +++ b/configs/coins/bcash_testnet.json @@ -1,4 +1,8 @@ { + "meta": { + "package_maintainer": "Jakub Matys", + "package_maintainer_email": "jakub.matys@satoshilabs.com" + }, "coin": { "name": "Bcash Testnet", "shortcut": "TBCH", @@ -27,8 +31,6 @@ "backend": { "package_name": "backend-bcash-testnet", "package_revision": "satoshilabs-1", - "package_maintainer": "Jakub Matys", - "package_maintainer_email": "jakub.matys@satoshilabs.com", "system_user": "bcash", "version": "0.17.1", "binary_url": "https://download.bitcoinabc.org/0.17.1/linux/bitcoin-abc-0.17.1-x86_64-linux-gnu.tar.gz", @@ -49,7 +51,9 @@ "blockbook": { "package_name": "blockbook-bcash-testnet", "system_user": "blockbook-bcash", - "explorer": "/explorer", + "internal_binding_template": ":{{.Ports.BlockbookInternal}}", + "public_binding_template": ":{{.Ports.BlockbookPublic}}", + "explorer_url": "https://bitcoincash.blockexplorer.com", "additional_params": "" } } diff --git a/configs/coins/bgold.json b/configs/coins/bgold.json index c49eaea4..91317419 100644 --- a/configs/coins/bgold.json +++ b/configs/coins/bgold.json @@ -1,4 +1,8 @@ { + "meta": { + "package_maintainer": "Jakub Matys", + "package_maintainer_email": "jakub.matys@satoshilabs.com" + }, "coin": { "name": "Bgold", "shortcut": "BTG", @@ -26,8 +30,6 @@ "backend": { "package_name": "backend-bgold", "package_revision": "satoshilabs-1", - "package_maintainer": "Jakub Matys", - "package_maintainer_email": "jakub.matys@satoshilabs.com", "system_user": "bgold", "version": "0.15.1", "binary_url": "https://github.com/BTCGPU/BTCGPU/releases/download/v0.15.1/bitcoin-gold-0.15.1-x86_64-linux-gnu.tar.gz", @@ -243,7 +245,9 @@ "blockbook": { "package_name": "blockbook-bgold", "system_user": "blockbook-bgold", - "explorer": "/explorer", + "internal_binding_template": ":{{.Ports.BlockbookInternal}}", + "public_binding_template": ":{{.Ports.BlockbookPublic}}", + "explorer_url": "https://explorer.bitcoingold.org", "additional_params": "" } } diff --git a/configs/coins/bitcoin.json b/configs/coins/bitcoin.json index 8f9bca85..0ae6cb2f 100644 --- a/configs/coins/bitcoin.json +++ b/configs/coins/bitcoin.json @@ -1,4 +1,8 @@ { + "meta": { + "package_maintainer": "Jakub Matys", + "package_maintainer_email": "jakub.matys@satoshilabs.com" + }, "coin": { "name": "Bitcoin", "shortcut": "BTC", @@ -25,8 +29,6 @@ "backend": { "package_name": "backend-bitcoin", "package_revision": "satoshilabs-1", - "package_maintainer": "Jakub Matys", - "package_maintainer_email": "jakub.matys@satoshilabs.com", "system_user": "bitcoin", "version": "0.16.1", "binary_url": "https://bitcoin.org/bin/bitcoin-core-0.16.1/bitcoin-0.16.1-x86_64-linux-gnu.tar.gz", @@ -50,7 +52,9 @@ "blockbook": { "package_name": "blockbook-bitcoin", "system_user": "blockbook-bitcoin", - "explorer": "/explorer", + "internal_binding_template": ":{{.Ports.BlockbookInternal}}", + "public_binding_template": ":{{.Ports.BlockbookPublic}}", + "explorer_url": "https://btc-explorer.trezor.io", "additional_params": "" } } diff --git a/configs/coins/bitcoin_testnet.json b/configs/coins/bitcoin_testnet.json index a57d5744..89f32fa0 100644 --- a/configs/coins/bitcoin_testnet.json +++ b/configs/coins/bitcoin_testnet.json @@ -1,4 +1,8 @@ { + "meta": { + "package_maintainer": "Jakub Matys", + "package_maintainer_email": "jakub.matys@satoshilabs.com" + }, "coin": { "name": "Testnet", "shortcut": "TEST", @@ -25,8 +29,6 @@ "backend": { "package_name": "backend-bitcoin-testnet", "package_revision": "satoshilabs-1", - "package_maintainer": "Jakub Matys", - "package_maintainer_email": "jakub.matys@satoshilabs.com", "system_user": "bitcoin", "version": "0.16.1", "binary_url": "https://bitcoin.org/bin/bitcoin-core-0.16.1/bitcoin-0.16.1-x86_64-linux-gnu.tar.gz", @@ -50,7 +52,9 @@ "blockbook": { "package_name": "blockbook-bitcoin-testnet", "system_user": "blockbook-bitcoin", - "explorer": "/explorer", + "internal_binding_template": ":{{.Ports.BlockbookInternal}}", + "public_binding_template": ":{{.Ports.BlockbookPublic}}", + "explorer_url": "https://btc-testnet-explorer.trezor.io", "additional_params": "" } } diff --git a/configs/coins/dash.json b/configs/coins/dash.json index 715ff8f3..a7ca39d7 100644 --- a/configs/coins/dash.json +++ b/configs/coins/dash.json @@ -1,4 +1,8 @@ { + "meta": { + "package_maintainer": "Jakub Matys", + "package_maintainer_email": "jakub.matys@satoshilabs.com" + }, "coin": { "name": "Dash", "shortcut": "DASH", @@ -26,8 +30,6 @@ "backend": { "package_name": "backend-dash", "package_revision": "satoshilabs-1", - "package_maintainer": "Jakub Matys", - "package_maintainer_email": "jakub.matys@satoshilabs.com", "system_user": "dash", "version": "0.12.3", "binary_url": "https://github.com/dashpay/dash/releases/download/v0.12.3.2/dashcore-0.12.3.2-x86_64-linux-gnu.tar.gz", @@ -51,7 +53,9 @@ "blockbook": { "package_name": "blockbook-dash", "system_user": "blockbook-dash", - "explorer": "/explorer", + "internal_binding_template": ":{{.Ports.BlockbookInternal}}", + "public_binding_template": ":{{.Ports.BlockbookPublic}}", + "explorer_url": "https://dash-explorer.trezor.io", "additional_params": "" } } diff --git a/configs/coins/dash_testnet.json b/configs/coins/dash_testnet.json index bc2a0f5f..4426aae9 100644 --- a/configs/coins/dash_testnet.json +++ b/configs/coins/dash_testnet.json @@ -1,4 +1,8 @@ { + "meta": { + "package_maintainer": "Jakub Matys", + "package_maintainer_email": "jakub.matys@satoshilabs.com" + }, "coin": { "name": "Dash Testnet", "shortcut": "tDASH", @@ -26,8 +30,6 @@ "backend": { "package_name": "backend-dash-testnet", "package_revision": "satoshilabs-1", - "package_maintainer": "Jakub Matys", - "package_maintainer_email": "jakub.matys@satoshilabs.com", "system_user": "dash", "version": "0.12.3", "binary_url": "https://github.com/dashpay/dash/releases/download/v0.12.3.2/dashcore-0.12.3.2-x86_64-linux-gnu.tar.gz", @@ -51,7 +53,9 @@ "blockbook": { "package_name": "blockbook-dash-testnet", "system_user": "blockbook-dash", - "explorer": "/explorer", + "internal_binding_template": ":{{.Ports.BlockbookInternal}}", + "public_binding_template": ":{{.Ports.BlockbookPublic}}", + "explorer_url": "https://dash-explorer.trezor.io", "additional_params": "" } } diff --git a/configs/coins/dogecoin.json b/configs/coins/dogecoin.json index c087a16c..7f8b376b 100644 --- a/configs/coins/dogecoin.json +++ b/configs/coins/dogecoin.json @@ -1,4 +1,8 @@ { + "meta": { + "package_maintainer": "Jakub Matys", + "package_maintainer_email": "jakub.matys@satoshilabs.com" + }, "coin": { "name": "Dogecoin", "shortcut": "DOGE", @@ -25,8 +29,6 @@ "backend": { "package_name": "backend-dogecoin", "package_revision": "satoshilabs-1", - "package_maintainer": "Jakub Matys", - "package_maintainer_email": "jakub.matys@satoshilabs.com", "system_user": "dogecoin", "version": "1.10.0", "binary_url": "https://github.com/dogecoin/dogecoin/releases/download/v1.10.0/dogecoin-1.10.0-linux64.tar.gz", @@ -51,7 +53,9 @@ "blockbook": { "package_name": "blockbook-dogecoin", "system_user": "blockbook-dogecoin", - "explorer": "/explorer", + "internal_binding_template": ":{{.Ports.BlockbookInternal}}", + "public_binding_template": ":{{.Ports.BlockbookPublic}}", + "explorer_url": "https://dogechain.info/", "additional_params": "-resyncindexperiod=30011 -resyncmempoolperiod=2011" } } diff --git a/configs/coins/ethereum.json b/configs/coins/ethereum.json index 91e0eb3d..67dca5ca 100644 --- a/configs/coins/ethereum.json +++ b/configs/coins/ethereum.json @@ -1,4 +1,8 @@ { + "meta": { + "package_maintainer": "Jakub Matys", + "package_maintainer_email": "jakub.matys@satoshilabs.com" + }, "coin": { "name": "Ethereum", "shortcut": "ETH", @@ -25,8 +29,6 @@ "backend": { "package_name": "backend-ethereum", "package_revision": "satoshilabs-1", - "package_maintainer": "Jakub Matys", - "package_maintainer_email": "jakub.matys@satoshilabs.com", "system_user": "ethereum", "version": "1.8.10-eae63c51", "binary_url": "https://gethstore.blob.core.windows.net/builds/geth-linux-amd64-1.8.10-eae63c51.tar.gz", @@ -45,7 +47,9 @@ "blockbook": { "package_name": "blockbook-ethereum", "system_user": "blockbook-ethereum", - "explorer": "/explorer", + "internal_binding_template": ":{{.Ports.BlockbookInternal}}", + "public_binding_template": ":{{.Ports.BlockbookPublic}}", + "explorer_url": "https://etherscan.io/", "additional_params": "" } } diff --git a/configs/coins/ethereum_testnet_ropsten.json b/configs/coins/ethereum_testnet_ropsten.json index c6610d1b..2c346c16 100644 --- a/configs/coins/ethereum_testnet_ropsten.json +++ b/configs/coins/ethereum_testnet_ropsten.json @@ -1,4 +1,8 @@ { + "meta": { + "package_maintainer": "Jakub Matys", + "package_maintainer_email": "jakub.matys@satoshilabs.com" + }, "coin": { "name": "Ethereum Testnet Ropsten", "shortcut": "tETH", @@ -25,8 +29,6 @@ "backend": { "package_name": "backend-ethereum-testnet-ropsten", "package_revision": "satoshilabs-1", - "package_maintainer": "Jakub Matys", - "package_maintainer_email": "jakub.matys@satoshilabs.com", "system_user": "ethereum", "version": "1.8.10-eae63c51", "binary_url": "https://gethstore.blob.core.windows.net/builds/geth-linux-amd64-1.8.10-eae63c51.tar.gz", @@ -45,7 +47,9 @@ "blockbook": { "package_name": "blockbook-ethereum-testnet-ropsten", "system_user": "blockbook-ethereum", - "explorer": "/explorer", + "internal_binding_template": ":{{.Ports.BlockbookInternal}}", + "public_binding_template": ":{{.Ports.BlockbookPublic}}", + "explorer_url": "https://ropsten.etherscan.io/", "additional_params": "" } } diff --git a/configs/coins/litecoin.json b/configs/coins/litecoin.json index ab29ea7a..b7e62410 100644 --- a/configs/coins/litecoin.json +++ b/configs/coins/litecoin.json @@ -1,4 +1,8 @@ { + "meta": { + "package_maintainer": "Jakub Matys", + "package_maintainer_email": "jakub.matys@satoshilabs.com" + }, "coin": { "name": "Litecoin", "shortcut": "LTC", @@ -25,8 +29,6 @@ "backend": { "package_name": "backend-litecoin", "package_revision": "satoshilabs-1", - "package_maintainer": "Jakub Matys", - "package_maintainer_email": "jakub.matys@satoshilabs.com", "system_user": "litecoin", "version": "0.16.0", "binary_url": "https://download.litecoin.org/litecoin-0.16.0/linux/litecoin-0.16.0-x86_64-linux-gnu.tar.gz", @@ -50,7 +52,9 @@ "blockbook": { "package_name": "blockbook-litecoin", "system_user": "blockbook-litecoin", - "explorer": "/explorer", + "internal_binding_template": ":{{.Ports.BlockbookInternal}}", + "public_binding_template": ":{{.Ports.BlockbookPublic}}", + "explorer_url": "https://ltc-explorer.trezor.io", "additional_params": "" } } diff --git a/configs/coins/litecoin_testnet.json b/configs/coins/litecoin_testnet.json index 741eca7c..3ca11ba0 100644 --- a/configs/coins/litecoin_testnet.json +++ b/configs/coins/litecoin_testnet.json @@ -1,4 +1,8 @@ { + "meta": { + "package_maintainer": "Jakub Matys", + "package_maintainer_email": "jakub.matys@satoshilabs.com" + }, "coin": { "name": "Litecoin Testnet", "shortcut": "TLTC", @@ -25,8 +29,6 @@ "backend": { "package_name": "backend-litecoin-testnet", "package_revision": "satoshilabs-1", - "package_maintainer": "Jakub Matys", - "package_maintainer_email": "jakub.matys@satoshilabs.com", "system_user": "litecoin", "version": "0.16.0", "binary_url": "https://download.litecoin.org/litecoin-0.16.0/linux/litecoin-0.16.0-x86_64-linux-gnu.tar.gz", @@ -50,7 +52,9 @@ "blockbook": { "package_name": "blockbook-litecoin-testnet", "system_user": "blockbook-litecoin", - "explorer": "/explorer", + "internal_binding_template": ":{{.Ports.BlockbookInternal}}", + "public_binding_template": ":{{.Ports.BlockbookPublic}}", + "explorer_url": "https://ltc-explorer.trezor.io", "additional_params": "" } } diff --git a/configs/coins/namecoin.json b/configs/coins/namecoin.json index 60585299..1014cabc 100644 --- a/configs/coins/namecoin.json +++ b/configs/coins/namecoin.json @@ -1,4 +1,8 @@ { + "meta": { + "package_maintainer": "Jakub Matys", + "package_maintainer_email": "jakub.matys@satoshilabs.com" + }, "coin": { "name": "Namecoin", "shortcut": "NMC", @@ -25,8 +29,6 @@ "backend": { "package_name": "backend-namecoin", "package_revision": "satoshilabs-1", - "package_maintainer": "Jakub Matys", - "package_maintainer_email": "jakub.matys@satoshilabs.com", "system_user": "namecoin", "version": "0.13.99", "binary_url": "https://namecoin.org/files/namecoin-core-0.13.99-name-tab-beta1-notreproduced/namecoin-0.13.99-x86_64-linux-gnu.tar.gz", @@ -57,7 +59,9 @@ "blockbook": { "package_name": "blockbook-namecoin", "system_user": "blockbook-namecoin", - "explorer": "/explorer", + "internal_binding_template": ":{{.Ports.BlockbookInternal}}", + "public_binding_template": ":{{.Ports.BlockbookPublic}}", + "explorer_url": "https://namecha.in/", "additional_params": "" } } diff --git a/configs/coins/vertcoin.json b/configs/coins/vertcoin.json index 0ef7589e..7c8d3197 100644 --- a/configs/coins/vertcoin.json +++ b/configs/coins/vertcoin.json @@ -1,4 +1,8 @@ { + "meta": { + "package_maintainer": "Jakub Matys", + "package_maintainer_email": "jakub.matys@satoshilabs.com" + }, "coin": { "name": "Vertcoin", "shortcut": "VTC", @@ -25,8 +29,6 @@ "backend": { "package_name": "backend-vertcoin", "package_revision": "satoshilabs-1", - "package_maintainer": "Jakub Matys", - "package_maintainer_email": "jakub.matys@satoshilabs.com", "system_user": "vertcoin", "version": "0.13.2", "binary_url": "https://github.com/vertcoin-project/vertcoin-core/releases/download/0.13.2/vertcoind-v0.13.2-linux-amd64.zip", @@ -48,7 +50,9 @@ "blockbook": { "package_name": "blockbook-vertcoin", "system_user": "blockbook-vertcoin", - "explorer": "/explorer", + "internal_binding_template": ":{{.Ports.BlockbookInternal}}", + "public_binding_template": ":{{.Ports.BlockbookPublic}}", + "explorer_url": "https://insight.vertcoin.org", "additional_params": "" } } diff --git a/configs/coins/vertcoin_testnet.json b/configs/coins/vertcoin_testnet.json index 6a2af857..38ec7fb1 100644 --- a/configs/coins/vertcoin_testnet.json +++ b/configs/coins/vertcoin_testnet.json @@ -1,4 +1,8 @@ { + "meta": { + "package_maintainer": "Jakub Matys", + "package_maintainer_email": "jakub.matys@satoshilabs.com" + }, "coin": { "name": "Vertcoin Testnet", "shortcut": "TVTC", @@ -25,8 +29,6 @@ "backend": { "package_name": "backend-vertcoin-testnet", "package_revision": "satoshilabs-1", - "package_maintainer": "Jakub Matys", - "package_maintainer_email": "jakub.matys@satoshilabs.com", "system_user": "vertcoin", "version": "0.13.2", "binary_url": "https://github.com/vertcoin-project/vertcoin-core/releases/download/0.13.2/vertcoind-v0.13.2-linux-amd64.zip", @@ -48,7 +50,9 @@ "blockbook": { "package_name": "blockbook-vertcoin-testnet", "system_user": "blockbook-vertcoin", - "explorer": "/explorer", + "internal_binding_template": ":{{.Ports.BlockbookInternal}}", + "public_binding_template": ":{{.Ports.BlockbookPublic}}", + "explorer_url": "https://insight.vertcoin.org/", "additional_params": "" } } diff --git a/configs/coins/zcash.json b/configs/coins/zcash.json index 0933fd44..9f12405c 100644 --- a/configs/coins/zcash.json +++ b/configs/coins/zcash.json @@ -1,4 +1,8 @@ { + "meta": { + "package_maintainer": "Jakub Matys", + "package_maintainer_email": "jakub.matys@satoshilabs.com" + }, "coin": { "name": "Zcash", "shortcut": "ZEC", @@ -25,8 +29,6 @@ "backend": { "package_name": "backend-zcash", "package_revision": "satoshilabs-1", - "package_maintainer": "Jakub Matys", - "package_maintainer_email": "jakub.matys@satoshilabs.com", "system_user": "zcash", "version": "1.1.1", "binary_url": "https://z.cash/downloads/zcash-1.1.1-linux64.tar.gz", @@ -50,7 +52,9 @@ "blockbook": { "package_name": "blockbook-zcash", "system_user": "blockbook-zcash", - "explorer": "/explorer", + "internal_binding_template": ":{{.Ports.BlockbookInternal}}", + "public_binding_template": ":{{.Ports.BlockbookPublic}}", + "explorer_url": "https://zcash.blockexplorer.com/", "additional_params": "" } } diff --git a/configs/coins/zcash_testnet.json b/configs/coins/zcash_testnet.json index f4a2dc10..c7bd21d6 100644 --- a/configs/coins/zcash_testnet.json +++ b/configs/coins/zcash_testnet.json @@ -1,4 +1,8 @@ { + "meta": { + "package_maintainer": "Jakub Matys", + "package_maintainer_email": "jakub.matys@satoshilabs.com" + }, "coin": { "name": "Zcash Testnet", "shortcut": "TAZ", @@ -25,8 +29,6 @@ "backend": { "package_name": "backend-zcash-testnet", "package_revision": "satoshilabs-1", - "package_maintainer": "Jakub Matys", - "package_maintainer_email": "jakub.matys@satoshilabs.com", "system_user": "zcash", "version": "1.1.1", "binary_url": "https://z.cash/downloads/zcash-1.1.1-linux64.tar.gz", @@ -50,7 +52,9 @@ "blockbook": { "package_name": "blockbook-zcash-testnet", "system_user": "blockbook-zcash", - "explorer": "/explorer", + "internal_binding_template": ":{{.Ports.BlockbookInternal}}", + "public_binding_template": ":{{.Ports.BlockbookPublic}}", + "explorer_url": "https://explorer.testnet.z.cash/", "additional_params": "" } }