mirror of
https://github.com/mynodebtc/mynode.git
synced 2024-11-11 16:09:16 +00:00
Change capitalization
This commit is contained in:
parent
6036948c6b
commit
7e0afe882c
|
@ -746,7 +746,7 @@
|
|||
=== v0.2.12 ===
|
||||
- Add Thunderhub v0.8.13
|
||||
- Upgrade Specter to v0.5.5
|
||||
- Decrease CPU usage when electrum wallet is using myNode
|
||||
- Decrease CPU usage when electrum wallet is using MyNode
|
||||
- Use gunicorn for HTTPS
|
||||
- Add tor service for lnbits, caravan, and specter
|
||||
- Fix serial on RockPro64 devices
|
||||
|
@ -801,7 +801,7 @@
|
|||
- Add Docker container info to status page
|
||||
- Add option to run apt-get upgrade via tor
|
||||
- Add Onion URL for BTCPay Server
|
||||
- Add more myNode CLI commands
|
||||
- Add more MyNode CLI commands
|
||||
- Upgrade RTL to v0.7.1
|
||||
- Add more detail to lnd status
|
||||
- Bug fixes and minor improvements
|
||||
|
@ -1133,7 +1133,7 @@
|
|||
- Upgrade RTL to 0.5.1
|
||||
|
||||
=== v0.1.50 ===
|
||||
- Big fixes for myNode VM (still beta)
|
||||
- Big fixes for MyNode VM (still beta)
|
||||
- Display footer on status page
|
||||
|
||||
=== v0.1.49 ===
|
||||
|
@ -1166,7 +1166,7 @@
|
|||
=== v0.1.44 ===
|
||||
- Add changelog to settings page
|
||||
- Add shutdown option on settings page
|
||||
- LND Admin password will match the overall myNode password
|
||||
- LND Admin password will match the overall MyNode password
|
||||
|
||||
=== v0.1.43 ===
|
||||
- Initial changelog
|
||||
|
|
10
LICENSE.md
10
LICENSE.md
|
@ -1,4 +1,4 @@
|
|||
myNode is licensed under a
|
||||
MyNode is licensed under a
|
||||
Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License
|
||||
with some modifications in section 9.
|
||||
|
||||
|
@ -333,19 +333,19 @@ Section 8 -- Interpretation.
|
|||
that apply to the Licensor or You, including from the legal
|
||||
processes of any jurisdiction or authority.
|
||||
|
||||
Section 9 -- myNode License Additions
|
||||
Section 9 -- MyNode License Additions
|
||||
|
||||
a. Distribution and forking is permitted under the following
|
||||
conditions:
|
||||
|
||||
1. Modifications remain public and can be merged back into the
|
||||
main myNode repo without restriction.
|
||||
main MyNode repo without restriction.
|
||||
|
||||
2. Distribution of modifications to the licensing, product key,
|
||||
or access to premium features is prohibited.
|
||||
|
||||
3. Use of the myNode logo or brand material to act on behalf of
|
||||
or impersonate myNode is prohibited.
|
||||
3. Use of the MyNode logo or brand material to act on behalf of
|
||||
or impersonate MyNode is prohibited.
|
||||
|
||||
=======================================================================
|
||||
|
||||
|
|
2
Makefile
2
Makefile
|
@ -24,7 +24,7 @@ stop_file_server:
|
|||
|
||||
|
||||
|
||||
# Download base myNode images
|
||||
# Download base MyNode images
|
||||
out/base_images/raspi3_base.img.gz:
|
||||
@mkdir -p out/base_images/
|
||||
@wget https://mynodebtc.com/device/mynode_images/raspi3_base.img.gz -O out/base_images/raspi3_base.img.gz
|
||||
|
|
46
README.md
46
README.md
|
@ -1,4 +1,4 @@
|
|||
[![myNode](https://mynodebtc.github.io/images/logo.png)](https://github.com/mynodebtc/mynode)
|
||||
[![MyNode](https://mynodebtc.github.io/images/logo.png)](https://github.com/mynodebtc/mynode)
|
||||
|
||||
[![Version](https://img.shields.io/github/v/tag/mynodebtc/mynode?label=version&color=green)](https://github.com/mynodebtc/mynode/tag)
|
||||
[![Community Chat](https://img.shields.io/badge/community%20chat-telegram-blue)](https://t.me/mynode_btc)
|
||||
|
@ -7,7 +7,7 @@
|
|||
|
||||
|
||||
# Bitcoin, Lightning, and more!
|
||||
myNode aims to be the easiest way to run a dedicated, easy to use, Bitcoin Node and Lightning Wallet!
|
||||
MyNode aims to be the easiest way to run a dedicated, easy to use, Bitcoin Node and Lightning Wallet!
|
||||
|
||||
We combine the best open source software with our interface, management, and support so you can easily, privately, and securely use Bitcoin and Lightning.
|
||||
|
||||
|
@ -18,12 +18,12 @@ Website: https://mynodebtc.com
|
|||
<img src="images/ui_dual_mode.png" width="600">
|
||||
|
||||
## Overview
|
||||
myNode is a platform that provides uptime, reliability, ease-of-use and a huge variety of applications! By integrating a number of Bitcoin-related open source projects, it provides access to Bitcoin and Lightning along with a number of other features.
|
||||
MyNode is a platform that provides uptime, reliability, ease-of-use and a huge variety of applications! By integrating a number of Bitcoin-related open source projects, it provides access to Bitcoin and Lightning along with a number of other features.
|
||||
|
||||
By running Bitcoin and Lightning on your myNode device, you maintain all the security and privacy originally intended in the Bitcoin protocol. Your transactions are verified by your local node, removing the need to trust online 3rd parties for spending or verifying funds.
|
||||
By running Bitcoin and Lightning on your MyNode device, you maintain all the security and privacy originally intended in the Bitcoin protocol. Your transactions are verified by your local node, removing the need to trust online 3rd parties for spending or verifying funds.
|
||||
|
||||
## myNode Premium
|
||||
myNode offers premium support, simplified upgrades and more! If you are running myNode Community Edition and want one-click upgrades or you want to purchase a supported, high quality device, please visit mynodebtc.com.
|
||||
## MyNode Premium
|
||||
MyNode offers premium support, simplified upgrades and more! If you are running MyNode Community Edition and want one-click upgrades or you want to purchase a supported, high quality device, please visit mynodebtc.com.
|
||||
|
||||
Upgrade now or purchase a device at:<br/>
|
||||
https://mynodebtc.com/order_now
|
||||
|
@ -33,7 +33,7 @@ https://mynodebtc.com/order_now
|
|||
<img src="images/devices.png" width="600">
|
||||
|
||||
## Features
|
||||
Each myNode device comes with a number of wonderful features.
|
||||
Each MyNode device comes with a number of wonderful features.
|
||||
|
||||
<img src="images/app_icons.png" width="600">
|
||||
<!--
|
||||
|
@ -72,8 +72,8 @@ Each myNode device comes with a number of wonderful features.
|
|||
- Dedicated hardware keeps you constantly and securely connected!
|
||||
-->
|
||||
|
||||
## Running myNode
|
||||
You can run myNode on your own device in just a few easy steps!
|
||||
## Running MyNode
|
||||
You can run MyNode on your own device in just a few easy steps!
|
||||
|
||||
1. Download an Image
|
||||
* [Downloads](https://mynodebtc.com/download)
|
||||
|
@ -93,17 +93,17 @@ We currently have images for the following devices available for download.
|
|||
- PCs and Servers
|
||||
- Virtual Machine Support (VirtualBox, VMWare)
|
||||
|
||||
## Upgrading your myNode
|
||||
Once you are running myNode, you can easily [update the software](https://mynodebtc.github.io/device/upgrading-device.html) yourself!
|
||||
## Upgrading your MyNode
|
||||
Once you are running MyNode, you can easily [update the software](https://mynodebtc.github.io/device/upgrading-device.html) yourself!
|
||||
|
||||
|
||||
## Developing for myNode
|
||||
## Developing for MyNode
|
||||
|
||||
### Developing the myNode Platform
|
||||
### Developing the MyNode Platform
|
||||
See the [development guide](https://github.com/mynodebtc/mynode/blob/master/doc/development.md).
|
||||
|
||||
### Adding new Applications to myNode
|
||||
To develop and add new applications to mynode, check out the [Software Development Kit (SDK)](https://github.com/mynodebtc/mynode_sdk).
|
||||
### Adding new Applications to MyNode
|
||||
To develop and add new applications to MyNode, check out the [Software Development Kit (SDK)](https://github.com/mynodebtc/mynode_sdk).
|
||||
|
||||
|
||||
## Install on Existing System (beta)
|
||||
|
@ -118,7 +118,7 @@ wget https://raw.githubusercontent.com/mynodebtc/mynode/latest_release/setup/set
|
|||
sudo bash ./mynode_setup.sh online
|
||||
```
|
||||
|
||||
Once the script successfully completed, reboot and you will be running myNode!
|
||||
Once the script successfully completed, reboot and you will be running MyNode!
|
||||
|
||||
## Screenshots
|
||||
<img src="images/ui.png" width="600">
|
||||
|
@ -156,26 +156,26 @@ There is much more to Bitcoin and the Lighting Network than is mentioned here. F
|
|||
<a href="https://www.lopp.net/bitcoin-information.html">Bitcoin Information</a>
|
||||
|
||||
## Security
|
||||
There are many reasons to run a Bitcoin Node. It helps keep the Bitcoin network secure and reduces the trust you are giving others when using 3rd party Bitcoin Explorers or Bitcoin Light Wallet servers. They can track you or give you false information, reducing your security and privacy. A “full node”, like the Bitcoin node running on your myNode device, personally validates all blocks in the Bitcoin blockchain making sure your Bitcoin transactions and Lightning network use is built on the strongest, most trusted foundation possible.
|
||||
There are many reasons to run a Bitcoin Node. It helps keep the Bitcoin network secure and reduces the trust you are giving others when using 3rd party Bitcoin Explorers or Bitcoin Light Wallet servers. They can track you or give you false information, reducing your security and privacy. A “full node”, like the Bitcoin node running on your MyNode device, personally validates all blocks in the Bitcoin blockchain making sure your Bitcoin transactions and Lightning network use is built on the strongest, most trusted foundation possible.
|
||||
|
||||
By using myNode for your Lightning Wallet, Bitcoin Wallet, and Block Explorer, you no longer have to trust others to give you the correct information! This increases your security when protecting your valuable assets.
|
||||
By using MyNode for your Lightning Wallet, Bitcoin Wallet, and Block Explorer, you no longer have to trust others to give you the correct information! This increases your security when protecting your valuable assets.
|
||||
|
||||
Please note, myNode is not responsible for any lost funds while using your device. We have taken significant measures to protect your assets by securing myNode, but lightning wallets are meant to be online and used for spending where risks are greater. Please do your own research into Bitcoin and the Lightning Network before investing in cryptocurrency.
|
||||
Please note, MyNode is not responsible for any lost funds while using your device. We have taken significant measures to protect your assets by securing MyNode, but lightning wallets are meant to be online and used for spending where risks are greater. Please do your own research into Bitcoin and the Lightning Network before investing in cryptocurrency.
|
||||
|
||||
For long term storage of cryptocurrency assets, please consider using a hardware wallet, like a Ledger or Trezor.
|
||||
|
||||
## Community
|
||||
myNode has a wonderful, helpful community that assists with development and support. It would be impossible to run this project without their involvement and support! The effort they put in to make this, and all Bitcoin projects, a success is truly appreciated.
|
||||
MyNode has a wonderful, helpful community that assists with development and support. It would be impossible to run this project without their involvement and support! The effort they put in to make this, and all Bitcoin projects, a success is truly appreciated.
|
||||
|
||||
## Bounties
|
||||
It takes a lot of work to add new features and maintain myNode. In order to provide desired features, improve documentation, and help provide the best product possible, some new features and improvements have bounties associsated with them. If anyone in the community would like to implement improvements, they can claim the bounty.
|
||||
It takes a lot of work to add new features and maintain MyNode. In order to provide desired features, improve documentation, and help provide the best product possible, some new features and improvements have bounties associsated with them. If anyone in the community would like to implement improvements, they can claim the bounty.
|
||||
|
||||
[Bounty List](https://github.com/mynodebtc/mynode/blob/master/doc/bounties.md)
|
||||
|
||||
## License
|
||||
The primary myNode License is a variation of CC BY-NC-ND 4.0 with some modifications in Section 9.
|
||||
The primary MyNode License is a variation of CC BY-NC-ND 4.0 with some modifications in Section 9.
|
||||
|
||||
This license applies to the myNode platform, but each application likely has its own license and code to integrate each application to myNode uses the LGPL v3.0. Code to add applications can be stored under `./rootfs/standard/usr/share/mynode_apps/` and uses the License file at `./rootfs/standard/usr/share/mynode_apps/LICENSE.md`.
|
||||
This license applies to the MyNode platform, but each application likely has its own license and code to integrate each application to MyNode uses the LGPL v3.0. Code to add applications can be stored under `./rootfs/standard/usr/share/mynode_apps/` and uses the License file at `./rootfs/standard/usr/share/mynode_apps/LICENSE.md`.
|
||||
|
||||
## Responsible Disclosure
|
||||
Found any critical bugs or vulnerabilities? Please send us an email at admin@mynodebtc.com. Thanks!
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
# myNode System Notes
|
||||
# MyNode System Notes
|
||||
|
||||
Various restrictions and behaviors of myNode and the various applications are documented below.
|
||||
Various restrictions and behaviors of MyNode and the various applications are documented below.
|
||||
|
||||
## General
|
||||
- Not all applications can be enabled at once on most hardware. It will overload the system resources and cause unstable
|
||||
|
@ -24,7 +24,7 @@ differences are:
|
|||
- The swapfile will not work with btrfs
|
||||
|
||||
## Testnet Toggle
|
||||
- Testnet can be enabled via the settings page. This is a great way to test various Bitcoin and Lightning applications. However, not all apps support testnet yet or have not been integrated within myNode to work on testnet. The following apps
|
||||
- Testnet can be enabled via the settings page. This is a great way to test various Bitcoin and Lightning applications. However, not all apps support testnet yet or have not been integrated within MyNode to work on testnet. The following apps
|
||||
have support or patial support.
|
||||
- Bitcoin
|
||||
- Lightning
|
||||
|
@ -37,15 +37,15 @@ have support or patial support.
|
|||
## Lightning Terminal
|
||||
|
||||
- The Lightning Terminal password is randomized when it is installed. You can view it via the Lightning page.
|
||||
- The password may be updated to your myNode password in future versions.
|
||||
- The password may be updated to your MyNode password in future versions.
|
||||
|
||||
## Thunderhub
|
||||
|
||||
- When Thunderhub is first installed, logging in will be disabled. You must either change your password or log out and log back in of the the myNode UI before using Thunderhub. At that point, Thunderhub will use the same password as myNode.
|
||||
- When Thunderhub is first installed, logging in will be disabled. You must either change your password or log out and log back in of the the MyNode UI before using Thunderhub. At that point, Thunderhub will use the same password as MyNode.
|
||||
|
||||
## BTC Pay Server
|
||||
|
||||
- The upgrade button within BTC Pay Server will not work on myNode. Upgrades are performed as part of the myNode upgrade process.
|
||||
- The upgrade button within BTC Pay Server will not work on MyNode. Upgrades are performed as part of the MyNode upgrade process.
|
||||
- On 32-bit ARM devices BTC Pay Server can only upgrade to version 1.3.6
|
||||
|
||||
## CKBunker
|
||||
|
@ -55,11 +55,11 @@ have support or patial support.
|
|||
- echo 0 > /sys/bus/usb/devices/<coldcard device>/authorized
|
||||
- echo 1 > /sys/bus/usb/devices/<coldcard device>/authorized
|
||||
- CKBunker uses a separate password that starts as "bolt" and can be updated within the app
|
||||
- The password is stored in plaintext on the myNode drive
|
||||
- The password is stored in plaintext on the MyNode drive
|
||||
|
||||
## Sphinx Relay
|
||||
|
||||
- Connection strings may only work a single time but are re-generated on each reboot. Since myNode does not know which string was used to successfully connect, they continue to be displayed in the UI, even though they may no longer be valid.
|
||||
- Connection strings may only work a single time but are re-generated on each reboot. Since MyNode does not know which string was used to successfully connect, they continue to be displayed in the UI, even though they may no longer be valid.
|
||||
|
||||
## Mempool
|
||||
|
||||
|
|
|
@ -1,65 +1,3 @@
|
|||
# Active Bounties
|
||||
|
||||
The myNode team is offering bounties for various improvements to improve the Bitcoin and Lightning experience for users. Working code should be submitted as a pull request via GitHub and must be merged to collect the bounty. To inquire about status of a bounty, to contribute to a bounty, or to propose a new bounty please email admin@mynodebtc.com.
|
||||
|
||||
## Migration Tool
|
||||
Known active efforts: none
|
||||
|
||||
Payout: 1,000,000 sats (0.01 BTC)
|
||||
|
||||
With the growing number of node options available, some users would like to migrate more easily to myNode. I would be nice if the following user experience was possible, allowing migrate of critical data to a new myNode setup.
|
||||
|
||||
- Boot myNode with RaspiBlitz or Umbrel drive
|
||||
- Prompt user to migrate drive
|
||||
- If confirmed
|
||||
- Update the drive to use myNode drive folder format
|
||||
- Move Bitcoin data
|
||||
- Migrate Lightning data
|
||||
- Move old data to backup folder (optional, depends on size)
|
||||
- Reboot
|
||||
|
||||
Alternatively, create two tools to more easily import data specifically for LND and Bitcoin.
|
||||
|
||||
For example, a tool to import a tarball of LND data + prompt for existing password to put in the .lndpw file. For bitcoin, possibly a page to prompt for a server + password to SCP files from or a way to upload a tarball.
|
||||
|
||||
## myNode Guides
|
||||
|
||||
Known active efforts: none
|
||||
|
||||
Payout: Various / guide
|
||||
|
||||
Additional myNode guides would be helpful for users attempting to use various tools or features.
|
||||
|
||||
- Guide for replacing each piece of hardware for Raspberry Pi 4 (100k sats)
|
||||
- Blue wallet w/ tor (100k sats)
|
||||
- Guide to setup BTCPay for public access via HTTPS with Custom Domain (150k sats)
|
||||
|
||||
GitHub: https://github.com/mynodebtc/mynodebtc.github.io
|
||||
|
||||
|
||||
# Claimed Bounties
|
||||
|
||||
## myNode Guides
|
||||
|
||||
Additional myNode guides would be helpful for users attempting to use various tools or features.
|
||||
|
||||
- ~~Open JoininBox / JoinMarket (75k sats)~~
|
||||
- ~~Guide for voltage error (75k sats)~~
|
||||
- ~~Guide to update specific app versions (100k sats)~~
|
||||
- ~~SD card read only error (75k sats)~~
|
||||
- ~~Guide for fsck error (75k sats)~~
|
||||
- ~~Guide to check seed via BlueWallet (100k sats)~~
|
||||
- ~~Guide for WiFi (100k sats)~~
|
||||
- ~~Guide for running myNode using VirtualBox (100k sats)~~
|
||||
- ~~Guide walking user through Clone Tool usage (75k sats)~~
|
||||
- ~~Developer guide to add new application (150k sats)~~
|
||||
|
||||
## Add BIP 158 Toggle
|
||||
|
||||
Completed: https://github.com/mynodebtc/mynode/pull/596
|
||||
|
||||
Payout: 200k sats
|
||||
|
||||
It may be beneficial to some users to enable block filters so addresses can be scanned faster. A toggle should be made available on the Bitcoin page to enable block filters (blockfilterindex=1). Changing this would probably need to reboot the node and the user should be prompted for confirmation prior to saving. The toggle should look similar to the watchtower toggle on the LND page.
|
||||
|
||||
This does take extra disk space the creating the it may take some time. The user should be appropriately warned of the tradeoffs.
|
||||
There are no active bounties.
|
|
@ -1,10 +1,10 @@
|
|||
# Developing for myNode
|
||||
# Developing for MyNode
|
||||
|
||||
## Loading Modified Software
|
||||
Once you are running myNode, you can easily modify and update the software yourself!
|
||||
Once you are running MyNode, you can easily modify and update the software yourself!
|
||||
|
||||
1. Start by running myNode on your device via the instructions above in "Running myNode"
|
||||
2. Modify myNode files
|
||||
1. Start by running MyNode on your device via the instructions above in "Running MyNode"
|
||||
2. Modify MyNode files
|
||||
* Clone this git repo on your PC or laptop - `git clone https://github.com/mynodebtc/mynode.git`
|
||||
* Make your modifications
|
||||
3. Run `make rootfs`
|
||||
|
@ -24,7 +24,7 @@ Add another argument to the local upgrade script:
|
|||
- To update files and restart web server, run `sudo mynode-local-upgrade [dev pc ip address] www`
|
||||
|
||||
|
||||
## Setup new device to run myNode
|
||||
## Setup new device to run MyNode
|
||||
This steps will setup a new device and can be used for making images. These steps allow for updates to the `setup_device.sh` script that does the initial install.
|
||||
|
||||
1. Run make command for your device. Ex:
|
||||
|
@ -36,4 +36,4 @@ This steps will setup a new device and can be used for making images. These step
|
|||
* `make setup_new_other`
|
||||
3. Follow Instructions
|
||||
2. Reboot Device
|
||||
4. Congratulations! You're running a new myNode device!
|
||||
4. Congratulations! You're running a new MyNode device!
|
|
@ -22,10 +22,10 @@
|
|||
|
||||
- Graphical Install
|
||||
- English, US, American English
|
||||
- Hostname: myNode
|
||||
- Hostname: mynode
|
||||
- Domain Name: <LEAVE_EMPTY>
|
||||
- Root Password: bolt
|
||||
- Full Name: myNode
|
||||
- Full Name: mynode
|
||||
- Username: mynode
|
||||
- Password: bolt
|
||||
- Timezone: Central
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
2. Set hostname
|
||||
|
||||
```sh
|
||||
hostname myNode
|
||||
hostname mynode
|
||||
```
|
||||
|
||||
3. Add admin user
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
3. Run `sudo raspi-config`
|
||||
|
||||
- Update 8: Get latest configuration tool
|
||||
- Network Options 2: Hostname -> myNode
|
||||
- Network Options 2: Hostname -> mynode
|
||||
- Boot Options 3: Choose Desktop / CLI -> Console
|
||||
- Boot Options 3: Wait for Network at Boot
|
||||
- Localisation 4: I2 -> US -> Central
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
3. Run `sudo raspi-config`
|
||||
|
||||
- Update 8: Get latest configuration tool
|
||||
- Network Options 2: Hostname -> myNode
|
||||
- Network Options 2: Hostname -> mynode
|
||||
- Boot Options 3: Choose Desktop / CLI -> Console
|
||||
- Boot Options 3: Wait for Network at Boot
|
||||
- Localisation 4: I2 -> US -> Central
|
||||
|
|
|
@ -17,8 +17,8 @@
|
|||
4. Set hostname
|
||||
|
||||
```sh
|
||||
echo "myNode" | sudo tee /etc/hostname
|
||||
sudo sed -i 's/rock64/myNode/g' /etc/hosts
|
||||
echo "mynode" | sudo tee /etc/hostname
|
||||
sudo sed -i 's/rock64/mynode/g' /etc/hosts
|
||||
# OR armbian-config -> Personal -> Hostname
|
||||
```
|
||||
|
||||
|
|
|
@ -18,8 +18,8 @@
|
|||
4. Set hostname
|
||||
|
||||
```sh
|
||||
echo "myNode" | sudo tee /etc/hostname
|
||||
sudo sed -i 's/rockpi4-b/myNode/g' /etc/hosts
|
||||
echo "mynode" | sudo tee /etc/hostname
|
||||
sudo sed -i 's/rockpi4-b/mynode/g' /etc/hosts
|
||||
# OR armbian-config -> Personal -> Hostname
|
||||
```
|
||||
|
||||
|
|
|
@ -17,8 +17,8 @@
|
|||
4. Set hostname
|
||||
|
||||
```sh
|
||||
echo "myNode" | sudo tee /etc/hostname
|
||||
sudo sed -i 's/rock64/myNode/g' /etc/hosts
|
||||
echo "mynode" | sudo tee /etc/hostname
|
||||
sudo sed -i 's/rock64/mynode/g' /etc/hosts
|
||||
# OR armbian-config -> Personal -> Hostname
|
||||
```
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# myNode Fan Control (RockPro64)
|
||||
# MyNode Fan Control (RockPro64)
|
||||
# /etc/systemd/system/fan_control.service
|
||||
|
||||
[Unit]
|
||||
Description=myNode Fan Control
|
||||
Description=MyNode Fan Control
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
# but is also sensible on 64bit to prevent filling /var or even / partition
|
||||
#CONF_MAXSWAP=8000
|
||||
|
||||
# myNode Settings
|
||||
# MyNode Settings
|
||||
CONF_SWAPSIZE=2048
|
||||
CONF_MAXSWAP=8000
|
||||
CONF_SWAPFILE=/mnt/hdd/swapfile
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
# Set myNode HTTPS Cert and Key
|
||||
# Set MyNode HTTPS Cert and Key
|
||||
ssl_certificate /home/bitcoin/.mynode/https/myNode.local.crt;
|
||||
ssl_certificate_key /home/bitcoin/.mynode/https/myNode.local.key;
|
|
@ -13,7 +13,7 @@
|
|||
|
||||
[Manager]
|
||||
|
||||
# myNode additions
|
||||
# MyNode additions
|
||||
DefaultTasksMax=infinity
|
||||
|
||||
# Defaults
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# myNode background service
|
||||
# MyNode background service
|
||||
# /etc/systemd/system/background.service
|
||||
|
||||
[Unit]
|
||||
Description=myNode Background Checks
|
||||
Description=MyNode Background Checks
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# myNode Bandwidth Management
|
||||
# MyNode Bandwidth Management
|
||||
# /etc/systemd/system/bandwidth.service
|
||||
|
||||
[Unit]
|
||||
Description=myNode Bandwidth Management
|
||||
Description=MyNode Bandwidth Management
|
||||
Wants=quicksync.service
|
||||
After=quicksync.service
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# myNode btcpayserver service
|
||||
# MyNode btcpayserver service
|
||||
# /etc/systemd/system/btcpayserver.service
|
||||
|
||||
[Unit]
|
||||
|
@ -10,7 +10,7 @@ Requires=docker.service network-online.target bitcoin.service
|
|||
Type=oneshot
|
||||
RemainAfterExit=yes
|
||||
|
||||
# myNode Customizations
|
||||
# MyNode Customizations
|
||||
ExecStartPre=/usr/bin/is_not_shutting_down.sh
|
||||
ExecStartPre=/usr/bin/is_mainnet.sh
|
||||
ExecStartPre=/usr/bin/wait_on_docker_image_install.sh
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# myNode check in service
|
||||
# MyNode check in service
|
||||
# /etc/systemd/system/check_in.service
|
||||
|
||||
[Unit]
|
||||
Description=myNode Check In
|
||||
Description=MyNode Check In
|
||||
Wants=network-online.target
|
||||
After=network-online.target
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# myNode Install Docker Images
|
||||
# MyNode Install Docker Images
|
||||
# /etc/systemd/system/docker_images.service
|
||||
|
||||
[Unit]
|
||||
Description=myNode Install Docker Images
|
||||
Description=MyNode Install Docker Images
|
||||
Wants=mynode.service
|
||||
After=mynode.service
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# myNode www service
|
||||
# MyNode www service
|
||||
# /etc/systemd/system/www.service
|
||||
|
||||
[Unit]
|
||||
Description=myNode Drive Check
|
||||
Description=MyNode Drive Check
|
||||
Wants=mynode.service
|
||||
After=mynode.service
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# myNode electrs service
|
||||
# MyNode electrs service
|
||||
# /etc/systemd/system/electrs.service
|
||||
|
||||
[Unit]
|
||||
Description=myNode Electrum Server
|
||||
Description=MyNode Electrum Server
|
||||
Wants=bitcoin.service quicksync.service
|
||||
After=bitcoin.service
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# myNode firewall service
|
||||
# MyNode firewall service
|
||||
# /etc/systemd/system/firewall.service
|
||||
|
||||
[Unit]
|
||||
Description=myNode Firewall
|
||||
Description=MyNode Firewall
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# myNode glances service (system monitoring)
|
||||
# MyNode glances service (system monitoring)
|
||||
# /etc/systemd/system/glances.service
|
||||
|
||||
[Unit]
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# myNode www service
|
||||
# MyNode www service
|
||||
# /etc/systemd/system/www.service
|
||||
|
||||
###############################
|
||||
|
@ -6,7 +6,7 @@
|
|||
###############################
|
||||
|
||||
[Unit]
|
||||
Description=myNode Web Server
|
||||
Description=MyNode Web Server
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# myNode invalid block service
|
||||
# MyNode invalid block service
|
||||
# /etc/systemd/system/invalid_block_check.service
|
||||
|
||||
[Unit]
|
||||
Description=myNode Bitcoin Invalid Block Check
|
||||
Description=MyNode Bitcoin Invalid Block Check
|
||||
After=network.target mynode.service
|
||||
|
||||
[Service]
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# myNode LND Admin Files
|
||||
# MyNode LND Admin Files
|
||||
# /etc/systemd/system/lnd_admin_files.service
|
||||
|
||||
[Unit]
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# myNode Backup LND
|
||||
# MyNode Backup LND
|
||||
# /etc/systemd/system/lnd_backup.service
|
||||
|
||||
[Unit]
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# myNode Unlock LND
|
||||
# MyNode Unlock LND
|
||||
# /etc/systemd/system/lnd_unlock.service
|
||||
|
||||
[Unit]
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# myNode start service
|
||||
# MyNode start service
|
||||
# /etc/systemd/system/mynode.service
|
||||
|
||||
[Unit]
|
||||
Description=myNode Startup
|
||||
Description=MyNode Startup
|
||||
Before=docker.service containerd.service
|
||||
Wants=network-online.target
|
||||
After=network-online.target
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# myNode Premium+ Connect
|
||||
# MyNode Premium+ Connect
|
||||
# /etc/systemd/system/premium_plus_connect.service
|
||||
|
||||
[Unit]
|
||||
Description=myNode Premium+ Connect
|
||||
Description=MyNode Premium+ Connect
|
||||
Wants=network-online.target
|
||||
After=network-online.target
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# myNode QuickSync Service
|
||||
# MyNode QuickSync Service
|
||||
# /etc/systemd/system/quicksync.service
|
||||
|
||||
[Unit]
|
||||
Description=myNode QuickSync
|
||||
Description=MyNode QuickSync
|
||||
Wants=mynode.service
|
||||
After=mynode.service
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# myNode Rotate Logs
|
||||
# MyNode Rotate Logs
|
||||
# /etc/systemd/system/rotate_logs.service
|
||||
|
||||
[Unit]
|
||||
Description=myNode Rotate Logs
|
||||
Description=MyNode Rotate Logs
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# myNode Seed Bitcoin Peers
|
||||
# MyNode Seed Bitcoin Peers
|
||||
# /etc/systemd/system/seed_bitcoin_peers.service
|
||||
|
||||
[Unit]
|
||||
Description=myNode Add Seed Peers
|
||||
Description=MyNode Add Seed Peers
|
||||
Wants=bitcoin.service
|
||||
After=bitcoin.service
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# myNode www service
|
||||
# MyNode www service
|
||||
# /etc/systemd/system/www.service
|
||||
|
||||
#############################################
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# myNode torrent_check service
|
||||
# MyNode torrent_check service
|
||||
# /etc/systemd/system/torrent_check.service
|
||||
|
||||
[Unit]
|
||||
Description=myNode Torrent Check
|
||||
Description=MyNode Torrent Check
|
||||
Wants=mynode.service
|
||||
After=mynode.service
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# myNode usb driver check
|
||||
# MyNode usb driver check
|
||||
# /etc/systemd/system/usb_driver_check.service
|
||||
|
||||
[Unit]
|
||||
Description=myNode USB Driver Check
|
||||
Description=MyNode USB Driver Check
|
||||
Wants=mynode.service
|
||||
After=mynode.service
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# myNode VPN Service
|
||||
# MyNode VPN Service
|
||||
# /etc/systemd/system/vpn.service
|
||||
|
||||
[Unit]
|
||||
Description=myNode VPN
|
||||
Description=MyNode VPN
|
||||
Wants=mynode.service
|
||||
After=mynode.service
|
||||
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# myNode www service
|
||||
# MyNode www service
|
||||
# /etc/systemd/system/www.service
|
||||
|
||||
[Unit]
|
||||
Description=myNode Web Server
|
||||
Description=MyNode Web Server
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
|
|
|
@ -215,7 +215,7 @@ CookieAuthFileGroupReadable 1
|
|||
UseEntryGuards 1
|
||||
NumEntryGuards 3
|
||||
|
||||
# Hidden Service for myNode
|
||||
# Hidden Service for MyNode
|
||||
HiddenServiceDir /var/lib/tor/mynode/
|
||||
HiddenServiceVersion 3
|
||||
HiddenServicePort 80 127.0.0.1:80
|
||||
|
@ -246,18 +246,18 @@ HiddenServicePort 25441 127.0.0.1:25441
|
|||
HiddenServicePort 61208 127.0.0.1:61208
|
||||
HiddenServicePort 61209 127.0.0.1:61209
|
||||
|
||||
# Hidden Service for myNode (BTC)
|
||||
# Hidden Service for MyNode (BTC)
|
||||
HiddenServiceDir /var/lib/tor/mynode_btc/
|
||||
HiddenServiceVersion 3
|
||||
HiddenServicePort 8332 127.0.0.1:8332
|
||||
|
||||
# Hidden Service for myNode (LND)
|
||||
# Hidden Service for MyNode (LND)
|
||||
HiddenServiceDir /var/lib/tor/mynode_lnd/
|
||||
HiddenServiceVersion 3
|
||||
HiddenServicePort 10009 127.0.0.1:10009
|
||||
HiddenServicePort 10080 127.0.0.1:10080
|
||||
|
||||
# Hidden Service for myNode (LNDHub)
|
||||
# Hidden Service for MyNode (LNDHub)
|
||||
HiddenServiceDir /var/lib/tor/mynode_lndhub/
|
||||
HiddenServiceVersion 3
|
||||
HiddenServicePort 80 127.0.0.1:3000
|
||||
|
@ -265,7 +265,7 @@ HiddenServicePort 443 127.0.0.1:3001
|
|||
HiddenServicePort 3000 127.0.0.1:3000
|
||||
HiddenServicePort 3001 127.0.0.1:3001
|
||||
|
||||
# Hidden Service for myNode (LNBits)
|
||||
# Hidden Service for MyNode (LNBits)
|
||||
HiddenServiceDir /var/lib/tor/mynode_lnbits/
|
||||
HiddenServiceVersion 3
|
||||
HiddenServicePort 80 127.0.0.1:5000
|
||||
|
@ -273,18 +273,18 @@ HiddenServicePort 443 127.0.0.1:5001
|
|||
HiddenServicePort 5000 127.0.0.1:5000
|
||||
HiddenServicePort 5001 127.0.0.1:5001
|
||||
|
||||
# Hidden Service for myNode (Electrum Server)
|
||||
# Hidden Service for MyNode (Electrum Server)
|
||||
HiddenServiceDir /var/lib/tor/mynode_electrs/
|
||||
HiddenServiceVersion 3
|
||||
HiddenServicePort 50001 127.0.0.1:50001
|
||||
HiddenServicePort 50002 127.0.0.1:50002
|
||||
|
||||
# Hidden Service for myNode (Whirlpool)
|
||||
# Hidden Service for MyNode (Whirlpool)
|
||||
HiddenServiceDir /var/lib/tor/mynode_whirlpool/
|
||||
HiddenServiceVersion 3
|
||||
HiddenServicePort 8899 127.0.0.1:8899
|
||||
|
||||
# Hidden Service for myNode (SSH)
|
||||
# Hidden Service for MyNode (SSH)
|
||||
HiddenServiceDir /var/lib/tor/mynode_ssh/
|
||||
HiddenServiceVersion 3
|
||||
HiddenServicePort 22022 127.0.0.1:22
|
||||
|
|
|
@ -3,8 +3,8 @@
|
|||
THIS_SCRIPT="header"
|
||||
MOTD_DISABLE=""
|
||||
|
||||
toilet -f standard -F metal myNode
|
||||
toilet -f standard -F metal MyNode
|
||||
|
||||
printf '\nWelcome to myNode!\n'
|
||||
printf '\nWelcome to MyNode!\n'
|
||||
uname -a
|
||||
printf '\n'
|
||||
|
|
|
@ -16,7 +16,7 @@ THIS_SCRIPT="sysinfo"
|
|||
MOTD_DISABLE=""
|
||||
STORAGE=/dev/sda1
|
||||
#SHOW_IP_PATTERN="^[ewr].*|^br.*|^lt.*|^umts.*"
|
||||
# myNode Customization
|
||||
# MyNode Customization
|
||||
SHOW_IP_PATTERN="^[ew].*|^lt.*|^umts.*"
|
||||
|
||||
[[ -f /etc/default/armbian-motd ]] && . /etc/default/armbian-motd
|
||||
|
@ -199,7 +199,7 @@ echo ""
|
|||
echo ""
|
||||
echo ""
|
||||
echo "======================================================="
|
||||
echo "=== Visit the myNode Web GUI "
|
||||
echo "=== Visit the MyNode Web GUI "
|
||||
echo "=== http://mynode.local/ "
|
||||
echo "=== OR "
|
||||
printf "=== http://%s/ \n" "$ip_address"
|
||||
|
|
|
@ -86,17 +86,17 @@ def main():
|
|||
# No partition found - must be target drive since its empty
|
||||
if target_found:
|
||||
set_clone_state("error")
|
||||
set_clone_error("Two target drives found. Is myNode drive missing?")
|
||||
set_clone_error("Two target drives found. Is MyNode drive missing?")
|
||||
wait_on_clone_error_dismiss()
|
||||
return
|
||||
else:
|
||||
target_found = True
|
||||
target_drive = d
|
||||
elif len(partitions) > 1:
|
||||
# Multiple partitions found - myNode only uses one, so must be target
|
||||
# Multiple partitions found - MyNode only uses one, so must be target
|
||||
if target_found:
|
||||
set_clone_state("error")
|
||||
set_clone_error("Two target drives found. Is myNode drive missing?")
|
||||
set_clone_error("Two target drives found. Is MyNode drive missing?")
|
||||
wait_on_clone_error_dismiss()
|
||||
return
|
||||
else:
|
||||
|
@ -107,7 +107,7 @@ def main():
|
|||
a = round(time.time() * 1000)
|
||||
if check_partition_for_mynode(p):
|
||||
if mynode_found:
|
||||
# Second drive has myNode partition (failed clone?) - use size to determine target
|
||||
# Second drive has MyNode partition (failed clone?) - use size to determine target
|
||||
both_drives_have_mynode = True
|
||||
drive_1_size = get_drive_size(mynode_drive)
|
||||
drive_2_size = get_drive_size(d)
|
||||
|
@ -119,13 +119,13 @@ def main():
|
|||
mynode_drive = d
|
||||
target_found = True
|
||||
else:
|
||||
log_message(f"myNode Partition Found: {p}")
|
||||
log_message(f"MyNode Partition Found: {p}")
|
||||
mynode_drive = d
|
||||
mynode_found = True
|
||||
else:
|
||||
if target_found:
|
||||
set_clone_state("error")
|
||||
set_clone_error("Two target drives found. Is myNode drive missing?")
|
||||
set_clone_error("Two target drives found. Is MyNode drive missing?")
|
||||
wait_on_clone_error_dismiss()
|
||||
return
|
||||
else:
|
||||
|
@ -168,7 +168,7 @@ def main():
|
|||
# Make new partition on dest drive
|
||||
log_message("Creating Partition...")
|
||||
os.system("echo 'Creating Partition...' > /tmp/.clone_progress")
|
||||
subprocess.check_output(f"mkfs.ext4 -F -L myNode /dev/{target_drive}1", shell=True)
|
||||
subprocess.check_output(f"mkfs.ext4 -F -L MyNode /dev/{target_drive}1", shell=True)
|
||||
time.sleep(2)
|
||||
|
||||
# Mounting Partitions
|
||||
|
|
|
@ -6,7 +6,7 @@ drive=""
|
|||
drive=$(cat /tmp/.mynode_drive)
|
||||
while [ -z "$drive" ]; do
|
||||
sleep 10
|
||||
echo "Waiting on myNode Drive..."
|
||||
echo "Waiting on MyNode Drive..."
|
||||
drive=$(cat /tmp/.mynode_drive)
|
||||
done
|
||||
|
||||
|
|
|
@ -6,14 +6,14 @@ proc checkPartitionForExistingMyNodeFs {partition} {
|
|||
return 0
|
||||
}
|
||||
if { [file exists /mnt/hdd/.mynode] } {
|
||||
puts "Found existing myNode FS on ${partition}"
|
||||
puts "Found existing MyNode FS on ${partition}"
|
||||
runCommand echo /dev/${partition} > /tmp/.mynode_drive
|
||||
return 1
|
||||
}
|
||||
|
||||
runCommand umount /mnt/hdd
|
||||
|
||||
puts "No myNode filesystem on existing partition ${partition}"
|
||||
puts "No MyNode filesystem on existing partition ${partition}"
|
||||
return 0
|
||||
}
|
||||
|
||||
|
@ -73,7 +73,7 @@ proc findAllPartitionsForBlockDevices {blockDevices partitionsName} {
|
|||
|
||||
proc createMyNodeFsOnBlockDevice {blockDevice} {
|
||||
if [exec cat /sys/block/$blockDevice/ro] {
|
||||
puts "Cannot create myNode partition on ${blockDevice} because it is read-only"
|
||||
puts "Cannot create MyNode partition on ${blockDevice} because it is read-only"
|
||||
return 0
|
||||
}
|
||||
|
||||
|
@ -100,9 +100,9 @@ proc createMyNodeFsOnBlockDevice {blockDevice} {
|
|||
|
||||
puts "Formatting new partition ${blockPartition}"
|
||||
if [file exists "/tmp/format_filesystem_btrfs"] {
|
||||
runCommand mkfs.btrfs -f -L myNode /dev/${blockPartition}
|
||||
runCommand mkfs.btrfs -f -L MyNode /dev/${blockPartition}
|
||||
} else {
|
||||
runCommand mkfs.ext4 -F -L myNode /dev/${blockPartition}
|
||||
runCommand mkfs.ext4 -F -L MyNode /dev/${blockPartition}
|
||||
}
|
||||
|
||||
#runCommand mount /dev/${blockPartition} /mnt/hdd -o errors=continue
|
||||
|
@ -124,7 +124,7 @@ proc createMyNodeFsOrDie {blockDevices} {
|
|||
}
|
||||
}
|
||||
|
||||
fatal "Cannot find a suitable drive for storing myNode files"
|
||||
fatal "Cannot find a suitable drive for storing MyNode files"
|
||||
}
|
||||
|
||||
proc runCommand {args} {
|
||||
|
|
|
@ -74,9 +74,9 @@ ufw allow 9824 comment 'allow CKBunker HTTPS'
|
|||
ufw allow 50001 comment 'allow Electrum Server'
|
||||
ufw allow 50002 comment 'allow Electrum Server'
|
||||
ufw allow 53001 comment 'allow Sphinx Relay'
|
||||
ufw allow 56881 comment 'allow myNode QuickSync'
|
||||
ufw allow 51413 comment 'allow myNode QuickSync'
|
||||
ufw allow 6771 comment 'allow myNode QuickSync (LPD)'
|
||||
ufw allow 56881 comment 'allow MyNode QuickSync'
|
||||
ufw allow 51413 comment 'allow MyNode QuickSync'
|
||||
ufw allow 6771 comment 'allow MyNode QuickSync (LPD)'
|
||||
ufw allow 19999 comment 'allow Netdata'
|
||||
ufw allow 20000 comment 'allow Netdata HTTPS'
|
||||
ufw allow 25441 comment 'allow Specter Desktop'
|
||||
|
|
|
@ -24,6 +24,7 @@ fi
|
|||
|
||||
mkdir -p $OUTPUT_DIR
|
||||
mkdir -p $HDD_DIR
|
||||
# Domain needs to remain "myNode.local" or new certs will be generated
|
||||
domain=myNode.local
|
||||
commonname=myNode.local
|
||||
|
||||
|
@ -49,10 +50,10 @@ fi
|
|||
|
||||
# Change to your company details
|
||||
country=US
|
||||
state=myNode
|
||||
locality=myNode
|
||||
organization=myNode
|
||||
organizationalunit=myNode
|
||||
state=MyNode
|
||||
locality=MyNode
|
||||
organization=MyNode
|
||||
organizationalunit=MyNode
|
||||
email=satoshi.nakamoto@example.com
|
||||
password=dummypassword
|
||||
|
||||
|
@ -66,7 +67,7 @@ openssl rsa -in $OUTPUT_DIR/$domain.key -passin pass:$password -out $OUTPUT_DIR/
|
|||
|
||||
# Create Certificate
|
||||
echo "Creating Certificate"
|
||||
cat > /tmp/cert_req.conf <<DELIM
|
||||
cat > /tmp/cert_req_$1.conf <<DELIM
|
||||
[req]
|
||||
distinguished_name = req_distinguished_name
|
||||
x509_extensions = v3_req
|
||||
|
@ -93,7 +94,7 @@ DNS.5 = $LOCAL_IP_ADDR
|
|||
DNS.6 = $TOR
|
||||
DELIM
|
||||
|
||||
openssl req -x509 -nodes -days 730 -key $OUTPUT_DIR/$domain.key -out $OUTPUT_DIR/$domain.crt -config /tmp/cert_req.conf -extensions 'v3_req'
|
||||
openssl req -x509 -nodes -days 730 -key $OUTPUT_DIR/$domain.key -out $OUTPUT_DIR/$domain.crt -config /tmp/cert_req_$1.conf -extensions 'v3_req'
|
||||
|
||||
echo "Creating PEM"
|
||||
cat $OUTPUT_DIR/$domain.key > $OUTPUT_DIR/$domain.pem
|
||||
|
|
|
@ -15,6 +15,7 @@ DAYS=10000
|
|||
|
||||
mkdir -p $OUTPUT_DIR
|
||||
mkdir -p $HDD_DIR
|
||||
# Domain needs to remain "myNode.local" or new certs will be generated
|
||||
domain=myNode.local
|
||||
commonname=myNode.local
|
||||
|
||||
|
@ -38,15 +39,15 @@ fi
|
|||
|
||||
# Change to your company details
|
||||
country=US
|
||||
state=myNode
|
||||
locality=myNode
|
||||
organization=myNode
|
||||
organizationalunit=myNode
|
||||
state=MyNode
|
||||
locality=MyNode
|
||||
organization=MyNode
|
||||
organizationalunit=MyNode
|
||||
email=satoshi.nakamoto@example.com
|
||||
|
||||
# Create Certificate
|
||||
echo "Creating Certificate"
|
||||
cat > /tmp/cert_req.conf <<DELIM
|
||||
cat > /tmp/cert_req_electrs.conf <<DELIM
|
||||
[req]
|
||||
prompt = no
|
||||
default_bits = 2048
|
||||
|
@ -75,7 +76,7 @@ DNS.5 = $LOCAL_IP_ADDR
|
|||
DNS.6 = $TOR
|
||||
DELIM
|
||||
|
||||
openssl req -x509 -nodes -days $DAYS -newkey rsa:2048 -keyout $OUTPUT_DIR/$domain.key -out $OUTPUT_DIR/$domain.crt -config /tmp/cert_req.conf
|
||||
openssl req -x509 -nodes -days $DAYS -newkey rsa:2048 -keyout $OUTPUT_DIR/$domain.key -out $OUTPUT_DIR/$domain.crt -config /tmp/cert_req_electrs.conf
|
||||
|
||||
echo "Creating PEM"
|
||||
cat $OUTPUT_DIR/$domain.key > $OUTPUT_DIR/$domain.pem
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
# Setup Initial LND Node Name
|
||||
if [ ! -f /mnt/hdd/mynode/settings/.lndalias ]; then
|
||||
echo "mynodebtc.com [myNode]" > /mnt/hdd/mynode/settings/.lndalias
|
||||
echo "mynodebtc.com [MyNode]" > /mnt/hdd/mynode/settings/.lndalias
|
||||
fi
|
||||
|
||||
# Generate Lightning Terminal Config
|
||||
|
|
|
@ -27,7 +27,7 @@ fi
|
|||
|
||||
# Setup Initial LND Node Name
|
||||
if [ ! -f /mnt/hdd/mynode/settings/.lndalias ]; then
|
||||
echo "mynodebtc.com [myNode]" > /mnt/hdd/mynode/settings/.lndalias
|
||||
echo "mynodebtc.com [MyNode]" > /mnt/hdd/mynode/settings/.lndalias
|
||||
fi
|
||||
|
||||
# Generate LND Config
|
||||
|
|
|
@ -314,7 +314,7 @@ install_dependent_packages() {
|
|||
# done
|
||||
#fi
|
||||
|
||||
# myNode - Install all dependent packages without GUI
|
||||
# MyNode - Install all dependent packages without GUI
|
||||
for i in "${argArray1[@]}"; do
|
||||
echo -n "::: Checking for $i..."
|
||||
$SUDO package_check_install "${i}" &> /dev/null
|
||||
|
@ -332,7 +332,7 @@ unattendedUpgrades() {
|
|||
# UNATTUPG=""
|
||||
#fi
|
||||
|
||||
# myNode will manage upgrades since this would make some OS assumptions
|
||||
# MyNode will manage upgrades since this would make some OS assumptions
|
||||
UNATTUPG=""
|
||||
}
|
||||
|
||||
|
@ -631,7 +631,7 @@ EOF
|
|||
}
|
||||
|
||||
confUnattendedUpgrades() {
|
||||
# myNode Removed
|
||||
# MyNode Removed
|
||||
echo "skipped confUnattendedUpgrades"
|
||||
}
|
||||
|
||||
|
|
|
@ -26,10 +26,10 @@ if settings_file_exists "skip_backup_dns_servers" ; then
|
|||
sed -i "s/^.*append domain-name-servers/#append domain-name-servers/g" /etc/dhcp/dhclient.conf || true
|
||||
else
|
||||
needDns=0
|
||||
grep "Added at myNode startup" /etc/resolv.conf || needDns=1
|
||||
grep "Added at MyNode startup" /etc/resolv.conf || needDns=1
|
||||
if [ $needDns = 1 ]; then
|
||||
echo '' >> /etc/resolv.conf
|
||||
echo '# Added at myNode startup' >> /etc/resolv.conf
|
||||
echo '# Added at MyNode startup' >> /etc/resolv.conf
|
||||
echo 'nameserver 1.1.1.1' >> /etc/resolv.conf
|
||||
echo 'nameserver 208.67.222.222' >> /etc/resolv.conf
|
||||
echo 'nameserver 8.8.8.8' >> /etc/resolv.conf
|
||||
|
@ -133,7 +133,7 @@ dphys-swapfile uninstall || true
|
|||
umount /mnt/hdd || true
|
||||
|
||||
|
||||
# Generate myNode serial number
|
||||
# Generate MyNode serial number
|
||||
while [ ! -f /home/bitcoin/.mynode/mynode_serial ] || [ ! -s /home/bitcoin/.mynode/mynode_serial ]
|
||||
do
|
||||
# Generate random serial for backup devices that don't have serial numbers
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Message
|
||||
echo "Stopping myNode services..."
|
||||
echo "Stopping MyNode services..."
|
||||
|
||||
# Mark we are shutting down
|
||||
touch /tmp/shutting_down
|
||||
|
|
|
@ -4,7 +4,7 @@ if [ -f /home/bitcoin/.mynode/.www_use_python3 ]; then
|
|||
exec /usr/local/bin/python3 /var/www/mynode/mynode.py
|
||||
else
|
||||
# If not forcing python3, use prefer python3 unless in restart cycle
|
||||
count=$(journalctl -b -u www.service | grep -c "Started myNode Web Server")
|
||||
count=$(journalctl -b -u www.service | grep -c "Started MyNode Web Server")
|
||||
modcount=$(($count % 5))
|
||||
if [ "$modcount" -eq 4 ]; then
|
||||
echo "RESTART COUNT: $modcount (PYTHON2)"
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
"nodes": [
|
||||
{
|
||||
"index": 1,
|
||||
"lnNode": "myNode",
|
||||
"lnNode": "MyNode",
|
||||
"lnImplementation": "LND",
|
||||
"Authentication": {
|
||||
"macaroonPath": "/home/bitcoin/.lnd/data/chain/bitcoin/mainnet",
|
||||
|
|
|
@ -514,7 +514,7 @@
|
|||
" - Remote Static Channel Backup (SCB) file backups",
|
||||
" - Lightning Watchtower Monitors Node",
|
||||
" - View Node Status on mynodebtc.com",
|
||||
" - myNode Support"
|
||||
" - MyNode Support"
|
||||
],
|
||||
"category": "networking",
|
||||
"latest_version": "v1.0",
|
||||
|
@ -538,7 +538,7 @@
|
|||
"author": {"name": "Tor", "link": "https://www.torproject.org/"},
|
||||
"website": {"name": "GitHub", "link": "https://github.com/TheTorProject"},
|
||||
"description": [
|
||||
"Tor services are avilable for remotely connecting and using myNode services and applications. It can provide access to web-based wallets and well as support remote connections to LND and Bitcoin directly.",
|
||||
"Tor services are avilable for remotely connecting and using MyNode services and applications. It can provide access to web-based wallets and well as support remote connections to LND and Bitcoin directly.",
|
||||
"Tor Mission - To advance human rights and freedoms by creating and deploying free and open source anonymity and privacy technologies, supporting their unrestricted availability and use, and furthering their scientific and popular understanding."
|
||||
],
|
||||
"category": "networking",
|
||||
|
@ -559,7 +559,7 @@
|
|||
"name": "VPN",
|
||||
"short_name": "vpn",
|
||||
"short_description": "Private Connections",
|
||||
"description": "VPN services on myNode allow simple, remote access to your node no matter where are you are! When VPN is enabled, a server runs on your device which allows secure connections between remote devices and your node using OpenVPN. This not only allows access to your node, but also provides additional security and privacy by encrypting data being sent and received by your phone, tablet, or laptop and hiding it from the local network you are connected to.",
|
||||
"description": "VPN services on MyNode allow simple, remote access to your node no matter where are you are! When VPN is enabled, a server runs on your device which allows secure connections between remote devices and your node using OpenVPN. This not only allows access to your node, but also provides additional security and privacy by encrypting data being sent and received by your phone, tablet, or laptop and hiding it from the local network you are connected to.",
|
||||
"category": "networking",
|
||||
"latest_version": "v1.0",
|
||||
"app_tile_button_text": "Info",
|
||||
|
|
|
@ -49,7 +49,7 @@ zmqpubrawblock=tcp://0.0.0.0:28332
|
|||
zmqpubrawtx=tcp://0.0.0.0:28333
|
||||
zmqpubhashblock=tcp://0.0.0.0:28334
|
||||
|
||||
# myNode Optimizations
|
||||
# MyNode Optimizations
|
||||
dbcache=500
|
||||
maxorphantx=10
|
||||
maxmempool=50
|
||||
|
|
|
@ -57,7 +57,7 @@ faraday.bitcoin.password=password
|
|||
# LND - STILL USING REMOTE NODE FOR NOW
|
||||
#######################################
|
||||
# lnd.maxpendingchannels=5
|
||||
# lnd.alias=myNode [LND]
|
||||
# lnd.alias=MyNode [LND]
|
||||
# lnd.color=#68F442
|
||||
|
||||
# # Tor-only by default
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
|
||||
[Application Options]
|
||||
maxpendingchannels=5
|
||||
alias=myNode [LND]
|
||||
alias=MyNode [LND]
|
||||
color=#68F442
|
||||
|
||||
acceptortimeout=30s
|
||||
|
|
|
@ -22,7 +22,7 @@ def astral_page():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode - " + app["name"],
|
||||
"title": "MyNode - " + app["name"],
|
||||
"ui_settings": read_ui_settings(),
|
||||
"app_status": app_status,
|
||||
"app_status_color": app_status_color,
|
||||
|
|
|
@ -51,7 +51,7 @@
|
|||
"heading": "Instructions",
|
||||
"content": [
|
||||
"JoinMarket is a mixing wallet for Bitcoin that can be used with a web interface via Jam.",
|
||||
"First, for the application to run properly, JoinMarket also needs be installed via the myNode Marketplace.",
|
||||
"First, for the application to run properly, JoinMarket also needs be installed via the MyNode Marketplace.",
|
||||
"To get started, you just need enable Jam and click the open button on the left. Then, follow the instructions within the app!",
|
||||
"Enjoy mixing your coins!"
|
||||
]
|
||||
|
|
|
@ -22,7 +22,7 @@ def jam_page():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode - " + app["name"],
|
||||
"title": "MyNode - " + app["name"],
|
||||
"ui_settings": read_ui_settings(),
|
||||
"app_status": app_status,
|
||||
"app_status_color": app_status_color,
|
||||
|
|
|
@ -22,7 +22,7 @@ def lilywallet_page():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode - " + app["name"],
|
||||
"title": "MyNode - " + app["name"],
|
||||
"ui_settings": read_ui_settings(),
|
||||
"app_status": app_status,
|
||||
"app_status_color": app_status_color,
|
||||
|
|
|
@ -46,7 +46,7 @@
|
|||
"heading": "Instructions",
|
||||
"content": [
|
||||
"A GUI For BalanceOfSatoshis. You can open the app with the Open button on the left.",
|
||||
"The username is 'admin' and the password is the same as your myNode password.",
|
||||
"The username is 'admin' and the password is the same as your MyNode password.",
|
||||
"Enjoy!"
|
||||
]
|
||||
}
|
||||
|
|
|
@ -22,7 +22,7 @@ def lndboss_page():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode - " + app["name"],
|
||||
"title": "MyNode - " + app["name"],
|
||||
"ui_settings": read_ui_settings(),
|
||||
"app_status": app_status,
|
||||
"app_status_color": app_status_color,
|
||||
|
|
|
@ -22,7 +22,7 @@ def lndg_page():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode - " + app["name"],
|
||||
"title": "MyNode - " + app["name"],
|
||||
"ui_settings": read_ui_settings(),
|
||||
"app_status": app_status,
|
||||
"app_status_color": app_status_color,
|
||||
|
|
|
@ -22,7 +22,7 @@ def lntop_page():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode - " + app["name"],
|
||||
"title": "MyNode - " + app["name"],
|
||||
"ui_settings": read_ui_settings(),
|
||||
"app_status": app_status,
|
||||
"app_status_color": app_status_color,
|
||||
|
|
|
@ -22,7 +22,7 @@ def noscl_page():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode - " + app["name"],
|
||||
"title": "MyNode - " + app["name"],
|
||||
"ui_settings": read_ui_settings(),
|
||||
"app_status": app_status,
|
||||
"app_status_color": app_status_color,
|
||||
|
|
|
@ -22,7 +22,7 @@ def nostrrsrelay_page():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode - " + app["name"],
|
||||
"title": "MyNode - " + app["name"],
|
||||
"ui_settings": read_ui_settings(),
|
||||
"app_status": app_status,
|
||||
"app_status_color": app_status_color,
|
||||
|
|
|
@ -42,7 +42,7 @@
|
|||
"heading": "Instructions",
|
||||
"content": [
|
||||
"Setting up Tailscale is simple! First, once Tailscale is enabled it will run a web interface that allows you to login to your Tailscale account.",
|
||||
"After logging in, Tailscale will start running on your device and if you re-open the Tailscale web app, you will see a an IP address. This IP address can be used on any device you have running Tailscale to access the myNode interface!",
|
||||
"After logging in, Tailscale will start running on your device and if you re-open the Tailscale web app, you will see a an IP address. This IP address can be used on any device you have running Tailscale to access the MyNode interface!",
|
||||
"Enjoy!"
|
||||
]
|
||||
}
|
||||
|
|
|
@ -22,7 +22,7 @@ def tailscale_page():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode - " + app["name"],
|
||||
"title": "MyNode - " + app["name"],
|
||||
"ui_settings": read_ui_settings(),
|
||||
"app_status": app_status,
|
||||
"app_status_color": app_status_color,
|
||||
|
|
|
@ -41,7 +41,7 @@
|
|||
"heading": "Instructions",
|
||||
"content": [
|
||||
"WeTTY is a web-based terminal application for your node. To use, simply click Open on the left and login!",
|
||||
"The typical login credentials are 'admin' and your myNode password. Once successfully logged in, you will be presented with a Linux terminal and will be able to enter terminal commands.",
|
||||
"The typical login credentials are 'admin' and your MyNode password. Once successfully logged in, you will be presented with a Linux terminal and will be able to enter terminal commands.",
|
||||
"Enjoy!"
|
||||
]
|
||||
}
|
||||
|
|
|
@ -22,7 +22,7 @@ def wetty_page():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode - " + app["name"],
|
||||
"title": "MyNode - " + app["name"],
|
||||
"ui_settings": read_ui_settings(),
|
||||
"app_status": app_status,
|
||||
"app_status_color": app_status_color,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
CONFIG = {}
|
||||
|
||||
# myNode variables
|
||||
# MyNode variables
|
||||
CHECKIN_URL = "https://www.mynodebtc.com/device_api/check_in.php"
|
||||
|
||||
# Bitcoin Variables
|
||||
|
|
|
@ -428,7 +428,7 @@ def get_swap_size():
|
|||
return to_string( get_file_contents("/mnt/hdd/mynode/settings/swap_size") )
|
||||
|
||||
#==================================
|
||||
# myNode Status
|
||||
# MyNode Status
|
||||
#==================================
|
||||
STATE_DRIVE_MISSING = "drive_missing"
|
||||
STATE_DRIVE_CONFIRM_FORMAT = "drive_format_confirm"
|
||||
|
@ -478,7 +478,7 @@ def get_mynode_status():
|
|||
return status
|
||||
|
||||
#==================================
|
||||
# myNode Clone Tool
|
||||
# MyNode Clone Tool
|
||||
#==================================
|
||||
CLONE_STATE_DETECTING = "detecting"
|
||||
CLONE_STATE_ERROR = "error"
|
||||
|
|
|
@ -67,7 +67,7 @@ def bitcoin_status_page():
|
|||
|
||||
except Exception as e:
|
||||
templateData = {
|
||||
"title": "myNode Bitcoin Error",
|
||||
"title": "MyNode Bitcoin Error",
|
||||
"header": "Bitcoin Status",
|
||||
"message": Markup("Error communicating with bitcoin. Node may be busy syncing.<br/><br/>{}".format(str(e))),
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -76,7 +76,7 @@ def bitcoin_status_page():
|
|||
|
||||
|
||||
templateData = {
|
||||
"title": "myNode Bitcoin Status",
|
||||
"title": "MyNode Bitcoin Status",
|
||||
"blocks": blocks,
|
||||
"peers": peers,
|
||||
"addresses": addresses,
|
||||
|
@ -153,7 +153,7 @@ def bitcoin_reset_config_page():
|
|||
|
||||
# Wait until device is restarted
|
||||
templateData = {
|
||||
"title": "myNode Reboot",
|
||||
"title": "MyNode Reboot",
|
||||
"header_text": "Restarting",
|
||||
"subheader_text": "This will take several minutes...",
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -179,7 +179,7 @@ def bitcoin_config_page():
|
|||
|
||||
# Wait until device is restarted
|
||||
templateData = {
|
||||
"title": "myNode Reboot",
|
||||
"title": "MyNode Reboot",
|
||||
"header_text": "Restarting",
|
||||
"subheader_text": "This will take several minutes...",
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -191,7 +191,7 @@ def bitcoin_config_page():
|
|||
bitcoin_config = get_bitcoin_config()
|
||||
|
||||
templateData = {
|
||||
"title": "myNode Bitcoin Config",
|
||||
"title": "MyNode Bitcoin Config",
|
||||
"using_bitcoin_custom_config": using_bitcoin_custom_config(),
|
||||
"extra_bitcoin_config": get_bitcoin_extra_config(),
|
||||
"bitcoin_config": bitcoin_config,
|
||||
|
@ -205,7 +205,7 @@ def bitcoincli():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode Bitcoin Terminal",
|
||||
"title": "MyNode Bitcoin Terminal",
|
||||
"ui_settings": read_ui_settings()
|
||||
}
|
||||
return render_template('bitcoin_cli.html', **templateData)
|
||||
|
@ -232,7 +232,7 @@ def bitcoin_toggle_bip37():
|
|||
|
||||
# Wait until device is restarted
|
||||
templateData = {
|
||||
"title": "myNode Reboot",
|
||||
"title": "MyNode Reboot",
|
||||
"header_text": "Restarting",
|
||||
"subheader_text": "This will take several minutes...",
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -252,7 +252,7 @@ def bitcoin_toggle_bip157():
|
|||
|
||||
# Wait until device is restarted
|
||||
templateData = {
|
||||
"title": "myNode Reboot",
|
||||
"title": "MyNode Reboot",
|
||||
"header_text": "Restarting",
|
||||
"subheader_text": "This will take several minutes...",
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -274,7 +274,7 @@ def bitcoin_toggle_bip158():
|
|||
|
||||
# Wait until device is restarted
|
||||
templateData = {
|
||||
"title": "myNode Reboot",
|
||||
"title": "MyNode Reboot",
|
||||
"header_text": "Restarting",
|
||||
"subheader_text": "This will take several minutes...",
|
||||
"ui_settings": read_ui_settings()
|
||||
|
|
|
@ -16,7 +16,7 @@ def bos_page():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode Balance of Satoshis",
|
||||
"title": "MyNode Balance of Satoshis",
|
||||
"ui_settings": read_ui_settings(),
|
||||
}
|
||||
return render_template('bos.html', **templateData)
|
||||
|
|
|
@ -16,7 +16,7 @@ def caravan_page():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode Caravan",
|
||||
"title": "MyNode Caravan",
|
||||
"local_ip": get_local_ip(),
|
||||
"ui_settings": read_ui_settings()
|
||||
}
|
||||
|
|
|
@ -27,7 +27,7 @@ def dojo_page():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode Dojo",
|
||||
"title": "MyNode Dojo",
|
||||
"ui_settings": read_ui_settings(),
|
||||
"dojo_status": dojo_status,
|
||||
"dojo_version": get_dojo_version(),
|
||||
|
|
|
@ -41,7 +41,7 @@ def electrum_server_page():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode Electrum Server",
|
||||
"title": "MyNode Electrum Server",
|
||||
"port": 50002,
|
||||
"status": status,
|
||||
"db_size": db_size,
|
||||
|
|
|
@ -25,7 +25,7 @@ def app_generic_info_page(name):
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode - " + app["name"],
|
||||
"title": "MyNode - " + app["name"],
|
||||
"ui_settings": read_ui_settings(),
|
||||
"app_status": app_status,
|
||||
"app_status_color": app_status_color,
|
||||
|
|
|
@ -60,7 +60,7 @@ def joininbox_page():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode JoinMarket",
|
||||
"title": "MyNode JoinMarket",
|
||||
"is_jam_installed": is_installed("jam"),
|
||||
"is_jam_enabled": is_service_enabled("jam"),
|
||||
"joinmarket_version": joinmarket_version,
|
||||
|
|
|
@ -73,7 +73,7 @@ def page_lnd():
|
|||
|
||||
if not lnd_wallet_exists():
|
||||
templateData = {
|
||||
"title": "myNode Lightning Wallet",
|
||||
"title": "MyNode Lightning Wallet",
|
||||
"wallet_exists": wallet_exists,
|
||||
"wallet_logged_in": wallet_logged_in,
|
||||
"lnd_has_error": lnd_has_error,
|
||||
|
@ -88,7 +88,7 @@ def page_lnd():
|
|||
|
||||
if not is_lnd_logged_in():
|
||||
templateData = {
|
||||
"title": "myNode Lightning Wallet",
|
||||
"title": "MyNode Lightning Wallet",
|
||||
"wallet_exists": wallet_exists,
|
||||
"wallet_logged_in": wallet_logged_in,
|
||||
"lnd_has_error": lnd_has_error,
|
||||
|
@ -108,7 +108,7 @@ def page_lnd():
|
|||
# If lightning data is still None, show message
|
||||
if data == None:
|
||||
templateData = {
|
||||
"title": "myNode Lightning Wallet",
|
||||
"title": "MyNode Lightning Wallet",
|
||||
"wallet_exists": wallet_exists,
|
||||
"wallet_logged_in": False,
|
||||
"lnd_has_error": lnd_has_error,
|
||||
|
@ -168,7 +168,7 @@ def page_lnd():
|
|||
|
||||
except Exception as e:
|
||||
templateData = {
|
||||
"title": "myNode Lightning Status",
|
||||
"title": "MyNode Lightning Status",
|
||||
"header": "Lightning Status",
|
||||
#"message": str(e),
|
||||
"message": traceback.format_exc(),
|
||||
|
@ -181,7 +181,7 @@ def page_lnd():
|
|||
refresh_rate = 15
|
||||
|
||||
templateData = {
|
||||
"title": "myNode Lightning Status",
|
||||
"title": "MyNode Lightning Status",
|
||||
"is_community_edition": is_community_edition(),
|
||||
"wallet_exists": wallet_exists,
|
||||
"wallet_logged_in": wallet_logged_in,
|
||||
|
@ -266,7 +266,7 @@ def page_lnd_create_wallet():
|
|||
session['seed'] = seed.strip()
|
||||
except:
|
||||
templateData = {
|
||||
"title": "myNode Lightning Wallet",
|
||||
"title": "MyNode Lightning Wallet",
|
||||
"show_lightning_back_button": True,
|
||||
"header": "Lightning Status",
|
||||
"message": Markup("Waiting on Lightning...<br/>Please try again in a minute."),
|
||||
|
@ -275,7 +275,7 @@ def page_lnd_create_wallet():
|
|||
return render_template('error.html', **templateData)
|
||||
|
||||
templateData = {
|
||||
"title": "myNode Lightning Wallet",
|
||||
"title": "MyNode Lightning Wallet",
|
||||
"seed": seed,
|
||||
"ui_settings": read_ui_settings()
|
||||
}
|
||||
|
@ -288,7 +288,7 @@ def page_lnd_create_wallet_with_seed():
|
|||
# Load page
|
||||
if request.method == 'GET':
|
||||
templateData = {
|
||||
"title": "myNode Lightning Wallet",
|
||||
"title": "MyNode Lightning Wallet",
|
||||
"ui_settings": read_ui_settings()
|
||||
}
|
||||
return render_template('lnd_wallet_create_with_seed.html', **templateData)
|
||||
|
@ -321,7 +321,7 @@ def page_lnd_create_wallet_confirm():
|
|||
# Load page
|
||||
if request.method == 'GET':
|
||||
templateData = {
|
||||
"title": "myNode Lightning Wallet",
|
||||
"title": "MyNode Lightning Wallet",
|
||||
"ui_settings": read_ui_settings()
|
||||
}
|
||||
return render_template('lnd_wallet_create_confirm.html', **templateData)
|
||||
|
@ -423,7 +423,7 @@ def page_lnd_pair_wallet():
|
|||
|
||||
# Show lndconnect page
|
||||
templateData = {
|
||||
"title": "myNode Lightning Wallet",
|
||||
"title": "MyNode Lightning Wallet",
|
||||
"dots_img": get_image_src_b64("/var/www/mynode/static/images/dots.png"),
|
||||
"pairs": pairs,
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -467,7 +467,7 @@ def lnd_reset_config_page():
|
|||
|
||||
# Wait until device is restarted
|
||||
templateData = {
|
||||
"title": "myNode Reboot",
|
||||
"title": "MyNode Reboot",
|
||||
"header_text": "Restarting",
|
||||
"subheader_text": "This will take several minutes...",
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -493,7 +493,7 @@ def lnd_config_page():
|
|||
|
||||
# Wait until device is restarted
|
||||
templateData = {
|
||||
"title": "myNode Reboot",
|
||||
"title": "MyNode Reboot",
|
||||
"header_text": "Restarting",
|
||||
"subheader_text": "This will take several minutes...",
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -505,7 +505,7 @@ def lnd_config_page():
|
|||
lnd_config = get_lnd_config()
|
||||
|
||||
templateData = {
|
||||
"title": "myNode LND Config",
|
||||
"title": "MyNode LND Config",
|
||||
"using_lnd_custom_config": using_lnd_custom_config(),
|
||||
"lnd_config": lnd_config,
|
||||
"extra_lnd_config": get_lnd_extra_config(),
|
||||
|
@ -551,7 +551,7 @@ def page_lnd_watchtower():
|
|||
watchtower_client_policy = get_lightning_watchtower_client_policy()
|
||||
|
||||
templateData = {
|
||||
"title": "myNode Lightning Watchtower",
|
||||
"title": "MyNode Lightning Watchtower",
|
||||
"watchtower_server_enabled": is_watchtower_server_enabled(),
|
||||
"watchtower_server_uri": Markup(watchtower_server_info["watchtower_server_uri"]),
|
||||
"watchtower_client_enabled": is_watchtower_client_enabled(),
|
||||
|
|
|
@ -16,7 +16,7 @@ def bos_page():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode lndmanage",
|
||||
"title": "MyNode lndmanage",
|
||||
"ui_settings": read_ui_settings(),
|
||||
}
|
||||
return render_template('lndmanage.html', **templateData)
|
||||
|
|
|
@ -20,7 +20,7 @@ def manage_apps_page():
|
|||
t2 = get_system_time_in_ms()
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode Manage Apps",
|
||||
"title": "MyNode Manage Apps",
|
||||
"ui_settings": read_ui_settings(),
|
||||
"load_time": t2-t1,
|
||||
"product_key_skipped": skipped_product_key(),
|
||||
|
@ -74,7 +74,7 @@ def customize_app_versions_page():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode Customize App Versions",
|
||||
"title": "MyNode Customize App Versions",
|
||||
"ui_settings": read_ui_settings(),
|
||||
"product_key_skipped": skipped_product_key(),
|
||||
"apps": apps,
|
||||
|
|
|
@ -30,7 +30,7 @@ def marketplace_page():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode Marketplace",
|
||||
"title": "MyNode Marketplace",
|
||||
"ui_settings": read_ui_settings(),
|
||||
"load_time": t2-t1,
|
||||
"product_key_skipped": skipped_product_key(),
|
||||
|
@ -47,7 +47,7 @@ def marketplace_add_app_page():
|
|||
# Load page (no form submission)
|
||||
if request.method == 'GET':
|
||||
templateData = {
|
||||
"title": "myNode - Add Community Application",
|
||||
"title": "MyNode - Add Community Application",
|
||||
"ui_settings": read_ui_settings(),
|
||||
"product_key_skipped": skipped_product_key()
|
||||
}
|
||||
|
@ -114,7 +114,7 @@ def marketplace_app_page(app_name):
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode - " + app["name"],
|
||||
"title": "MyNode - " + app["name"],
|
||||
"ui_settings": read_ui_settings(),
|
||||
"product_key_skipped": skipped_product_key(),
|
||||
"app_status": app_status,
|
||||
|
|
|
@ -153,7 +153,7 @@ def index():
|
|||
status = status.decode("utf8")
|
||||
status = Markup("<div style='text-align: left; font-size: 12px; width: 800px;'><pre>"+status+"</pre></div>")
|
||||
templateData = {
|
||||
"title": "myNode Uploader",
|
||||
"title": "MyNode Uploader",
|
||||
"header_text": "Uploader Device",
|
||||
"quicksync_status": status,
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -162,7 +162,7 @@ def index():
|
|||
|
||||
if status == STATE_UNKNOWN:
|
||||
templateData = {
|
||||
"title": "myNode Error",
|
||||
"title": "MyNode Error",
|
||||
"header_text": "Status Unknown",
|
||||
"subheader_text": "An error has occurred. You may want to reboot the device.",
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -170,7 +170,7 @@ def index():
|
|||
return render_template('state.html', **templateData)
|
||||
elif status == STATE_ROOTFS_READ_ONLY:
|
||||
templateData = {
|
||||
"title": "myNode Error",
|
||||
"title": "MyNode Error",
|
||||
"header_text": "SD Card Error",
|
||||
"subheader_text": "The root filesystem is read only. Your SD card may be corrupt.",
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -178,7 +178,7 @@ def index():
|
|||
return render_template('state.html', **templateData)
|
||||
elif status == STATE_HDD_READ_ONLY:
|
||||
templateData = {
|
||||
"title": "myNode Error",
|
||||
"title": "MyNode Error",
|
||||
"header_text": "Drive Error",
|
||||
"subheader_text": "The external drive filesystem is read only. Try rebooting the device.",
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -187,7 +187,7 @@ def index():
|
|||
elif is_warning_present():
|
||||
warning = get_current_warning()
|
||||
templateData = {
|
||||
"title": "myNode Warning",
|
||||
"title": "MyNode Warning",
|
||||
"header_text": "Warning",
|
||||
"subheader_text": get_warning_header(warning),
|
||||
"description_text": get_warning_description(warning),
|
||||
|
@ -199,7 +199,7 @@ def index():
|
|||
# Drive may be getting repaired
|
||||
if is_drive_being_repaired():
|
||||
templateData = {
|
||||
"title": "myNode Repairing Drive",
|
||||
"title": "MyNode Repairing Drive",
|
||||
"header_text": "Repairing Drive",
|
||||
"subheader_text": Markup("Drive is being checked and repaired...<br/><br/>This may take several hours."),
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -207,9 +207,9 @@ def index():
|
|||
return render_template('state.html', **templateData)
|
||||
|
||||
templateData = {
|
||||
"title": "myNode Looking for Drive",
|
||||
"title": "MyNode Looking for Drive",
|
||||
"header_text": "Looking for Drive",
|
||||
"subheader_text": "Please attach a drive to your myNode",
|
||||
"subheader_text": "Please attach a drive to your MyNode",
|
||||
"ui_settings": read_ui_settings()
|
||||
}
|
||||
return render_template('state.html', **templateData)
|
||||
|
@ -221,21 +221,21 @@ def index():
|
|||
return redirect("/")
|
||||
|
||||
templateData = {
|
||||
"title": "myNode Confirm Drive Format",
|
||||
"title": "MyNode Confirm Drive Format",
|
||||
"ui_settings": read_ui_settings()
|
||||
}
|
||||
return render_template('confirm_drive_format.html', **templateData)
|
||||
elif status == STATE_DRIVE_FORMATTING:
|
||||
templateData = {
|
||||
"title": "myNode Drive Formatting",
|
||||
"title": "MyNode Drive Formatting",
|
||||
"header_text": "Drive Formatting",
|
||||
"subheader_text": "myNode is preparing the drive for use...",
|
||||
"subheader_text": "MyNode is preparing the drive for use...",
|
||||
"ui_settings": read_ui_settings()
|
||||
}
|
||||
return render_template('state.html', **templateData)
|
||||
elif status == STATE_DRIVE_MOUNTED:
|
||||
templateData = {
|
||||
"title": "myNode Drive Mounted",
|
||||
"title": "MyNode Drive Mounted",
|
||||
"header_text": "Starting...",
|
||||
"subheader_text": "Drive Mounted",
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -243,13 +243,13 @@ def index():
|
|||
return render_template('state.html', **templateData)
|
||||
elif status == STATE_CHOOSE_NETWORK:
|
||||
templateData = {
|
||||
"title": "myNode Choose Network",
|
||||
"title": "MyNode Choose Network",
|
||||
"ui_settings": read_ui_settings()
|
||||
}
|
||||
return render_template('choose_network.html', **templateData)
|
||||
elif status == STATE_DOCKER_RESET:
|
||||
templateData = {
|
||||
"title": "myNode",
|
||||
"title": "MyNode",
|
||||
"header_text": "Resetting Docker Data",
|
||||
"subheader_text": "This will take several minutes...",
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -264,7 +264,7 @@ def index():
|
|||
message += "To move to larger drive, try the <a href='/settings#clone_tool'>Clone Tool</a>."
|
||||
message += "</p>"
|
||||
templateData = {
|
||||
"title": "myNode Drive Full",
|
||||
"title": "MyNode Drive Full",
|
||||
"header_text": "Drive Full",
|
||||
"subheader_text": Markup(message),
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -276,7 +276,7 @@ def index():
|
|||
log_message(clone_state)
|
||||
if clone_state == CLONE_STATE_DETECTING:
|
||||
templateData = {
|
||||
"title": "myNode Clone Tool",
|
||||
"title": "MyNode Clone Tool",
|
||||
"header_text": "Cloning Tool",
|
||||
"subheader_text": Markup("Detecting Drives..."),
|
||||
"ui_settings": read_ui_settings(),
|
||||
|
@ -300,7 +300,7 @@ def index():
|
|||
msg += "<br/><br/>"
|
||||
msg += "<a class='ui-button ui-widget ui-corner-all mynode_button_small' style='width: 120px;' href='/settings/reboot-device'>Exit Clone Tool</a>"
|
||||
templateData = {
|
||||
"title": "myNode Clone Tool",
|
||||
"title": "MyNode Clone Tool",
|
||||
"header_text": "Cloning Tool",
|
||||
"subheader_text": Markup(msg),
|
||||
"ui_settings": read_ui_settings(),
|
||||
|
@ -324,7 +324,7 @@ def index():
|
|||
source_drive_info = get_drive_info(source_drive)
|
||||
target_drive_info = get_drive_info(target_drive)
|
||||
templateData = {
|
||||
"title": "myNode Clone Tool",
|
||||
"title": "MyNode Clone Tool",
|
||||
"header_text": "Cloning Tool",
|
||||
"target_drive_has_mynode": target_drive_has_mynode,
|
||||
"source_drive_info": source_drive_info,
|
||||
|
@ -335,7 +335,7 @@ def index():
|
|||
elif clone_state == CLONE_STATE_IN_PROGRESS:
|
||||
progress = get_clone_progress()
|
||||
templateData = {
|
||||
"title": "myNode Clone Tool",
|
||||
"title": "MyNode Clone Tool",
|
||||
"header_text": "Cloning Tool",
|
||||
"subheader_text": Markup("Cloning...<br/><br/>" + progress),
|
||||
"ui_settings": read_ui_settings(),
|
||||
|
@ -344,7 +344,7 @@ def index():
|
|||
return render_template('state.html', **templateData)
|
||||
elif clone_state == CLONE_STATE_COMPLETE:
|
||||
templateData = {
|
||||
"title": "myNode Clone Tool",
|
||||
"title": "MyNode Clone Tool",
|
||||
"header_text": "Cloning Tool",
|
||||
"subheader_text": Markup("Clone Complete!"),
|
||||
"ui_settings": read_ui_settings(),
|
||||
|
@ -352,7 +352,7 @@ def index():
|
|||
return render_template('clone_complete.html', **templateData)
|
||||
else:
|
||||
templateData = {
|
||||
"title": "myNode Clone Tool",
|
||||
"title": "MyNode Clone Tool",
|
||||
"header_text": "Cloning Tool",
|
||||
"subheader_text": "Unknown Clone State: " + clone_state,
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -360,7 +360,7 @@ def index():
|
|||
return render_template('state.html', **templateData)
|
||||
elif status == STATE_GEN_DHPARAM:
|
||||
templateData = {
|
||||
"title": "myNode Generating Data",
|
||||
"title": "MyNode Generating Data",
|
||||
"header_text": "Generating Data",
|
||||
"subheader_text": "This may take 15-20 minutes...",
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -387,7 +387,7 @@ def index():
|
|||
subheader_msg = Markup("Copying files... This will take several hours.<br/>{:.2f}%{}".format(percent, message))
|
||||
|
||||
templateData = {
|
||||
"title": "myNode QuickSync",
|
||||
"title": "MyNode QuickSync",
|
||||
"header_text": "QuickSync",
|
||||
"subheader_text": subheader_msg,
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -395,7 +395,7 @@ def index():
|
|||
return render_template('state.html', **templateData)
|
||||
elif status == STATE_QUICKSYNC_RESET:
|
||||
templateData = {
|
||||
"title": "myNode QuickSync",
|
||||
"title": "MyNode QuickSync",
|
||||
"header_text": "QuickSync",
|
||||
"subheader_text": "Restarting QuickSync...",
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -420,7 +420,7 @@ def index():
|
|||
subheader = Markup("Starting<br/>Waiting on download client to start...")
|
||||
|
||||
templateData = {
|
||||
"title": "myNode QuickSync",
|
||||
"title": "MyNode QuickSync",
|
||||
"header_text": "QuickSync",
|
||||
"subheader_text": subheader,
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -428,7 +428,7 @@ def index():
|
|||
return render_template('state.html', **templateData)
|
||||
elif status == STATE_UPGRADING:
|
||||
templateData = {
|
||||
"title": "myNode Upgrading",
|
||||
"title": "MyNode Upgrading",
|
||||
"header_text": "Upgrading...",
|
||||
"subheader_text": "This may take a while...",
|
||||
"refresh_rate": 120,
|
||||
|
@ -453,9 +453,9 @@ def index():
|
|||
error_message = "Bitcoin has experienced an error. Please check the Bitcoin log on the status page."
|
||||
message = "<div class='small_message'>{}</<div>".format( get_message(include_funny=True) )
|
||||
templateData = {
|
||||
"title": "myNode Status",
|
||||
"title": "MyNode Status",
|
||||
"header_text": "Starting...",
|
||||
"subheader_text": Markup("Launching myNode Services{}".format(message)),
|
||||
"subheader_text": Markup("Launching MyNode Services{}".format(message)),
|
||||
"error_message": Markup(error_message + "<br/><br/>"),
|
||||
"ui_settings": read_ui_settings()
|
||||
}
|
||||
|
@ -464,7 +464,7 @@ def index():
|
|||
# if is_installing_docker_images():
|
||||
# message = "<div class='small_message'>{}</<div>".format( get_message(include_funny=True) )
|
||||
# templateData = {
|
||||
# "title": "myNode Status",
|
||||
# "title": "MyNode Status",
|
||||
# "header_text": "Starting...",
|
||||
# "subheader_text": Markup("Building Docker Images...{}".format(message)),
|
||||
# "ui_settings": read_ui_settings()
|
||||
|
@ -479,7 +479,7 @@ def index():
|
|||
if mynode_block_height == None:
|
||||
mynode_block_height = 0
|
||||
templateData = {
|
||||
"title": "myNode Sync",
|
||||
"title": "MyNode Sync",
|
||||
"header_text": "Bitcoin Blockchain",
|
||||
"bitcoin_block_height": bitcoin_block_height,
|
||||
"mynode_block_height": mynode_block_height,
|
||||
|
@ -526,7 +526,7 @@ def index():
|
|||
refresh_rate = 120
|
||||
|
||||
templateData = {
|
||||
"title": "myNode Home",
|
||||
"title": "MyNode Home",
|
||||
"refresh_rate": refresh_rate,
|
||||
"config": CONFIG,
|
||||
"apps": get_all_applications(order_by="homepage"),
|
||||
|
@ -586,9 +586,9 @@ def index():
|
|||
return render_template('main.html', **templateData)
|
||||
else:
|
||||
templateData = {
|
||||
"title": "myNode Error",
|
||||
"title": "MyNode Error",
|
||||
"header_text": "Error",
|
||||
"subheader_text": "Unknown State ("+status+"). Please restart your myNode.",
|
||||
"subheader_text": "Unknown State ("+status+"). Please restart your MyNode.",
|
||||
"ui_settings": read_ui_settings()
|
||||
}
|
||||
return render_template('state.html', **templateData)
|
||||
|
@ -606,7 +606,7 @@ def page_product_key():
|
|||
return redirect("/")
|
||||
else:
|
||||
templateData = {
|
||||
"title": "myNode Product Key",
|
||||
"title": "MyNode Product Key",
|
||||
"header_text": "Product Key",
|
||||
"ui_settings": read_ui_settings()
|
||||
}
|
||||
|
@ -728,7 +728,7 @@ def page_rebooting():
|
|||
|
||||
# Show that device is rebooting and use JS to refresh once back online
|
||||
templateData = {
|
||||
"title": "myNode Reboot",
|
||||
"title": "MyNode Reboot",
|
||||
"header_text": "Restarting",
|
||||
"subheader_text": "This will take several minutes...",
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -739,9 +739,9 @@ def page_rebooting():
|
|||
@app.errorhandler(404)
|
||||
def not_found_error(error):
|
||||
templateData = {
|
||||
"title": "myNode 404",
|
||||
"title": "MyNode 404",
|
||||
"header_text": "Page not found",
|
||||
"subheader_text": "Click on the myNode logo to reach the home page",
|
||||
"subheader_text": "Click on the MyNode logo to reach the home page",
|
||||
"ui_settings": read_ui_settings()
|
||||
}
|
||||
return render_template('state.html', **templateData), 404
|
||||
|
@ -749,9 +749,9 @@ def not_found_error(error):
|
|||
@app.errorhandler(500)
|
||||
def internal_error(error):
|
||||
templateData = {
|
||||
"title": "myNode 500",
|
||||
"title": "MyNode 500",
|
||||
"header_text": "Internal server error",
|
||||
"subheader_text": "If you were manually upgrading myNode, please try again.",
|
||||
"subheader_text": "If you were manually upgrading MyNode, please try again.",
|
||||
"ui_settings": read_ui_settings()
|
||||
}
|
||||
return render_template('state.html', **templateData), 500
|
||||
|
|
|
@ -29,7 +29,7 @@ def premium_plus_page():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode Premium+",
|
||||
"title": "MyNode Premium+",
|
||||
"product_key_skipped": skipped_product_key(),
|
||||
"has_access_token": has_premium_plus_token(),
|
||||
"access_token": get_premium_plus_token(),
|
||||
|
|
|
@ -16,7 +16,7 @@ def pyblock_page():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode PyBlock",
|
||||
"title": "MyNode PyBlock",
|
||||
"ui_settings": read_ui_settings(),
|
||||
}
|
||||
return render_template('pyblock.html', **templateData)
|
||||
|
|
|
@ -53,7 +53,7 @@ def page_settings():
|
|||
logout_time_days, logout_time_hours = get_flask_session_timeout()
|
||||
|
||||
templateData = {
|
||||
"title": "myNode Settings",
|
||||
"title": "MyNode Settings",
|
||||
"apps": get_all_applications(order_by="alphabetic"),
|
||||
"password_message": "",
|
||||
"current_version": current_version,
|
||||
|
@ -181,7 +181,7 @@ def page_status():
|
|||
running_containers = get_docker_running_containers()
|
||||
|
||||
templateData = {
|
||||
"title": "myNode Status",
|
||||
"title": "MyNode Status",
|
||||
"password_message": "",
|
||||
"current_version": current_version,
|
||||
"latest_version": latest_version,
|
||||
|
@ -347,7 +347,7 @@ def upgrade_page():
|
|||
|
||||
# Display wait page
|
||||
templateData = {
|
||||
"title": "myNode Upgrade",
|
||||
"title": "MyNode Upgrade",
|
||||
"header_text": "Upgrading",
|
||||
"subheader_text": "This may take a while...",
|
||||
"show_upgrade_log": True,
|
||||
|
@ -367,7 +367,7 @@ def upgrade_beta_page():
|
|||
|
||||
# Display wait page
|
||||
templateData = {
|
||||
"title": "myNode Upgrade",
|
||||
"title": "MyNode Upgrade",
|
||||
"header_text": "Upgrading",
|
||||
"subheader_text": "This may take a while...",
|
||||
"show_upgrade_log": True,
|
||||
|
@ -401,7 +401,7 @@ def upgrade_page_test():
|
|||
|
||||
# Display wait page
|
||||
templateData = {
|
||||
"title": "myNode Upgrade",
|
||||
"title": "MyNode Upgrade",
|
||||
"header_text": "Upgrading",
|
||||
"subheader_text": "This may take a while...",
|
||||
"show_upgrade_log": True,
|
||||
|
@ -487,7 +487,7 @@ def shutdown_device_page():
|
|||
|
||||
# Wait until device is restarted
|
||||
templateData = {
|
||||
"title": "myNode Shutdown",
|
||||
"title": "MyNode Shutdown",
|
||||
"header_text": "Shutting down...",
|
||||
"ui_settings": read_ui_settings()
|
||||
}
|
||||
|
@ -527,7 +527,7 @@ def open_clone_tool_page():
|
|||
|
||||
# Display wait page
|
||||
templateData = {
|
||||
"title": "myNode Reboot",
|
||||
"title": "MyNode Reboot",
|
||||
"header_text": "Restarting",
|
||||
"subheader_text": "Restarting to Open Clone Tool....",
|
||||
"ui_settings": read_ui_settings()
|
||||
|
@ -924,7 +924,7 @@ def reinstall_app_page():
|
|||
|
||||
# Display wait page
|
||||
templateData = {
|
||||
"title": "myNode Install",
|
||||
"title": "MyNode Install",
|
||||
"header_text": "Installing",
|
||||
"subheader_text": "This may take a while...",
|
||||
"show_upgrade_log": True,
|
||||
|
@ -999,7 +999,7 @@ def install_custom_bitcoin_page():
|
|||
|
||||
# Display wait page
|
||||
templateData = {
|
||||
"title": "myNode Install",
|
||||
"title": "MyNode Install",
|
||||
"header_text": "Installing",
|
||||
"subheader_text": "This may take a while...",
|
||||
"show_upgrade_log": True,
|
||||
|
|
|
@ -26,7 +26,7 @@ def sphinxrelay_page():
|
|||
|
||||
# Load page
|
||||
templateData = {
|
||||
"title": "myNode Sphinx Relay",
|
||||
"title": "MyNode Sphinx Relay",
|
||||
"ui_settings": read_ui_settings(),
|
||||
"sphinxrelay_status": sphinxrelay_status,
|
||||
"sphinxrelay_connection_string": get_connection_string(),
|
||||
|
|
|
@ -82,7 +82,7 @@ function get_custom_enable_message(short_name) {
|
|||
message = "";
|
||||
if (short_name == "electrs") {
|
||||
message = "Enabling Electrum Server will take several days to fully sync for \
|
||||
the first time. Your myNode may run slowly during this period.";
|
||||
the first time. Your MyNode may run slowly during this period.";
|
||||
} else if (short_name == "vpn") {
|
||||
message = "Enabling VPN will set your IP to a static IP rather than a dynamic one via DHCP. \
|
||||
The initial setup may take about an hour.";
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<!DOCTYPE html lang="en">
|
||||
<head>
|
||||
<title>myNode About</title>
|
||||
<title>MyNode About</title>
|
||||
{% include 'includes/head.html' %}
|
||||
</head>
|
||||
|
||||
|
@ -17,7 +17,7 @@
|
|||
<div class="settings_block">
|
||||
<div class="settings_block_header">Contacts</div>
|
||||
<p>
|
||||
If you have any questions or comments, please contact myNode via email at the following address:
|
||||
If you have any questions or comments, please contact MyNode via email at the following address:
|
||||
<br/></br>
|
||||
<a href="mailto:mynode@mynodebtc.com">mynode@mynodebtc.com</a>
|
||||
<br/><br/>
|
||||
|
@ -28,8 +28,8 @@
|
|||
<div class="settings_block">
|
||||
<div class="settings_block_header">Projects and Licenses</div>
|
||||
|
||||
<p>myNode is copyrighted, licensed under a modified CC BY-NC-ND 4.0 license, and comes with no warranty.
|
||||
The license modifications relax restrictions on modifying and sharing the myNode codebase.</p>
|
||||
<p>MyNode is copyrighted, licensed under a modified CC BY-NC-ND 4.0 license, and comes with no warranty.
|
||||
The license modifications relax restrictions on modifying and sharing the MyNode codebase.</p>
|
||||
<p><a href="https://github.com/mynodebtc/mynode/blob/master/LICENSE.md" target="_blank">License</a></p>
|
||||
|
||||
<p>Thanks to all the open source projects that make this possible!</p>
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<!DOCTYPE html lang="en">
|
||||
<head>
|
||||
<title>myNode - {{app.name}}</title>
|
||||
<title>MyNode - {{app.name}}</title>
|
||||
{% include 'includes/head.html' %}
|
||||
|
||||
<script src="{{ url_for('static', filename='js/manage_apps.js')}}"></script>
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
<div class="instructions-header">Instructions to run Balance of Satoshis</div>
|
||||
<ol class="instructions-steps">
|
||||
<li>Balance of Satoshis (bos) is a tool for viewing and interacting with lnd.</li>
|
||||
<li>To get started, you need access to the Linux terminal of your myNode device.</li>
|
||||
<li>To get started, you need access to the Linux terminal of your MyNode device.</li>
|
||||
<ul>
|
||||
<li>A guide to access the Linux terminal is available here - <a href="https://mynodebtc.github.io/advanced/linux-terminal.html" target="_blank">guide</a></li>
|
||||
</ul>
|
||||
|
|
|
@ -41,7 +41,7 @@
|
|||
</br>
|
||||
|
||||
<p>Caravan is a stateless app to help manage multi-sig wallets. The default settings use an external server for
|
||||
accessing the Bitcoin network, but you can use the local Bitcoin Instance on your myNode device.</p>
|
||||
accessing the Bitcoin network, but you can use the local Bitcoin Instance on your MyNode device.</p>
|
||||
|
||||
<p>To use your node, you need to edit the Bitcoin Client settings within Caravan.</p>
|
||||
|
||||
|
|
|
@ -70,7 +70,7 @@
|
|||
<td></td>
|
||||
<td></td>
|
||||
<td>
|
||||
<span style="color: red;">myNode Data Detected!</span>
|
||||
<span style="color: red;">MyNode Data Detected!</span>
|
||||
</td>
|
||||
</tr>
|
||||
{% endif %}
|
||||
|
@ -78,7 +78,7 @@
|
|||
|
||||
<p><b>Warning!</b></p>
|
||||
{% if target_drive_has_mynode %}
|
||||
<p>myNode data was detected on the target drive! This can be caused by a previous clone failure. Be sure the target drive is the new drive you want to overwrite!</p>
|
||||
<p>MyNode data was detected on the target drive! This can be caused by a previous clone failure. Be sure the target drive is the new drive you want to overwrite!</p>
|
||||
{% endif %}
|
||||
<p>All existing data will be lost on the target drive. If this is not OK, remove the additional drive now and click Reboot.</p>
|
||||
<p>It is highly recommended that both drives be externally powered. Running two drives from USB power on the device can cause clone failures.</p>
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user