flexfarmer.sh 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. #!/bin/bash
  2. set -e
  3. version=2
  4. function print_centered {
  5. [[ $# == 0 ]] && return 1
  6. declare -i TERM_COLS="$(tput cols)"
  7. declare -i str_len="${#1}"
  8. [[ $str_len -ge $TERM_COLS ]] && {
  9. echo "$1";
  10. return 0;
  11. }
  12. declare -i filler_len="$(( (TERM_COLS - str_len) / 2 ))"
  13. [[ $# -ge 2 ]] && ch="${2:0:1}" || ch=" "
  14. filler=""
  15. for (( i = 0; i < filler_len; i++ )); do
  16. filler="${filler}${ch}"
  17. done
  18. printf "%s%s%s" "$filler" "$1" "$filler"
  19. [[ $(( (TERM_COLS - str_len) % 2 )) -ne 0 ]] && printf "%s" "${ch}"
  20. printf "\n"
  21. return 0
  22. }
  23. print_centered "$(tput setaf 10)"
  24. print_centered " _____ _ ___ "
  25. print_centered "| __| |___ _ _| _|___ ___ _____ ___ ___ "
  26. print_centered "| __| | -_|_'_| _| .'| _| | -_| _|"
  27. print_centered "|__| |_|___|_,_|_| |__,|_| |_|_|_|___|_| "
  28. print_centered " "
  29. echo -n "$(tput setaf 7)"
  30. print_centered "Flexpool mining software"
  31. function build_service {
  32. if [ -f /tmp/flexfarmer-daemon];then rm /tmp/flexfarmer-daemon;fi
  33. cat <<'EOF'>> /tmp/flexfarmer-daemon
  34. #!/bin/sh -e
  35. ### BEGIN INIT INFO
  36. # Provides: flexfarmer
  37. # Required-Start: $ALL
  38. # Default-Start: 3 4 5
  39. # Default-Stop: 0 6
  40. ### END INIT INFO
  41. case "$1" in
  42. start)
  43. su wareck -c /home/wareck/flexfarmer/start.sh
  44. ;;
  45. stop)
  46. sudo killall -9 flexfarmer | true
  47. ;;
  48. *)
  49. echo "Usage: /etc/init.d/flexfarmer-daemon {start|stop}"
  50. exit 1
  51. ;;
  52. esac
  53. exit 0
  54. EOF
  55. chmod +x /tmp/flexfarmer-daemon
  56. sudo cp /tmp/flexfarmer-daemon /etc/init.d/flexfarmer-daemon
  57. sudo update-rc.d flexfarmer-daemon defaults
  58. print_centered "Build Service : [ OK ]"
  59. rm /tmp/flexfarmer-daemon
  60. if [ -f /home/wareck/flexfarmer/start.sh ];then rm /home/wareck/flexfarmer/start.sh;fi
  61. cat <<'EOF'>> /home/wareck/flexfarmer/start.sh
  62. #!/bin/bash
  63. screen -dmS flexfarmer flexfarmer -c /home/wareck/flexfarmer/config.yml
  64. EOF
  65. chmod +x /home/wareck/flexfarmer/start.sh
  66. }
  67. function install_ {
  68. cd /home/wareck/
  69. wget -c -q http://folivier.homelinux.org/cube/pack/flexfarmer.tar.xz
  70. tar xfJ flexfarmer.tar.xz
  71. rm /home/wareck/flexfarmer.tar.xz
  72. sudo cp /home/wareck/flexfarmer/flexfarmer /usr/local/bin/
  73. print_centered "Install software : [ OK ]"
  74. }
  75. function nft_builder {
  76. if [ -f /home/wareck/chia-plotter/build/flexpool.sh];then rm /home/wareck/chia-plotter/build/flexpool.sh;fi
  77. cat <<'EOF'>> /home/wareck/chia-plotter/build/flexpool.sh
  78. #!/bin/bash
  79. ./chia_plot -n 1 -r 4 -u 128 -t /media/Nvme/plotting/ -2 /media/Nvme/plotting/ -d /Chia/Chia2/Plots-nft/ -c xch10yjksfwm8s66z32qy35x950608hk8l67vmsur4rwpaanpkd6ks3qhfw5nk -f 8ba5acd276b45fd0f749ce195dcddcf0e63c3bf2e751e9e273faa0125075c36a11f2ee231e7cf74abed2920be97fc373
  80. EOF
  81. chmod +x /home/wareck/chia-plotter/build/flexpool.sh
  82. print_centered "Install nft script : [ OK ]"
  83. }
  84. echo
  85. install_
  86. build_service
  87. nft_builder
  88. echo