## Install BTCPayServer on the RaspiBlitz # Based on: https://gist.github.com/normandmickey/3f10fc077d15345fb469034e3697d0d0 # to download and run: # wget https://raw.githubusercontent.com/openoms/bitcoin-tutorials/master/BTCPayServer/btcpay_to_blitz.sh && bash btcpay_to_blitz.sh echo "" echo "***" echo "Confirm that the port 80, 443 and 9735 are forwarded to the IP of the RaspiBlitz by pressing [ENTER]" read key echo "" echo "***" echo "Type the domain/ddns you want to use for BTCPayServer and press [ENTER]" read YOUR_DOMAIN echo "" echo "***" echo "Type an email address that will be used to register the SSL certificate and press [ENTER]" read YOUR_EMAIL echo "" echo "***" echo "Creating the btcpay user" echo "***" echo "" sudo adduser --disabled-password --gecos "" btcpay cd /home/btcpay # store BTCpay data on HDD sudo mkdir /mnt/hdd/.btcpayserver sudo mv -f /home/admin/.btcpayserver /mnt/hdd/ sudo rm -rf /home/admin/.btcpayserver sudo mv -f /home/btcpay/.btcpayserver /mnt/hdd/ sudo chown -R btcpay:btcpay /mnt/hdd/.btcpayserver sudo ln -s /mnt/hdd/.btcpayserver /home/btcpay/ # clean when installed as admin sudo rm -f /home/admin/dotnet-sdk* sudo rm -f /home/admin/dotnet-sdk* sudo rm -f /home/admin/.nbxplorer/Main/settings.config # cleanup previous installs sudo rm -f /home/btcpay/dotnet-sdk* sudo rm -f /home/btcpay/aspnetcore* sudo rm -rf /home/btcpay/dotnet sudo rm -f /usr/local/bin/dotnet sudo systemctl stop nbxplorer sudo systemctl disable nbxplorer sudo rm -f /home/btcpay/.nbxplorer/Main/settings.config sudo rm -f /etc/systemd/system/nbxplorer.service sudo systemctl stop btcpayserver sudo systemctl disable btcpayserver sudo rm -f /home/btcpay/.btcpayserver/Main/settings.config sudo rm -f /etc/systemd/system/btcpayserver.service sudo rm -f /etc/nginx/sites-available/btcpayserver echo "" echo "***" echo "Installing .NET" echo "***" echo "" sudo apt-get -y install libunwind8 gettext libssl1.0 sudo -u btcpay wget https://download.visualstudio.microsoft.com/download/pr/9650e3a6-0399-4330-a363-1add761127f9/14d80726c16d0e3d36db2ee5c11928e4/dotnet-sdk-2.2.102-linux-arm.tar.gz sudo -u btcpay wget https://download.visualstudio.microsoft.com/download/pr/9d049226-1f28-4d3d-a4ff-314e56b223c5/f67ab05a3d70b2bff46ff25e2b3acd2a/aspnetcore-runtime-2.2.1-linux-arm.tar.gz sudo -u btcpay mkdir /home/btcpay/dotnet sudo -u btcpay tar -xvf dotnet-sdk-2.2.102-linux-arm.tar.gz -C /home/btcpay/dotnet sudo -u btcpay tar -xvf aspnetcore-runtime-2.2.1-linux-arm.tar.gz -C /home/btcpay/dotnet sudo ln -s /home/btcpay/dotnet/dotnet /usr/local/bin sudo -u btcpay /home/btcpay/dotnet/dotnet --info echo "" echo "***" echo "Installing NBXplorer" echo "***" echo "" cd /home/btcpay sudo -u btcpay git clone https://github.com/dgarage/NBXplorer.git cd NBXplorer sudo -u btcpay ./build.sh echo " [Unit] Description=NBXplorer daemon Requires=bitcoind.service After=bitcoind.service [Service] ExecStart=/usr/local/bin/dotnet \"/home/btcpay/NBXplorer/NBXplorer/bin/Release/netcoreapp2.1/NBXplorer.dll\" -c /home/btcpay/.nbxplorer/Main/settings.config User=btcpay Group=btcpay Type=simple PIDFile=/run/nbxplorer/nbxplorer.pid Restart=on-failure PrivateTmp=true ProtectSystem=full NoNewPrivileges=true PrivateDevices=true [Install] WantedBy=multi-user.target " | sudo tee -a /etc/systemd/system/nbxplorer.service sudo systemctl daemon-reload # restart to create settings.config if was running already sudo systemctl restart nbxplorer sudo systemctl enable nbxplorer sudo systemctl start nbxplorer echo "Checking for nbxplorer config" while [ ! -f "/home/btcpay/.nbxplorer/Main/settings.config" ] do echo "Waiting for nbxplorer to start - CTRL+C to abort" sleep 10 done echo "" echo "***" echo "getting RPC credentials from the bitcoin.conf" RPC_USER=$(sudo cat /mnt/hdd/bitcoin/bitcoin.conf | grep rpcuser | cut -c 9-) PASSWORD_B=$(sudo cat /mnt/hdd/bitcoin/bitcoin.conf | grep rpcpassword | cut -c 13-) #sudo mv /home/btcpay/.nbxplorer/Main/settings.config /home/admin/settings.config #sudo chown admin:admin /home/admin/settings.config sudo mv /home/btcpay/.nbxplorer/Main/settings.config /home/btcpay/.nbxplorer/Main/settings.config.backup touch /home/admin/settings.config sudo chmod 600 /home/admin/settings.config || exit 1 cat >> /home/admin/settings.config <