git.iko.soy/xmrig-bash-scripts
on c1e2628 help sign in
8 files changed+75−80
since splitsnapshots
unifiedsplit
.gitignore−1 crontab.sh+1−1 functions.sh+13−10 input.sh+21−9 install.sh+17−6 maintenance.sh+1−1 settings.sh+15−20 start.sh+7−32
.gitignore−1
@@ -1,7 +1,6 @@
11xmrig-cpu/
22*.swp
33crontab
4−null
54config.json
65myconfig.json
76mysettings.sh
crontab.sh+1−1
@@ -12,7 +12,7 @@ crontab -r
1212
1313# Setup users contab
1414
15−crontab -l | { cat; echo "#Start at $_USER_CRONSTART on days $_USER_CRONDAYS
15+crontab -l | { cat; echo "#Start at $_USER_TIMESTART on days $_USER_CRONDAYS
16160 $_USER_CRONSTART * * $_USER_CRONDAYS screen -dmS $_XMRIG_SCREEN xmrig --config=$_XMRIG_CONFIG_LOCATION"; } | crontab -
1717
1818crontab -l | { cat; echo "#Stop at $_USER_TIMESTOP on days $_USER_CRONDAYS
functions.sh+13−10
@@ -15,18 +15,23 @@ function prompt_confirm() {
1515
1616function show_settings () {
1717 echo "${_CYAN}Settings from loaded environment:${_RESET}"
18− echo "${_GREEN}Pool URL:${_RESET}: $_POOLS_URL"
19− echo "${_GREEN}Recieve Wallet:${_RESET}: $_POOLS_USER"
20− echo "${_GREEN}Email Address:${_RESET}: $_POOLS_PASS"
18+ echo "${_GREEN}Pool URL:${_RESET}: $_POOL_SERVER_URL"
19+ echo "${_GREEN}Pool Port:${_RESET}: $_POOL_SERVER_PORT"
20+ echo "${_GREEN}Recieve Wallet:${_RESET}: $_RECEIVE_WALLET"
21+ echo "${_GREEN}Email Address:${_RESET}: $_EMAIL"
22+ echo "${_GREEN}Worker Identity:${_RESET}: $_API_WORKER_ID"
2123}
2224
2325function show_mysettings () {
2426 if [ -f $_WORK_DIR/$_MYSETTINGS_FILE ]; then
2527 load_mysettings
2628 echo "${_CYAN}Settings from mysettings.sh:${_RESET}"
27− echo "${_GREEN}Pool URL:${_RESET}: $_POOLS_URL"
28− echo "${_GREEN}Recieve Wallet:${_RESET}: $_POOLS_USER"
29− echo "${_GREEN}Email Address:${_RESET}: $_POOLS_PASS"
29+ echo "${_CYAN}Settings loaded:${_RESET}"
30+ echo "${_GREEN}Pool URL:${_RESET}: $_POOL_SERVER_URL"
31+ echo "${_GREEN}Pool Port:${_RESET}: $_POOL_SERVER_PORT"
32+ echo "${_GREEN}Recieve Wallet:${_RESET}: $_RECEIVE_WALLET"
33+ echo "${_GREEN}Email Address:${_RESET}: $_EMAIL"
34+ echo "${_GREEN}Worker Identity:${_RESET}: $_API_WORKER_ID"
3035 fi
3136}
3237
@@ -37,9 +42,7 @@ function load_mysettings () {
3742}
3843
3944function my_config_json () {
40−
41− _CONFIG_JSON=$(jo -p -B api=$(jo id=$_API_ID worker-id=$_API_WORKER_ID) autosave=$_AUTOSAVE background=$_BACKGROUND colors=$_COLORS cpu=$(jo enabled=$_CPU_ENABLED huge-pages=$_CPU_HUGE_PAGES hw-aes=$_CPU_HW_AES priority=$_CPU_PRIORITY asm=$_CPU_ASM cn=$(jo -a $_CPU_CN) cn/0=$_CPU_CN_0 cn-lite/0=$_CPU_CN_LITE_0) opencl=$(jo enabled=$_OPENCL_ENABLED cache=$_OPENCL_CACHE loader=$_OPENCL_LOADER platform=$_OPENCL_PLATFORM) donate-level=$_DONATE_LEVEL donate-over-proxy=$_DONATE_OVER_PROXY http=$(jo enabled=$_HTTP_ENABLED host=$_HTTP_HOST port=$_HTTP_PORT access-token=$_HTTP_ACCESS_TOKEN restricted=$_HTTP_RESTRICTED) log-file=$_LOG_FILE pools=$(jo -a $(jo algo=$_POOLS_ALGO url=$_POOLS_URL user=$_POOLS_USER pass=$_POOLS_PASS rig-id=$_POOLS_RIG_ID nicehash=$_POOLS_NICEHASH keepalive=$_POOLS_KEEPALIVE enabled=$_POOLS_ENABLED tls=$_POOLS_TLS tls-fingerprint=$_POOLS_TLS_FINDERPRINT daemon=$_POOLS_DAEMON)) print-time=$_PRINT_TIME retries=$_RETRIES retry-pause=$_RETRIES_PAUSE syslog=$_SYSLOG user-agent=$_USER_AGENT watch=$_WATCH)
42−
45+ _CONFIG_JSON=$(jo -p -B api=$(jo id=$_API_ID worker-id=$_API_WORKER_ID) autosave=$_AUTOSAVE background=$_BACKGROUND colors=$_COLORS cpu=$(jo enabled=$_CPU_ENABLED huge-pages=$_CPU_HUGE_PAGES hw-aes=$_CPU_HW_AES priority=$_CPU_PRIORITY asm=$_CPU_ASM cn=$(jo -a $_CPU_CN) cn/0=$_CPU_CN_0 cn-lite/0=$_CPU_CN_LITE_0) donate-level=$_DONATE_LEVEL donate-over-proxy=$_DONATE_OVER_PROXY http=$(jo enabled=$_HTTP_ENABLED host=$_HTTP_HOST port=$_HTTP_PORT access-token=$_HTTP_ACCESS_TOKEN restricted=$_HTTP_RESTRICTED) log-file=$_LOG_FILE pools=$(jo -a $(jo algo=$_POOLS_ALGO url=$_POOLS_URL user=$_POOLS_USER pass=$_POOLS_PASS rig-id=$_POOLS_RIG_ID nicehash=$_POOLS_NICEHASH keepalive=$_POOLS_KEEPALIVE enabled=$_POOLS_ENABLED tls=$_POOLS_TLS tls-fingerprint=$_POOLS_TLS_FINDERPRINT daemon=$_POOLS_DAEMON)) print-time=$_PRINT_TIME retries=$_RETRIES retry-pause=$_RETRIES_PAUSE syslog=$_SYSLOG user-agent=$_USER_AGENT watch=$_WATCH)
4346}
4447
4548function build_xmrig () {
@@ -58,7 +61,7 @@ function build_xmrig () {
5861 cd $_XMRIG_BUILD_LOCATION
5962
6063 # Configure cmake scafolding
61− cmake ..
64+ cmake .. -DCMAKE_C_COMPILER=gcc-7 -DCMAKE_CXX_COMPILER=g++-7
6265
6366 # Compile the software
6467 make
input.sh+21−9
@@ -36,17 +36,29 @@ else
3636
3737 # Prompt user input
3838
39− echo "Current pool URL: $_POOLS_URL"
40− read -p "Enter new pool URL: " _POOLS_URL
41− echo "_POOLS_URL=\"$_POOLS_URL\"" >> $_MYSETTINGS_FILE_LOCATION
39+ echo "Current pool URL: $_POOL_SERVER_URL"
40+ read -p "Enter new pool URL: " _POOL_SERVER_URL
4241
43− echo "Current Receive Wallet address: $_POOLS_USER"
44− read -p "Enter new Receive Wallet address: " _POOLS_USER
45− echo "_POOLS_USER=\"$_POOLS_USER\"" >> $_MYSETTINGS_FILE_LOCATION
42+ echo "Current pool TCP Port: $_POOL_SERVER_PORT"
43+ read -p "Enter new pool TCP Port: " _POOL_SERVER_PORT
4644
47− echo "Current email address: $_POOLS_PASS"
48− read -p "Enter new email address: " _POOLS_PASS
49− echo "_POOLS_PASS=\"$_POOLS_PASS\"" >> $_MYSETTINGS_FILE_LOCATION
45+ echo "Current Receive Wallet address: $_RECEIVE_WALLET"
46+ read -p "Enter new Receive Wallet address: " _RECEIVE_WALLET
47+
48+ echo "Current email address: $_EMAIL"
49+ read -p "Enter new email address: " _EMAIL
50+
51+ echo "Current Miner Identifier: $_API_WORKER_ID"
52+ read -p "Enter Miner Identifier: " _API_WORKER_ID
53+
54+ # Write user input to file
55+
56+ echo "_POOL_SERVER_URL=\"$_POOL_SERVER_URL\"" >> $_MYSETTINGS_FILE_LOCATION
57+ echo "_POOL_SERVER_PORT=\"$_POOL_SERVER_PORT\"" >> $_MYSETTINGS_FILE_LOCATION
58+ echo "_RECEIVE_WALLET=\"$_RECEIVE_WALLET\"" >> $_MYSETTINGS_FILE_LOCATION
59+ echo "_EMAIL=\"$_EMAIL\"" >> $_MYSETTINGS_FILE_LOCATION
60+ echo "_API_WORKER_ID=\"$_API_WORKER_ID\"" >> $_MYSETTINGS_FILE_LOCATION
61+ echo "_POOLS_URL=\"$_POOL_SERVER_URL:$_POOL_SERVER_PORT\"" >> $_MYSETTINGS_FILE_LOCATION
5062
5163 fi
5264
install.sh+17−6
@@ -30,27 +30,38 @@ fi
3030
3131# Load functions
3232. functions.sh
33+sleep 5
3334
3435# Get settings
3536. settings.sh
36−
37−# Update system
38−. maintenance.sh
39−
40−# Install dependencies
41−. depends.sh
37+sleep 5
4238
4339# User input
4440. input.sh
41+sleep 5
4542
4643# Stop running instance
4744. stop.sh
4845
46+# Update system
47+. maintenance.sh
48+sleep 5
49+
50+# Install dependencies
51+. depends.sh
52+sleep 5
53+
4954# Get source and build by sourcing our build file
5055. build.sh
56+sleep 5
5157
5258# Create a config.json
5359. config.sh
60+sleep 5
61+
62+# Setup crontab for user
63+. crontab.sh
64+sleep 5
5465
5566# Unset REPO variable so start script will execute program
5667SCREEN=""
maintenance.sh+1−1
@@ -2,7 +2,7 @@
22
33echo "${_GREEN}MAINTENANCE STARTED${_RESET}"
44
5−if [ "$_APT_MAINETANCE" -eq "1" ]; then
5+if [ $_APT_MAINETANCE -eq 1 ]; then
66
77 sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y && sudo apt autoclean
88
settings.sh+15−20
@@ -2,12 +2,12 @@
22
33echo -e "${_GREEN}LOADING DEFAULT SETTINGS${_RESET}"
44
5−_EMAIL="spam@iko.soy"
5+_EMAIL="miners@prepaidmeters.com"
66
7−_RECEIVE_WALLET="44FADBDhNRvjJszF5mLS4VCwZ71mY7ftfUErEisPoT724hb5eYuvuFqWthniY8dGPBTcWuBoeLrLJVkxLHCb1Lsd4DdbZzZ"
7+_RECEIVE_WALLET="854sqm2Cm4TB2XgPHWqSPSbnFAe3SMzdEDzZHpukQ8NHBPFropbnkFmEKiZPgwjMFC9PTjaFscR2UU6ZwFCqJzGMUiZVbTM"
88
9−_POOL_SERVER_URL="xmrpool.eu"
10−_POOL_SERVER_PORT="5555"
9+_POOL_SERVER_URL="pool.supportxmr.com"
10+_POOL_SERVER_PORT="3333"
1111
1212# Call function
1313show_settings
@@ -16,7 +16,7 @@ show_settings
1616# DO NOT CHANGE AFTER THIS POINT UNLESS YOU KNOW WHAT YOU ARE DOING #
1717#######################################################################
1818
19−_API_ID='null'
19+_API_ID="null"
2020_API_WORKER_ID="$HOSTNAME"
2121
2222_AUTOSAVE="true"
@@ -34,29 +34,24 @@ calc_threads
3434_CPU_ENABLED="true"
3535_CPU_HUGE_PAGES="true"
3636_CPU_HW_AES="$_AES_NI"
37−_CPU_PRIORITY='null'
37+_CPU_PRIORITY="null"
3838_CPU_ASM="true"
3939_CPU_CN="$_ENV_CPU_THREAD_AFFINITY"
4040
4141_CPU_CN_0="false"
4242_CPU_CN_LITE_0="false"
4343
44−_OPENCL_ENABLED="false"
45−_OPENCL_CACHE="true"
46−_OPENCL_LOADER='null'
47−_OPENCL_PLATFORM="AMD"
48−
49−_DONATE_LEVEL="0"
44+_DONATE_LEVEL="5"
5045
5146_DONATE_OVER_PROXY="1"
5247
5348_HTTP_ENABLED="true"
5449_HTTP_HOST=$(hostname --all-ip-addresses | awk '{print $1}')
5550_HTTP_PORT="8080"
56−_HTTP_ACCESS_TOKEN='null'
51+_HTTP_ACCESS_TOKEN="null"
5752_HTTP_RESTRICTED="false"
5853
59−_LOG_FILE='null'
54+_LOG_FILE="null"
6055
6156_POOLS_ALGO="cn/r"
6257_POOLS_URL="$_POOL_SERVER_URL:$_POOL_SERVER_PORT"
@@ -66,8 +61,8 @@ _POOLS_RIG_ID="$HOSTNAME"
6661_POOLS_NICEHASH="true"
6762_POOLS_KEEPALIVE="true"
6863_POOLS_ENABLED="true"
69−_POOLS_TLS='null'
70−_POOLS_TLS_FINDERPRINT='null'
64+_POOLS_TLS="null"
65+_POOLS_TLS_FINDERPRINT="null"
7166_POOLS_DAEMON="false"
7267
7368_PRINT_TIME="30"
@@ -77,7 +72,7 @@ _RETRIES_PAUSE="5"
7772
7873_SYSLOG="false"
7974
80−_USER_AGENT='null'
75+_USER_AGENT="null"
8176
8277_WATCH="true"
8378
@@ -95,7 +90,7 @@ _XMRIG_CLONE="xmrig-cpu"
9590_XMRIG_CLONE_LOCATION="$_WORK_DIR/$_XMRIG_CLONE"
9691
9792# Set branch from which to build
98−_XMRIG_BRANCH="master"
93+_XMRIG_BRANCH="beta"
9994
10095# Set build directory
10196_XMRIG_BUILD="build"
@@ -119,8 +114,8 @@ _XMRIG_CONFIG="config.json"
119114_XMRIG_CONFIG_LOCATION="$_WORK_DIR/$_XMRIG_CONFIG"
120115
121116# Set values for crontab
122−_USER_CRONSTART="17"
123−_USER_CRONSTOP="8"
117+_USER_CRONSTART="18"
118+_USER_CRONSTOP="6"
124119_USER_CRONDAYS="1-5"
125120
126121# Set the name of the screen created by start script
start.sh+7−32
@@ -10,46 +10,21 @@ echo "${_GREEN}MINING STARTED${_RESET}"
1010. functions.sh
1111. settings.sh
1212
13−# if ! screen -list | grep -q "$_XMRIG_SCREEN"; then
13+if ! screen -list | grep -q "$_XMRIG_SCREEN"; then
1414
1515 # Call functions
1616 show_settings
1717 show_mysettings
18− # start_xmrig
18+ start_xmrig
1919
2020 # List screen
21− # screen -ls
22−# else
21+ screen -ls
22+else
2323
2424 # List screen
25− # screen -ls
26−
27−# fi
28−echo "[Unit]" | sudo tee /etc/systemd/system/xmrig.service
29−echo "Description=XMRIG service" | sudo tee -a /etc/systemd/system/xmrig.service
30−echo "After=network.target" | sudo tee -a /etc/systemd/system/xmrig.service
31−echo "StartLimitIntervalSec=0" | sudo tee -a /etc/systemd/system/xmrig.service
32−echo "[Service]" | sudo tee -a /etc/systemd/system/xmrig.service
33−echo "Type=simple" | sudo tee -a /etc/systemd/system/xmrig.service
34−echo "Restart=always" | sudo tee -a /etc/systemd/system/xmrig.service
35−echo "RestartSec=3" | sudo tee -a /etc/systemd/system/xmrig.service
36−echo "User=root" | sudo tee -a /etc/systemd/system/xmrig.service
37−echo "ExecStart=$_XMRIG_BUILD_LOCATION/xmrig --config=$_XMRIG_CONFIG_LOCATION" | sudo tee -a /etc/systemd/system/xmrig.service
38−echo "" | sudo tee -a /etc/systemd/system/xmrig.service
39−echo "[Install]" | sudo tee -a /etc/systemd/system/xmrig.service
40−echo "WantedBy=multi-user.target" | sudo tee -a /etc/systemd/system/xmrig.service
41−
42−echo "STARTING XMRIG/SERVICES"
43−
44−sudo service logrotate start
45−sudo service ntp start
46−sudo service xmrig start
47−
48−echo "STARTING XMRIG/SERVICES @ BOOT"
49−
50−sudo systemctl enable logrotate
51−sudo systemctl enable ntp
52−sudo systemctl enable xmrig
25+ screen -ls
26+
27+fi
5328
5429echo "${_CYAN}MINING RUNNING${_RESET}"
5530echo "${_YELLOW} The process is running in a screen session."