Christian Rotzoll 6 years ago
parent
commit
9e8fa0bae1
  1. 86
      build_sdcard.sh
  2. 56
      dietpi/Odroid_HC1_XU4.md
  3. 96
      dietpi/README.md
  4. 40
      dietpi/RaspberryPi.md
  5. 262
      dietpi/RaspiBlitz1.0_OdroidHC1_DietPi6.21.1.torrent
  6. 15
      dietpi/boot/Automation_Custom_Script.sh
  7. 15
      dietpi/boot/dietpi.txt
  8. 210
      dietpi/dietpi.display.sh
  9. 61
      dietpi/hw_comparison.md

86
build_sdcard.sh

@ -119,7 +119,6 @@ if [ "${baseImage}" = "dietpi" ]; then
# install OpenSSH client + server
sudo apt install -y openssh-client
sudo apt install -y openssh-sftp-server
fi
# special prepare when Raspbian
@ -148,12 +147,21 @@ echo "*** CONFIG ***"
echo "root:raspiblitz" | sudo chpasswd
echo "pi:raspiblitz" | sudo chpasswd
# set Raspi to boot up automatically with user pi (for the LCD)
# https://www.raspberrypi.org/forums/viewtopic.php?t=21632
sudo raspi-config nonint do_boot_behaviour B2
sudo bash -c "echo '[Service]' >> /etc/systemd/system/getty@tty1.service.d/autologin.conf"
sudo bash -c "echo 'ExecStart=' >> /etc/systemd/system/getty@tty1.service.d/autologin.conf"
sudo bash -c "echo 'ExecStart=-/sbin/agetty --autologin pi --noclear %I 38400 linux' >> /etc/systemd/system/getty@tty1.service.d/autologin.conf"
if [ "${baseImage}" = "raspbian" ]; then
# set Raspi to boot up automatically with user pi (for the LCD)
# https://www.raspberrypi.org/forums/viewtopic.php?t=21632
sudo raspi-config nonint do_boot_behaviour B2
sudo bash -c "echo '[Service]' >> /etc/systemd/system/getty@tty1.service.d/autologin.conf"
sudo bash -c "echo 'ExecStart=' >> /etc/systemd/system/getty@tty1.service.d/autologin.conf"
sudo bash -c "echo 'ExecStart=-/sbin/agetty --autologin pi --noclear %I 38400 linux' >> /etc/systemd/system/getty@tty1.service.d/autologin.conf"
fi
if [ "${baseImage}" = "dietpi" ]; then
# set DietPi to boot up automatically with user pi (for the LCD)
# requires AUTO_SETUP_AUTOSTART_TARGET_INDEX=7 in the dietpi.txt
# /DietPi/dietpi/dietpi-autostart overwrites /etc/systemd/system/getty@tty1.service.d/dietpi-autologin.conf on reboot
sudo sed -i 's/agetty --autologin root %I $TERM/agetty --autologin pi --noclear %I 38400 linux/' /DietPi/dietpi/dietpi-autostart
fi
# change log rotates
# see https://github.com/rootzoll/raspiblitz/issues/394#issuecomment-471535483
@ -237,6 +245,7 @@ sudo apt-get install -y vnstat
# prepare for BTRFS data drive raid
sudo apt-get install -y btrfs-tools
# prepare for display graphics mode
# see https://github.com/rootzoll/raspiblitz/pull/334
sudo apt-get install -y fbi
@ -304,6 +313,7 @@ bitcoinSHA256="1b9cdf29a9eada239e26bf4471c432389c2f2784362fc8ef0267ba7f48602292"
laanwjPGP="01EA5486DE18A882D4C2684590C8019E36C2E964"
# prepare directories
sudo rm -r /home/admin/download
sudo -u admin mkdir /home/admin/download
cd /home/admin/download
@ -566,22 +576,32 @@ sudo bash -c "echo 'source /home/admin/_commands.sh' >> /home/admin/.bashrc"
sudo bash -c "echo '# automatically start main menu for admin' >> /home/admin/.bashrc"
sudo bash -c "echo './00mainMenu.sh' >> /home/admin/.bashrc"
# bash autostart for pi
# run as exec to dont allow easy physical access by keyboard
# see https://github.com/rootzoll/raspiblitz/issues/54
sudo bash -c 'echo "# automatic start the LCD info loop" >> /home/pi/.bashrc'
sudo bash -c 'echo "SCRIPT=/home/admin/00infoLCD.sh" >> /home/pi/.bashrc'
sudo bash -c 'echo "# replace shell with script => logout when exiting script" >> /home/pi/.bashrc'
sudo bash -c 'echo "exec \$SCRIPT" >> /home/pi/.bashrc'
if [ "${baseImage}" = "raspbian" ]; then
# bash autostart for pi
# run as exec to dont allow easy physical access by keyboard
# see https://github.com/rootzoll/raspiblitz/issues/54
sudo bash -c 'echo "# automatic start the LCD info loop" >> /home/pi/.bashrc'
sudo bash -c 'echo "SCRIPT=/home/admin/00infoLCD.sh" >> /home/pi/.bashrc'
sudo bash -c 'echo "# replace shell with script => logout when exiting script" >> /home/pi/.bashrc'
sudo bash -c 'echo "exec \$SCRIPT" >> /home/pi/.bashrc'
# create /home/admin/setup.sh - which will get executed after reboot by autologin pi user
cat > /home/admin/setup.sh <<EOF
# create /home/admin/setup.sh - which will get executed after reboot by autologin pi user
cat > /home/admin/setup.sh <<EOF
# make LCD screen rotation correct
sudo sed --in-place -i "57s/.*/dtoverlay=tft35a:rotate=270/" /boot/config.txt
# make LCD screen rotation correct
sudo sed --in-place -i "57s/.*/dtoverlay=tft35a:rotate=270/" /boot/config.txt
EOF
sudo chmod +x /home/admin/setup.sh
sudo chmod +x /home/admin/setup.sh
fi
if [ "${baseImage}" = "dietpi" ]; then
# bash autostart for dietpi
sudo bash -c 'echo "# automatic start the LCD info loop" >> /home/dietpi/.bashrc'
sudo bash -c 'echo "SCRIPT=/home/admin/00infoLCD.sh" >> /home/dietpi/.bashrc'
sudo bash -c 'echo "# replace shell with script => logout when exiting script" >> /home/dietpi/.bashrc'
sudo bash -c 'echo "exec \$SCRIPT" >> /home/dietpi/.bashrc'
fi
echo ""
echo "*** HARDENING ***"
@ -630,9 +650,33 @@ echo ""
echo "IMPORTANT IF WANT TO MAKE A RELEASE IMAGE FROM THIS BUILD:"
echo "login once after reboot without HDD and run 'XXprepareRelease.sh'"
echo ""
echo "to continue reboot with sudo shutdown -r now and login with admin"
# install LCD only on an rPI running Raspbian
# install default LCD on DietPi without reboot to allow automatic build
if [ "${baseImage}" = "dietpi" ]; then
echo "Installing the default display available from Amazon"
# based on https://www.elegoo.com/tutorial/Elegoo%203.5%20inch%20Touch%20Screen%20User%20Manual%20V1.00.2017.10.09.zip
cd /home/admin/
# sudo apt-mark hold raspberrypi-bootloader
git clone https://github.com/goodtft/LCD-show.git
sudo chmod -R 755 LCD-show
sudo chown -R admin:admin LCD-show
cd LCD-show/
# sudo ./LCD35-show
sudo rm -rf /etc/X11/xorg.conf.d/40-libinput.conf
sudo mkdir /etc/X11/xorg.conf.d
sudo cp ./usr/tft35a-overlay.dtb /boot/overlays/
sudo cp ./usr/tft35a-overlay.dtb /boot/overlays/tft35a.dtbo
sudo cp -rf ./usr/99-calibration.conf-35 /etc/X11/xorg.conf.d/99-calibration.conf
sudo cp -rf ./usr/99-fbturbo.conf /usr/share/X11/xorg.conf.d/
sudo cp ./usr/cmdline.txt /DietPi/
sudo cp ./usr/inittab /etc/
sudo cp ./boot/config-35.txt /DietPi/config.txt
# make LCD screen rotation correct
sudo sed -i "s/dtoverlay=tft35a/dtoverlay=tft35a:rotate=270/" /DietPi/config.txt
echo "to continue reboot with \`sudo shutdown -r now \` and login with admin"
fi
# ask about LCD only on Raspbian
if [ "${baseImage}" = "raspbian" ]; then
echo "Press ENTER to install LCD and reboot ..."
read key

56
dietpi/Odroid_HC1_HC2.md → dietpi/Odroid_HC1_XU4.md

@ -6,11 +6,11 @@
## There are 3 options provided:
* a trusted fully prebuilt SDcard image
* building your own SDcard from an updated DietPi image.
* Automated building process.
* Build your own SDcard from the image downloaded from [Dietpi.com](dietpi.com#download)
---
### Download the fully prebuilt RaspiBlitz-on-DietPi SDcard image
* [torrent](https://github.com/openoms/raspiblitz/blob/raspiblitz-dev/dietpi/RaspiBlitz1.0_OdroidHC1_DietPi6.21.1.torrent)
* [mega.nz link](https://mega.nz/#F!EVNAAQiB!ZyLHP2dJMRSVjZOTCQMIYA)
sha256sum RaspiBlitz1.0_OdroidHC1_DietPi6.21.1.img: 96ee8700f52a12fb5b13fab3fffcdcf5d364c6dd16c580d969e421cef2cd7cc2
@ -23,35 +23,63 @@ Steps to run:
- login with `ssh admin@at.your.raspiblitz.ip`
password: `raspiblitz`
Using this image you can skip the rest of this guide as it is mostly about how this image was built.
Using this image you can skip the rest of this page.
The setup continues with the [RaspiBlitz Setup Process](https://github.com/rootzoll/raspiblitz/blob/master/README.md#setup-process-detailed-documentation)
---
### Download the updated DietPi image
### The automated building process:
1) Download the DietPi image for the Odroid HC1 / HC2 / XU3 / XU4:
https://dietpi.com/downloads/images/DietPi_OdroidXU4-ARMv7-Stretch.7z
2) Burn it to the SD card with [Etcher](https://www.balena.io/etcher/)
3) Right click and download the following two files: [DietPi.txt](https://raw.githubusercontent.com/rootzoll/raspiblitz/dev/dietpi/boot/dietpi.txt), [Automation_Custom_Script.sh](https://raw.githubusercontent.com/rootzoll/raspiblitz/dev/dietpi/boot/Automation_Custom_Script.sh)
4) Copy them to the /boot directory of the DietPi SDcard
[DietPi.txt](https://raw.githubusercontent.com/rootzoll/raspiblitz/dev/dietpi/boot/dietpi.txt): Overwrites the default dietpi.txt. Modified the settings to automate the DietPi setup. (see the details [here](https://github.com/rootzoll/raspiblitz/tree/dev/dietpi#excerpts-from-the-customized-dietpitxt))
For the Odroid HC1 / HC2 / XU3 / XU4 a v6.20.6 DietPi image with fail2ban installed is uploaded [here](
https://mega.nz/#!AcdVBAbR!O-W3jP5LUgw7lMY8S9XcBWcKX3IhRNAAFmaYzDXIUC0).
sha256sum DietPi_v6.20.6_OdroidXU4-ARMv7-Stretch.img:
1459b91f66b9db98f3437c31231e44497b7b7dcd9146d2cc41a3da653f9a9215
[Automation_Custom_Script.sh](https://raw.githubusercontent.com/rootzoll/raspiblitz/dev/dietpi/boot/Automation_Custom_Script.sh): Runs after DietPi installation is completed. Contains the link to download and run the build_sdcard.sh from the dev branch of @rootzoll.
(Optionally open the file with a text editor and uncomment (remove the `#` from the front of) the line with the branch you want to build the SDcard from.)
* Burn the image to the SDCard with [Etcher](https://www.balena.io/etcher/) and extend the rootfs partition to the size of your card with a partition manager (disks, Gparted, etc).
5) Assemble and boot the Odroid
* Insert the SDcard into the Odroid.
Insert the SDcard, connect the HDD, network cable and power supply to boot.
The automated setup will continue and the Odroid will restart at least twice during the process.
To follow the logs during the automated building process login with `root` and press CTRL+C.
`tail -n1000 -f /tmp/DietPi-Update/dietpi-update.log` - follow the dietpi-update process
`tail -n1000 -f /var/tmp/dietpi/logs/dietpi-automation_custom_script.log` follow the output of the build_sdcard.sh
Starting from a v6.14 DietPi image is causing a bootloop after the first restart. See the issue: https://github.com/MichaIng/DietPi/issues/2495. This will be sorted out once a new image version is uploaded for the Odroids to dietpi.com.
To get past it:
* Log in with root after the first restart (when the loop is ongoing - without any output to the HDMI screen)
* CTRL+C, run `dietpi-update` and update
* `reboot` once finished
* from then the Automation_Custom_Script.sh is carrying on
6) When the setup is finished log in as `admin`:
`ssh admin@[IP-OF-RASPIBLITZ]`
password: `raspiblitz`
* Power up and continue with [running the RaspiBlitz build_sdcard.sh script](#Run-the-RaspiBlitz-build_sdcard.sh-script)
The setup continues with the [RaspiBlitz Setup Process](https://github.com/rootzoll/raspiblitz/blob/master/README.md#setup-process-detailed-documentation)
---
### Build your own DietPi image:
Watch out this is an ardous process.
Updating from a v6.14 DietPi image is causing a bootloop under some circumstances. Will be sorted once the current, >6.2 version is uploaded for the Odroids.
Updating from a v6.14 DietPi image is causing a bootloop after the first restart. See the issue: https://github.com/MichaIng/DietPi/issues/2495.
This will be sorted out once a new image version is uploaded for the Odroids to dietpi.com
* For the Odroid HC1 / HC2 / XU3 / XU4 the start is this image:
https://dietpi.com/downloads/images/DietPi_OdroidXU4-ARMv7-Stretch.7z
* Burn it to the SD with [Etcher](https://www.balena.io/etcher/)
* Insert the SD card, connect the HDD, the network cable and power supply to boot up the Odroid:
* In the desktop terminal on Linux / MacOS or Putty on Windows:
`ssh root@[IP-OF-DIETPI]`
@ -109,8 +137,8 @@ Changing the SSH server will change the SSH keys again. To clear:
`wget https://raw.githubusercontent.com/[GITHUB-USERNAME]/raspiblitz/[BRANCH]/build_sdcard.sh && sudo bash build_sdcard.sh [BRANCH] [GITHUB-USERNAME]`
If you are working from a forked repo be aware of that the fork needs to be called `raspiblitz` for the git downloads to work.
* Run the forked version of @openoms:
`wget https://raw.githubusercontent.com/openoms/raspiblitz/raspiblitz-dev/build_sdcard.sh && sudo bash build_sdcard.sh raspiblitz-dev openoms`
* Example: run from the dev branch @rootzoll:
`wget https://raw.githubusercontent.com/rootzoll/raspiblitz/dev/build_sdcard.sh && sudo bash build_sdcard.sh dev rootzoll`
This will take a couple minutes depending on your internet ceonnection and the processing power of the SBC.
* Restart when done and log back in now as `admin`:

96
dietpi/README.md

@ -5,17 +5,25 @@
This guide was tested on:
* Odroid HC1
* Odroid HC2 (the same board except it accommodates a 3.5" 12V HDD)
* Raspberry Pi 3 B Plus - no LCD support so far
* hoping to extend this list with more compatible boards especially the ROCK64
* Odroid HC2 (the same board with a 3.5" 12V HDD)
* Odroid XU4 (with HDMI screen)
* Raspberry Pi 3 B+ (with the default GPIO or HDMI display)
See the [hardware comparison](hw_comparison.md).
The HDMI screen tested: https://www.aliexpress.com/item/3-5-inch-LCD-HDMI-USB-Touch-Screen-Real-HD-1920x1080-LCD-Display-Py-for-Raspberri/32818537950.html
---
## Specific instructions and downloads:
[Odroid HC1 / HC2 / XU3 / XU4](Odroid_HC1_HC2.md)
[Raspberry Pi](RaspberryPi.md)
[Display install script](dietpi.display.sh)
### Downloads and walkthrough for the [Odroid HC1 / HC2 / XU3 / XU4](Odroid_HC1_HC2.md)
---
## General guide for the RaspiBlitz-on-DietPi
### Setting up the DietPi OS
@ -26,24 +34,23 @@ Getting started with DietPi: https://dietpi.com/phpbb/viewtopic.php?f=8&t=9#p9
At least 1GB RAM is recommended.
Look for the SD card image for the specific SBC in the [download section](https://dietpi.com/#download).
* Burn the image to the SDCard with [Etcher](https://www.balena.io/etcher/) and extend the rootfs partition to the size of your card with a partition manager.
* Burn the image to the SDCard with [Etcher](https://www.balena.io/etcher/).
* Insert the SDcard into your SBC.
* Connect the HDD with a powered suitably powered adapter.
A USB 2.0 port will not be able to power an HDD so you will need extra cable
If you are connecting the HDD to a USB 3.0 port and have an at least 2A power supply, you might be able to run without an extra cable.
* Connect the HDD with a suitably powered adapter.
Aim to use 2 USB ports or a separate power supply to power the HDD for a more reliable setup.
* Power up and log in with the desktop terminal on Linux / MacOS or Putty on Windows:
`ssh root@[IP-OF-DIETPI]`
password: `dietpi`
* You might be asked about updating DietPi. This is not a straightforward process if starting from a version <6.20. Try to update, it is best to build on the latest version.
* If you are asked about updating DietPi, go ahead with it. This is not always a straightforward process, but it is best to build on the latest version.
* In the DietPi software menu install `fail2ban` and make `OpenSSH server` the default SSH server.
Changing the SSH server will change the SSH keys again. To clear:
`ssh-keygen -f "/home/[your-linux-username]/.ssh/known_hosts" -R "dietpi.IP"`
If there is a screen installed: within the Dietpi-Config menu set the Autostart to `7: Automatic login. `
Changing the SSH server will change the SSH keys again. To clear:
`ssh-keygen -f "/home/[your-linux-username]/.ssh/known_hosts" -R "dietpi.IP"`
* After every reboot log back in:
`ssh root@[IP-OF-DIETPI]`
@ -59,50 +66,49 @@ password: `dietpi`
`wget https://raw.githubusercontent.com/[GITHUB-USERNAME]/raspiblitz/[BRANCH]/build_sdcard.sh && sudo bash build_sdcard.sh [BRANCH] [GITHUB-USERNAME]`
If you are working from a forked repo be aware of that the fork needs to be called `raspiblitz` for the git downloads to work.
* Run the forked version of @openoms:
`wget https://raw.githubusercontent.com/openoms/raspiblitz/raspiblitz-dev/build_sdcard.sh && sudo bash build_sdcard.sh raspiblitz-dev openoms`
This will take a couple minutes depending on your internet connection and the processing power of the SBC.
Example to run the dev branch of @rootzoll:
`wget https://raw.githubusercontent.com/rootzoll/raspiblitz/dev/build_sdcard.sh && sudo bash build_sdcard.sh dev rootzoll`
This will take a couple minutes depending on your internet connection and the processing power of the SBC.
* Restart when done and log back in now as `admin`:
`ssh admin@[IP-OF-DROIDBLITZ]`
* After the automatic restart log back in now as `admin`:
`ssh admin@[IP-OF-RASPIBLITZ]`
password: `raspiblitz`
* From here he setup continues with the [RaspiBlitz Setup Process](https://github.com/rootzoll/raspiblitz/blob/master/README.md#setup-process-detailed-documentation)
---
### Useful commands for debugging:
To test a new configuration run XXcleanHDD.sh and strictly restart
(this makes _bootstrap.sh and 00mainMenu.sh run in the right order)
During the Automated setup:
`tail -n1000 -f /tmp/DietPi-Update/dietpi-update.log` - follow the dietpi-update process
`tail -n1000 -f /var/tmp/dietpi/logs/dietpi-automation_custom_script.log` follow the output of the build_sdcard.sh
`tail -n1000 -f /var/tmp/dietpi/logs/dietpi-automation_custom_script.log` follow startup setup script log
`lsblk` see the partitions
During the RaspiBlitz setup process:
`lsblk` check the disk partitions
`tail -n1000 -f raspiblitz.log` - debug logs of bootstrap.sh
`sudo tail -f /mnt/hdd/bitcoin/debug.log` - continuous monitoring
`sudo tail -f /mnt/hdd/bitcoin/debug.log` - continuous monitoring of bitcoind
`sudo tail -n100 /mnt/hdd/bitcoin/debug.log` - shows the last 100 lines
`sudo systemctl status lnd`
`sudo journalctl -f -u lnd`
`./home/admin/XXdebugLogs.sh` - debug log collection on the RaspiBlitz
`sudo systemctl status lnd` - status of the lnd service
`sudo journalctl -f -u lnd`
`./home/admin/XXdebugLogs.sh` - debug log collection on the RaspiBlitz
---
## Excerpts from the default [dietpi.txt](https://github.com/Fourdee/DietPi/blob/master/dietpi.txt)
## Excerpts from the [customized dietpi.txt](/dietpi/boot/dietpi.txt)
to be used for a fully automatic SDcard building process.
### Automate installation with the dietpi.txt
Need to copy to SDcard /boot/dietpi.txt after burning the image with Etcher.
IMPORTANT:
- Modifications to /boot/dietpi.txt will not be preserved on reboot.
- Please ensure you edit from the DietPi-RAMdisk location: /DietPi/dietpi.txt
NB: This is intended for advanced users, unless you know what you are doing, do not edit this file. ease use the DietPi programs instead.
- Modifications to /boot/dietpi.txt will not be preserved on reboot .
- Please ensure you edit from the DietPi-RAMdisk location: /DietPi/dietpi.txt
NB: This is intended for advanced users, unless you know what you are doing, do not edit this file. ease use the DietPi programs instead.
NB: Do not remove uncommented lines, as the items are scraped by DietPi programs, on demand.
DietPi-Automation settings, applied on the 1st boot of DietPi, ONCE
Sample:
DietPi-Automation settings, applied on the 1st boot of DietPi, ONCE
Sample:
https://github.com/Fourdee/DietPi/blob/master/dietpi.txt
### DietPi-Software to automatically install.
#### DietPi-Software to be installed automatically
Requires `AUTO_SETUP_AUTOMATED=1 `
For a list of software index's (ID's), run '/DietPi/dietpi/dietpi-software list'
No limit on number entries, add as many as you need and uncomment the line.
@ -110,17 +116,23 @@ DietPi will automatically install all pre-reqs (eg: ALSA/XSERVER for desktops et
>install fail2ban
AUTO_SETUP_INSTALL_SOFTWARE_ID=73
install OpenSSH Client
AUTO_SETUP_INSTALL_SOFTWARE_ID=0
install OpenSSH Server
AUTO_SETUP_INSTALL_SOFTWARE_ID=105
#### SSH Server Selection:
>0=none
-1=dropbear
-2=opensshserver
AUTO_SETUP_SSH_SERVER_INDEX=-2
### Custom Script (post-networking and post-DietPi install)
Runs after DietPi installation is completed
---
## Custom Script (post-networking and post-DietPi install)
Runs after DietPi installation is completed.
Allows you to automatically execute a custom script at the end of DietPi installation.
Option 1 = Copy your script to /boot/Automation_Custom_Script.sh and it will be executed automatically.
Option 2 = Host your script online, then use AUTO_SETUP_CUSTOM_SCRIPT_EXEC=http://myweb.com/myscript.sh, it will be downloaded and executed automatically. | 0=disabled
NB: Executed script log /var/tmp/dietpi/logs/dietpi-automation_custom_script.log
### Guide to clone your SD-cards in Windows, MacOS and Linux and shrink the image in Linux:
Find the Automation_Custom_Script.sh loaded with the build_sdcard.sh [here](/dietpi/boot/Automation_Custom_Script.sh)
---
## Guide to clone your SD-cards in Windows, MacOS and Linux and shrink the image in Linux:
https://beebom.com/how-clone-raspberry-pi-sd-card-windows-linux-macos/

40
dietpi/RaspberryPi.md

@ -0,0 +1,40 @@
# ⚡️ RaspiBlitz-on-DietPi ⚡️
## Tested on the Raspberry Pi 3 B +
### The automated building process:
1) Download the DietPi image for the Raspberry Pi:
https://dietpi.com/downloads/images/DietPi_RPi-ARMv6-Stretch.7z
2) Burn it to the SD card with [Etcher](https://www.balena.io/etcher/)
3) Right click and download the following two files: [DietPi.txt](https://raw.githubusercontent.com/rootzoll/raspiblitz/dev/dietpi/boot/dietpi.txt), [Automation_Custom_Script.sh](https://raw.githubusercontent.com/rootzoll/raspiblitz/dev/dietpi/boot/Automation_Custom_Script.sh)
4) Copy them to the /boot directory of the DietPi SDcard
[DietPi.txt](https://raw.githubusercontent.com/rootzoll/raspiblitz/dev/dietpi/boot/dietpi.txt): Overwrites the default dietpi.txt. Modified the settings to automate the DietPi setup. (see the details [here](https://github.com/rootzoll/raspiblitz/tree/dev/dietpi#excerpts-from-the-customized-dietpitxt))
[Automation_Custom_Script.sh](https://raw.githubusercontent.com/rootzoll/raspiblitz/dev/dietpi/boot/Automation_Custom_Script.sh): Runs after DietPi installation is completed. Contains the link to download and run the build_sdcard.sh from the dev branch of @rootzoll.
(Optionally open the file with a text editor and uncomment (remove the `#` from the front of) the line with the branch you want to build the SDcard from.)
5) Assemble and boot the Raspberry Pi
Insert the SDcard, connect the HDD, network cable and power supply to boot.
(The default LCD will be set up automatically)
The automated setup will continue and the Raspberry Pi will restart at least twice during the process. This will take up to an hour.
To follow the logs during the automated building process login with `root` and press CTRL+C.
`tail -n1000 -f /tmp/DietPi-Update/dietpi-update.log` - follow the dietpi-update process
`tail -n1000 -f /var/tmp/dietpi/logs/dietpi-automation_custom_script.log` follow the output of the build_sdcard.sh
6) When the setup is finished log in as `admin`:
`ssh admin@[IP-OF-RASPIBLITZ]`
password: `raspiblitz`
The setup continues with the [RaspiBlitz Setup Process](https://github.com/rootzoll/raspiblitz/blob/master/README.md#setup-process-detailed-documentation)
---
### To build manually:
[Follow the generic DietPi install process.](https://github.com/rootzoll/raspiblitz/tree/dev/dietpi#general-guide-for-the-raspiblitz-on-dietpi)

262
dietpi/RaspiBlitz1.0_OdroidHC1_DietPi6.21.1.torrent

File diff suppressed because one or more lines are too long

15
dietpi/boot/Automation_Custom_Script.sh

@ -1 +1,14 @@
wget https://raw.githubusercontent.com/openoms/raspiblitz/raspiblitz-dev/build.sdcard/raspbianStretchDesktop.sh && sudo bash raspbianStretchDesktop.sh raspiblitz-dev openoms
# Use this format to build the SDcard with the Raspiblitz script:
# wget https://raw.githubusercontent.com/[GITHUB-USERNAME]/raspiblitz/[BRANCH]/build_sdcard.sh && sudo bash build_sdcard.sh [BRANCH] [GITHUB-USERNAME]`
# If you are working from a forked repo be aware of that the fork needs to be called `raspiblitz` for the git downloads to work.
# Uncomment the line with the branch you want to build the SDcard from:
# @rootzoll master branch:
# wget https://raw.githubusercontent.com/rootzoll/raspiblitz/master/build_sdcard.sh && sudo bash build_sdcard.sh
# @rootzoll dev branch:
wget https://raw.githubusercontent.com/rootzoll/raspiblitz/dev/build_sdcard.sh && sudo bash build_sdcard.sh dev
# @openoms DietPi branch:
# wget https://raw.githubusercontent.com/openoms/raspiblitz/DietPi/build_sdcard.sh && sudo bash build_sdcard.sh DietPi openoms

15
dietpi/boot/dietpi.txt

@ -68,21 +68,14 @@ AUTO_SETUP_GLOBAL_PASSWORD=dietpi
#AUTO_SETUP_INSTALL_SOFTWARE_ID=23 #will install Desktop LXDE
#AUTO_SETUP_INSTALL_SOFTWARE_ID=74 #will install LAMP webserver stack
#AUTO_SETUP_INSTALL_SOFTWARE_ID=44 #will install Bittorrent transmission
# install fail2ban
AUTO_SETUP_INSTALL_SOFTWARE_ID=73
# install OpenSSH Client
# AUTO_SETUP_INSTALL_SOFTWARE_ID=0
# install OpenSSH Server
# AUTO_SETUP_INSTALL_SOFTWARE_ID=105
AUTO_SETUP_INSTALL_SOFTWARE_ID=73 # install fail2ban
# DietPi-Software Choice System
# SSH Server Selection:
# 0=none
# -1=dropbear
# -2=opensshserver
AUTO_SETUP_SSH_SERVER_INDEX=-1
AUTO_SETUP_SSH_SERVER_INDEX=-2
# File Server Selection:
# 0=none/manual
@ -109,7 +102,7 @@ AUTO_SETUP_WEB_SERVER_INDEX=-2
# DietPi-Autostart | Requires AUTO_SETUP_AUTOMATED=1
# After installation is completed, which program should the system boot to?
# 0=Console 7=Console+auto root login | 1=Kodi 2=Desktops (LXDE/MATE etc) 5=DietPi-Cloudshell 6=Uae4ARM (Fastboot) 8=Uae4ARM (standard boot) 9=dxx-rebirth
AUTO_SETUP_AUTOSTART_TARGET_INDEX=0
AUTO_SETUP_AUTOSTART_TARGET_INDEX=7 # 7=Console+auto root login is changed to pi in build_sdcard.sh
# Language/Regional settings | Requires AUTO_SETUP_AUTOMATED=1
# Timezone eg: Europe/London America/New_York | Full list (TZ*): https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
@ -261,4 +254,4 @@ DEV_GITOWNER=Fourdee
#------------------------------------------------------------------------------------------------------
# D I E T - P I
# Settings, automatically added by dietpi-update
#------------------------------------------------------------------------------------------------------
#------------------------------------------------------------------------------------------------------

210
dietpi/dietpi.display.sh

@ -0,0 +1,210 @@
# To run this script on your RaspiBlitz, copy the following line to the ssh terminal (after the #):
# wget https://raw.githubusercontent.com/openoms/raspiblitz/DietPi/dietpi/dietpi.display.sh && sudo chmod +x dietpi.display.sh && ./dietpi.display.sh
# keep in mind that DietPi for Raspberry is also a stripped down Raspbian
echo "Detect Base Image ..."
baseImage="?"
isDietPi=$(uname -n | grep -c 'DietPi')
isRaspbian=$(cat /etc/os-release 2>/dev/null | grep -c 'Raspbian')
if [ ${isRaspbian} -gt 0 ]; then
baseImage="raspbian"
fi
if [ ${isDietPi} -gt 0 ]; then
baseImage="dietpi"
fi
if [ "${baseImage}" = "?" ]; then
cat /etc/os-release 2>/dev/null
echo "!!! FAIL !!!"
echo "Base Image cannot be detected or is not supported."
exit 1
else
echo "OK running ${baseImage}"
fi
if [ "${baseImage}" = "raspbian" ]; then
echo "Press ENTER to install LCD and reboot ..."
read key
# give Raspi a default hostname (optional)
sudo raspi-config nonint do_hostname "RaspiBlitz"
# *** Display selection ***
dialog --title "Display" --yesno "Are you using the default display available from Amazon?\nSelect 'No' if you are using the Swiss version from play-zone.ch!" 6 80
defaultDisplay=$?
if [ "${defaultDisplay}" = "0" ]; then
# *** RASPIBLITZ / LCD (at last - because makes a reboot) ***
# based on https://www.elegoo.com/tutorial/Elegoo%203.5%20inch%20Touch%20Screen%20User%20Manual%20V1.00.2017.10.09.zip
echo "--> LCD DEFAULT"
cd /home/admin/
sudo apt-mark hold raspberrypi-bootloader
git clone https://github.com/goodtft/LCD-show.git
sudo chmod -R 755 LCD-show
sudo chown -R admin:admin LCD-show
cd LCD-show/
sudo ./LCD35-show
else
# Download and install the driver
# based on http://www.raspberrypiwiki.com/index.php/3.5_inch_TFT_800x480@60fps
echo "--> LCD ALTERNATIVE"
cd /boot
sudo wget http://www.raspberrypiwiki.com/download/RPI-HD-35-INCH-TFT/dt-blob-For-3B-plus.bin
sudo mv dt-blob-For-3B-plus.bin dt-blob.bin
cat <<EOF >> config.txt
dtparam=spi=off
dtparam=i2c_arm=off
# Set screen size and any overscan required
overscan_left=0
overscan_right=0
overscan_top=0
overscan_bottom=0
framebuffer_width=800
framebuffer_height=480
enable_dpi_lcd=1
display_default_lcd=1
dpi_group=2
dpi_mode=87
dpi_output_format=0x6f015
# set up the size to 800x480
hdmi_timings=480 0 16 16 24 800 0 4 2 2 0 0 0 60 0 32000000 6
#rotate screen
display_rotate=3
dtoverlay=i2c-gpio,i2c_gpio_scl=24,i2c_gpio_sda=23
fi
EOF
init 6
fi
fi
if [ "${baseImage}" = "dietpi" ]; then
OPTIONS=(GPIO "Install the default display available from Amazon" \
HDMI "Install the 3.5\" HDMI display from Aliexpress" \
SWISS "Install the Swiss version from play-zone.ch"
)
CHOICE=$(dialog --backtitle "RaspiBlitz - Display Install" --clear --title "Display Install" --menu "Choose a your diplay:" 10 70 6 "${OPTIONS[@]}" 2>&1 >/dev/tty)
if [ "${CHOICE}" = "GPIO" ]; then
echo "Installing the default display available from Amazon"
# based on https://www.elegoo.com/tutorial/Elegoo%203.5%20inch%20Touch%20Screen%20User%20Manual%20V1.00.2017.10.09.zip
cd /home/admin/
#sudo apt-mark hold raspberrypi-bootloader
git clone https://github.com/goodtft/LCD-show.git
sudo chmod -R 755 LCD-show
sudo chown -R admin:admin LCD-show
cd LCD-show/
# sudo ./LCD35-show
sudo rm -rf /etc/X11/xorg.conf.d/40-libinput.conf
sudo mkdir /etc/X11/xorg.conf.d
sudo cp ./usr/tft35a-overlay.dtb /boot/overlays/
sudo cp ./usr/tft35a-overlay.dtb /boot/overlays/tft35a.dtbo
sudo cp -rf ./usr/99-calibration.conf-35 /etc/X11/xorg.conf.d/99-calibration.conf
sudo cp -rf ./usr/99-fbturbo.conf /usr/share/X11/xorg.conf.d/
sudo cp ./usr/cmdline.txt /DietPi/
sudo cp ./usr/inittab /etc/
sudo cp ./boot/config-35.txt /DietPi/config.txt
# revert font change
# based on https://www.raspberrypi-spy.co.uk/2014/04/how-to-change-the-command-line-font-size/
sudo sed -i 's/FONTFACE="TerminusBold"/FONTFACE="Fixed"/' /etc/default/console-setup
sudo sed -i 's/FONTSIZE="12x24"/FONTSIZE="8x16"/' /etc/default/console-setup
echo "***"
echo "reboot with \`sudo reboot\` to make the LCD work"
echo "***"
exit
elif [ "${CHOICE}" = "HDMI" ]; then
echo "Installing the 3.5\" HDMI display from Aliexpress"
# based on http://www.lcdwiki.com/3.5inch_HDMI_Display-B
git clone https://github.com/goodtft/LCD-show.git
sudo chmod -R 755 LCD-show
cd LCD-show/
#sudo ./MPI3508-show
sudo rm -rf /etc/X11/xorg.conf.d/40-libinput.conf
sudo cp -rf ./boot/config-35-480X320.txt /DietPi/config.txt
sudo cp ./usr/cmdline.txt /DietPi/
sudo cp ./usr/inittab /etc/
sudo cp -rf ./usr/99-fbturbo.conf-HDMI /usr/share/X11/xorg.conf.d/99-fbturbo.conf
sudo mkdir -p /etc/X11/xorg.conf.d
sudo cp -rf ./usr/99-calibration.conf-3508 /etc/X11/xorg.conf.d/99-calibration.conf
# based on https://www.raspberrypi-spy.co.uk/2014/04/how-to-change-the-command-line-font-size/
sudo sed -i 's/FONTFACE="Fixed"/FONTFACE="TerminusBold"/' /etc/default/console-setup
sudo sed -i 's/FONTSIZE="8x16"/FONTSIZE="12x24"/' /etc/default/console-setup
echo "***"
echo "reboot with \`sudo reboot\` to make the LCD work"
echo "***"
exit
elif [ "${CHOICE}" = "SWISS" ]; then
# Download and install the driver
# based on http://www.raspberrypiwiki.com/index.php/3.5_inch_TFT_800x480@60fps
echo "--> LCD ALTERNATIVE"
# revert font change
# based on https://www.raspberrypi-spy.co.uk/2014/04/how-to-change-the-command-line-font-size/
sudo sed -i 's/FONTFACE="TerminusBold"/FONTFACE="Fixed"/' /etc/default/console-setup
sudo sed -i 's/FONTSIZE="12x24"/FONTSIZE="8x16"/' /etc/default/console-setup
cd /DietPi
sudo wget http://www.raspberrypiwiki.com/download/RPI-HD-35-INCH-TFT/dt-blob-For-3B-plus.bin
sudo mv dt-blob-For-3B-plus.bin dt-blob.bin
cat <<EOF >> config.txt
dtparam=spi=off
dtparam=i2c_arm=off
# Set screen size and any overscan required
overscan_left=0
overscan_right=0
overscan_top=0
overscan_bottom=0
framebuffer_width=800
framebuffer_height=480
enable_dpi_lcd=1
display_default_lcd=1
dpi_group=2
dpi_mode=87
dpi_output_format=0x6f015
# set up the size to 800x480
hdmi_timings=480 0 16 16 24 800 0 4 2 2 0 0 0 60 0 32000000 6
#rotate screen
display_rotate=3
dtoverlay=i2c-gpio,i2c_gpio_scl=24,i2c_gpio_sda=23
fi
EOF
init 6
fi
else
echo "CANCEL"
exit
fi

61
dietpi/hw_comparison.md

@ -1,31 +1,3 @@
### ODROID-HC1
Key features
* Samsung Exynos5422 Cortex-A15 2Ghz and Cortex-A7 Octa core CPUs
* 2Gbyte LPDDR3 RAM PoP stacked
* SATA-3 port for 2.5inch HDD/SSD storage up to 15mm thickness
* Gigabit Ethernet port
* USB 2.0 Host
* UHS-1 capable micro-SD card slot for boot media
* Size : 147 x 85 x 29 mm approx.(including Aluminium cooling frame)
* Linux server OS images based on modern Kernel 4.14 LTS
### ROCK64 4K60P HDR Single Board Computer
ROCK64 is a credit card size 4K60P HDR Single Board Computer powered by
* Rockchip RK3328 Quad-Core ARM Cortex A53 64-Bit Processor and support up to
* 4GB 1600MHz LPDDR3 memory. It provides
* eMMC module socket,
* MicroSD Card slot,
* Pi-2 Bus,
* Pi-P5+ Bus, U
* SB 3.0 and many others peripheral devices interface for makers to integrate with sensors and devices. Various Operating System (OS) are made available by open source community such
* Android 7.1,
* Debian,
* BSD and many more to come.
The ROCK64 4GB board designated as LTS (long Term Supply) model, PINE64 committed to supply at least for 5 years until year 2022 and beyond.
### Raspberry Pi 3 Model B+
* Broadcom BCM2837B0, Cortex-A53 (ARMv8) 64-bit SoC @ 1.4GHz
@ -41,3 +13,36 @@ The ROCK64 4GB board designated as LTS (long Term Supply) model, PINE64 committe
* Micro SD port for loading your operating system and storing data
* 5V/2.5A DC power input
* Power-over-Ethernet (PoE) support (requires separate PoE HAT)
### Odroid HC1
* Samsung Exynos5422 Octa core CPU 4x Cortex-A15 2Ghz and 4x Cortex-A7 1.5GHz
* 2 Gbyte LPDDR3 RAM
* SATA-3 port for 2.5inch HDD/SSD storage up to 15mm thickness
* Gigabit Ethernet port
* USB 2.0 Host
* UHS-1 capable micro-SD card slot for boot media
* Size : 147 x 85 x 29 mm approx.(including Aluminium cooling frame)
* Linux server OS images based on modern Kernel 4.14 LTS
### Odroid XU4
* Samsung Exynos5422 Octa core CPU 4x Cortex-A15 2Ghz and 4x Cortex-A7 1.5GHz
* 2 Gbyte LPDDR3 RAM
* Graphics: Samsung S2MPS11
* Storage: eMMC5.0 HS400 Flash Storage or SD Card
* I/O Connectors: HDMI-A x 1, USB 3.0 Host x 2, USB 2.0 Host x 1, PWM for * Cooler Fan, UART for serial console 30Pin : GPIO/IRQ/SPI/ADC, 12Pin : GPIO/I2S/I2C
* Network Ethernet RJ-45
* Input Power 5V
### Rock64
ROCK64 is a credit card size 4K60P HDR Single Board Computer powered by
* Rockchip RK3328 Quad-Core ARM Cortex A53 64-Bit CPU
* 1 - 4GB 1600MHz LPDDR3 RAM
* eMMC module socket
* MicroSD Card slot
* Pi-2 Bus
* Pi-P5+ Bus

Loading…
Cancel
Save