mirror of
https://github.com/Retropex/Bitcoin-store.git
synced 2025-05-12 10:50:41 +02:00
rebase on datum release
This commit is contained in:
parent
4ffff73f02
commit
1409304f75
41
btc-datum/data/settings/datum_gateway_config.json
Normal file
41
btc-datum/data/settings/datum_gateway_config.json
Normal file
@ -0,0 +1,41 @@
|
||||
{
|
||||
"bitcoind": {
|
||||
"rpcuser": "auto-configure-on-install",
|
||||
"rpcpassword": "auto-configure-on-install",
|
||||
"rpcurl": "auto-configure-on-install",
|
||||
"work_update_seconds": 40
|
||||
},
|
||||
"api": {
|
||||
"listen_port": 21000
|
||||
},
|
||||
"mining": {
|
||||
"pool_address": "enter your bitcoin address",
|
||||
"coinbase_tag_primary": "DATUM on Umbrel",
|
||||
"coinbase_tag_secondary": "DATUM on Umbrel",
|
||||
"coinbase_unique_id": 120
|
||||
},
|
||||
"stratum": {
|
||||
"listen_port": 23334,
|
||||
"max_clients_per_thread": 1000,
|
||||
"max_threads": 8,
|
||||
"max_clients": 2048,
|
||||
"vardiff_min": 16384,
|
||||
"vardiff_target_shares_min": 8,
|
||||
"vardiff_quickdiff_count": 8,
|
||||
"vardiff_quickdiff_delta": 8,
|
||||
"share_stale_seconds": 120,
|
||||
"fingerprint_miners": true
|
||||
},
|
||||
"logger": {
|
||||
"log_level_console": 2
|
||||
},
|
||||
"datum": {
|
||||
"pool_host": "datum-beta1.mine.ocean.xyz",
|
||||
"pool_port": 28915,
|
||||
"pool_pubkey": "f21f2f0ef0aa1970468f22bad9bb7f4535146f8e4a8f646bebc93da3d89b1406f40d032f09a417d94dc068055df654937922d2c89522e3e8f6f0e649de473003",
|
||||
"pool_pass_workers": true,
|
||||
"pool_pass_full_users": true,
|
||||
"always_pay_self": true,
|
||||
"pooled_mining_only": true
|
||||
}
|
||||
}
|
@ -1,11 +1,17 @@
|
||||
version: "3.7"
|
||||
|
||||
services:
|
||||
app_proxy:
|
||||
environment:
|
||||
APP_HOST: datum_datum_1
|
||||
APP_PORT: 21000
|
||||
|
||||
datum:
|
||||
image: ghcr.io/retropex/datum:v1.3
|
||||
image: ghcr.io/retropex/datum:v1.6@sha256:0fb807930f206e618b28f0b9aa82d779787beec1c17b79ca0acd5b3b1e79f3e2
|
||||
user: 1000:1000
|
||||
restart: on-failure
|
||||
volumes:
|
||||
- type: bind
|
||||
source: ${APP_DATA_DIR}/settings/datum_gateway_config.json
|
||||
target: /app/datum_gateway_config.json
|
||||
- ${APP_DATA_DIR}/data/settings/datum_gateway_config.json:/app/datum_gateway_config.json
|
||||
ports:
|
||||
- 21000:21000
|
||||
# datum gateway port
|
||||
- 23334:23334
|
||||
|
44
btc-datum/hooks/pre-start
Executable file
44
btc-datum/hooks/pre-start
Executable file
@ -0,0 +1,44 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# This pre-start script updates the datum_gateway_config.json file with the user's Knots RPC configuration
|
||||
|
||||
APP_DATA_DIR="$(readlink -f "$(dirname "${BASH_SOURCE[0]}")/..")"
|
||||
DATUM_CONFIG_FILE="${APP_DATA_DIR}/data/settings/datum_gateway_config.json"
|
||||
DESIRED_OWNER="1000:1000"
|
||||
|
||||
if [ -f "${DATUM_CONFIG_FILE}" ]; then
|
||||
echo "Checking DATUM configuration file."
|
||||
|
||||
# Check if Knots environment variables are set
|
||||
if [ -z "${APP_BITCOIN_RPC_USER}" ] || [ -z "${APP_BITCOIN_RPC_PASS}" ] || [ -z "${APP_BITCOIN_NODE_IP}" ] || [ -z "${APP_BITCOIN_RPC_PORT}" ]; then
|
||||
echo "Missing Bitcoin Knots environment variables. Exiting."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check if the file contains default placeholder values that we need to configure on install
|
||||
# These have values of "auto-configure-on-install"
|
||||
if jq -e '.bitcoind | .rpcuser, .rpcpassword, .rpcurl | select(. == "auto-configure-on-install")' "$DATUM_CONFIG_FILE" > /dev/null; then
|
||||
|
||||
echo "Initializing DATUM config with Bitcoin Knots RPC settings."
|
||||
|
||||
# Update the configuration
|
||||
jq --arg user "$APP_BITCOIN_RPC_USER" \
|
||||
--arg pass "$APP_BITCOIN_RPC_PASS" \
|
||||
--arg url "${APP_BITCOIN_NODE_IP}:${APP_BITCOIN_RPC_PORT}" \
|
||||
'.bitcoind.rpcuser = $user |
|
||||
.bitcoind.rpcpassword = $pass |
|
||||
.bitcoind.rpcurl = $url' \
|
||||
"$DATUM_CONFIG_FILE" > "${DATUM_CONFIG_FILE}.tmp" && mv "${DATUM_CONFIG_FILE}.tmp" "$DATUM_CONFIG_FILE"
|
||||
|
||||
# reset permissions
|
||||
chown "${DESIRED_OWNER}" "$DATUM_CONFIG_FILE"
|
||||
|
||||
echo "DATUM configuration updated successfully."
|
||||
else
|
||||
echo "DATUM configuration is up-to-date."
|
||||
fi
|
||||
|
||||
else
|
||||
echo "DATUM configuration file not found. Installation incomplete."
|
||||
exit 1
|
||||
fi
|
Binary file not shown.
Before Width: | Height: | Size: 168 KiB |
@ -1,9 +0,0 @@
|
||||
<svg width="28" height="33" viewBox="0 0 28 33" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M23.3296 4.17745C26.1789 6.96436 27.6035 10.9295 27.6035 16.0785C27.6035 21.2276 26.2113 25.1433 23.4209 27.9127C20.6335 30.6822 16.651 32.0669 11.4705 32.0669H0V0H11.1968C16.4361 0 20.4804 1.39345 23.3296 4.17745Z" fill="#1137F5"/>
|
||||
<mask id="mask0_3347_7483" style="mask-type:luminance" maskUnits="userSpaceOnUse" x="0" y="0" width="28" height="33">
|
||||
<path d="M23.3296 4.17745C26.1789 6.96436 27.6035 10.9295 27.6035 16.0785C27.6035 21.2276 26.2113 25.1433 23.4209 27.9127C20.6335 30.6822 16.651 32.0669 11.4705 32.0669H0V0H11.1968C16.4361 0 20.4804 1.39345 23.3296 4.17745Z" fill="white"/>
|
||||
</mask>
|
||||
<g mask="url(#mask0_3347_7483)">
|
||||
<path d="M37.9554 16.9571L15.9386 15.9214L37.7553 12.8232L37.6729 12.2472L15.8561 15.3454L36.6839 8.22105L36.4925 7.67123L15.6648 14.7956L34.75 3.90396L34.4557 3.40069L15.3675 14.2923L32.0274 0.0261431L31.6418 -0.41313L14.9849 13.8501L28.6071 -3.26986L28.145 -3.63058L14.5198 13.4952L24.6187 -5.86767L24.0978 -6.13531L13.9988 13.2247L20.2065 -7.67422L19.6414 -7.84004L13.4308 13.0647L15.5265 -8.62258L14.9407 -8.67786L12.845 13.0065L10.7522 -8.67786L10.1665 -8.62258L12.2593 13.0618L6.05158 -7.84004L5.48644 -7.67422L11.6941 13.2276L1.59522 -6.13531L1.07129 -5.86767L11.1731 13.4923L-2.45199 -3.63058L-2.91411 -3.26986L10.7081 13.8531L-5.94879 -0.41313L-6.33438 0.0261431L10.3225 14.2923L-8.76271 3.40069L-9.05705 3.90396L10.0282 14.7956L-10.7996 7.67123L-10.9909 8.22105L9.83683 15.3454L-11.9799 12.2472L-12.0623 12.8232L9.75442 15.9214L-12.2625 16.96L-12.233 17.5389L9.7809 16.5032L-11.6384 21.6378L-11.5001 22.2051L9.92219 17.0676L-10.1285 26.1178L-9.88416 26.6472L10.1636 17.5971L-7.78844 30.2341L-7.447 30.7083L10.505 18.0712L-4.70372 33.8385L-4.27692 34.24L10.9318 18.4727L-0.983223 36.8L-0.488727 37.1141L11.4263 18.7869L3.23471 39.0109L3.78219 39.2261L11.9738 19.0051L7.80292 40.3927L8.37983 40.5032L12.5507 19.1127V40.8989H13.1394V19.1127L17.3131 40.5032L17.8901 40.3927L13.7192 19.0051L21.9108 39.2261L22.4583 39.0109L14.2667 18.7898L26.1817 37.1141L26.6762 36.8L14.7582 18.4698L29.9699 34.24L30.3967 33.8385L15.188 18.0741L33.14 30.7083L33.4814 30.2341L15.5265 17.5971L35.5771 26.6472L35.8214 26.1178L15.7737 17.0676L37.1931 22.2051L37.3314 21.6378L15.9121 16.5032L37.926 17.5389L37.9554 16.9571Z" fill="white"/>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 2.3 KiB |
Binary file not shown.
Before Width: | Height: | Size: 863 KiB |
@ -1,15 +0,0 @@
|
||||
{
|
||||
"bitcoind":{
|
||||
"rpcuser": "enter your bitcoin RPC user",
|
||||
"rpcpassword": "enter your bitcoin RPC addres",
|
||||
"rpcurl": "172.17.0.1:8332"
|
||||
},
|
||||
"api":{
|
||||
"listen_port": 21000
|
||||
},
|
||||
"mining":{
|
||||
"pool_address": "enter your bitcoin address",
|
||||
"coinbase_tag_primary": "enter your block tag",
|
||||
"coinbase_unique_id": 1
|
||||
}
|
||||
}
|
@ -1,25 +1,72 @@
|
||||
manifestVersion: 1.1
|
||||
id: btc-datum
|
||||
category: Bitcoin
|
||||
name: Datum
|
||||
version: "1"
|
||||
tagline: Make your own mining template
|
||||
icon: https://raw.githubusercontent.com/Retropex/Bitcoin-store/refs/heads/datum/btc-datum/icon/datum_logo.svg
|
||||
category: bitcoin
|
||||
name: DATUM
|
||||
version: "v0.2-beta"
|
||||
tagline: Self-sovereign Bitcoin mining
|
||||
description: >-
|
||||
Take control of your digital sovereignty by running your own datum server.
|
||||
DATUM (Decentralized Alternative Templates for Universal Mining) is a brand new bitcoin mining protocol that allows you to create your own block templates using your own Bitcoin node.
|
||||
|
||||
|
||||
With DATUM on Umbrel, you gain full control over your Bitcoin mining setup, allowing you to use your own Bitcoin node to generate custom block templates and directly issue work to your miners.
|
||||
DATUM enables you to either solo mine or participate in pool mining while optimizing block creation without relying on third-party servers.
|
||||
|
||||
|
||||
Over the years, mining has drifted toward centralization, with large pools dominating the process and reducing miners to mere sellers of hash power.
|
||||
DATUM seeks to bring back the core principle of Bitcoin: decentralization, giving miners direct control over the block construction process once again.
|
||||
|
||||
|
||||
Powered by Bitcoin Knots: https://bitcoinknots.org/
|
||||
developer: Ocean
|
||||
🛠️ SET-UP INSTRUCTIONS
|
||||
|
||||
|
||||
### Bitcoin Node:
|
||||
|
||||
|
||||
Datum connects automatically to your Bitcoin Knots app upon installation. A full archival node is not required for mining, so you may wish to prune your node to save disk space. You can adjust this setting under Advanced Settings in the Bitcoin Knots app.
|
||||
|
||||
|
||||
### Connecting Your Miner:
|
||||
|
||||
|
||||
Refer to your miner's documentation for specific setup details. Here's a general guide to connect your miner with Datum:
|
||||
|
||||
- Stratum URL/Host/Pool: Use your umbrelOS device’s IP address (found in Settings on the umbrelOS home screen) and port 23334.
|
||||
e.g., stratum+tcp://192.168.4.56:23334
|
||||
|
||||
- Username/Worker: Enter the Bitcoin address for receiving OCEAN rewards. Optionally, add a worker name after a period to identify your miner.
|
||||
e.g., bc1qabcdefghijklmnopqrstuvwxyz or bc1qabcdefghijklmnopqrstuvwxyz.bitaxe
|
||||
|
||||
- Password: Leave blank or enter any value if your miner requires a password.
|
||||
|
||||
|
||||
### Advanced Configuration:
|
||||
|
||||
|
||||
Datum is pre-configured to work out-of-the-box on umbrelOS. For custom settings, edit the datum_gateway_config.json file. This option is for advanced users comfortable with the command line.
|
||||
|
||||
1. From the umbrelOS homescreen, go to Settings > Advanced Settings > Terminal > umbrelOS to open a terminal.
|
||||
|
||||
|
||||
2. Edit the configuration file at /home/umbrel/umbrel/app-data/datum/data/settings/datum_gateway_config.json.
|
||||
|
||||
|
||||
3. Restart Datum from the umbrelOS homescreen by right-clicking the Datum app and selecting Restart.
|
||||
|
||||
|
||||
For more information on Datum, please visit https://github.com/OCEAN-xyz/datum_gateway
|
||||
developer: OCEAN
|
||||
website: https://ocean.xyz
|
||||
dependencies: []
|
||||
repo: https://github.com/ocean-xyz
|
||||
dependencies:
|
||||
- bitcoin-knots
|
||||
repo: https://github.com/OCEAN-xyz/datum_gateway
|
||||
support: https://ocean.xyz
|
||||
port: 21000
|
||||
gallery:
|
||||
- https://raw.githubusercontent.com/Retropex/Bitcoin-store/refs/heads/datum/btc-datum/icon/preview.png
|
||||
- 1.jpg
|
||||
- 2.jpg
|
||||
- 3.jpg
|
||||
path: ""
|
||||
defaultPassword: ""
|
||||
releaseNotes: >-
|
||||
releaseNotes: ""
|
||||
submitter: Léo Haf
|
||||
submission: https://github.com/Retropex/Bitcoin-store/pull/1
|
||||
submission: https://github.com/getumbrel/umbrel-apps/pull/1661
|
||||
|
Loading…
Reference in New Issue
Block a user