raspberry-pi:rpi3
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| raspberry-pi:rpi3 [2023/04/29 14:35] – removed - external edit (Unknown date) 127.0.0.1 | raspberry-pi:rpi3 [2023/05/29 11:55] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== RPI3 download box ====== | ||
| + | |||
| + | ===== Image download ===== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | Direct image of RaspiOS Lite | ||
| + | https:// | ||
| + | |||
| + | RPI Imager on a debian based system: | ||
| + | < | ||
| + | sudo apt-get install qml-module-qtquick2 qml-module-qtquick-controls2 qml-module-qtquick-layouts qml-module-qtquick-templates2 qml-module-qtquick-window2 qml-module-qtgraphicaleffects libqt5quickcontrols2-5 libqt5quicktemplates2-5 | ||
| + | wget https:// | ||
| + | sudo dpkg -i imager_*_amd64.deb | ||
| + | </ | ||
| + | |||
| + | Flash Micro-SD card using Imager selecting ROS lite (without desktop and apps) OS, press Ctrl-Shift-X for advanced menu and configure ssh, passwords, hostname. | ||
| + | |||
| + | set static IP | ||
| + | < | ||
| + | sudo vi / | ||
| + | </ | ||
| + | < | ||
| + | interface eth0 | ||
| + | static ip_address=192.168.0.100/ | ||
| + | static routers=192.168.0.1 | ||
| + | static domain_name_servers=192.168.0.1 8.8.8.8 | ||
| + | |||
| + | interface wlan0 | ||
| + | static ip_address=192.168.0.100/ | ||
| + | static routers=192.168.0.1 | ||
| + | static domain_name_servers=192.168.0.1 8.8.8.8 | ||
| + | </ | ||
| + | |||
| + | if/when adjusting hostname in / | ||
| + | /etc/hosts with the new hostname as well: | ||
| + | < | ||
| + | 127.0.0.1 newhostname | ||
| + | </ | ||
| + | |||
| + | ===== Transmission ===== | ||
| + | |||
| + | < | ||
| + | sudo apt install transmission-daemon | ||
| + | </ | ||
| + | then https:// | ||
| + | |||
| + | ===== Prowlarr install: ===== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | < | ||
| + | cat >> ProwlarrInstall.sh << " | ||
| + | #!/bin/bash | ||
| + | ### Description: | ||
| + | ### Originally from the Radarr Community | ||
| + | |||
| + | set -euo pipefail | ||
| + | |||
| + | # Am I root?, need root! | ||
| + | if [ " | ||
| + | echo " | ||
| + | exit | ||
| + | fi | ||
| + | # Const | ||
| + | ### Update these variables as required for your specific instance | ||
| + | app=" | ||
| + | app_uid=" | ||
| + | app_guid=" | ||
| + | app_port=" | ||
| + | app_prereq=" | ||
| + | app_umask=" | ||
| + | app_bin=${app^} | ||
| + | installdir="/ | ||
| + | bindir=" | ||
| + | branch=" | ||
| + | datadir="/ | ||
| + | |||
| + | # Create User / Group as needed | ||
| + | if ! getent group " | ||
| + | groupadd " | ||
| + | echo "Group [$app_guid] created" | ||
| + | fi | ||
| + | if ! getent passwd " | ||
| + | useradd --system -g " | ||
| + | echo "User [$app_uid] created and added to Group [$app_guid]" | ||
| + | else | ||
| + | echo "User [$app_uid] already exists" | ||
| + | fi | ||
| + | |||
| + | if ! getent group " | ||
| + | echo "User [$app_uid] did not exist in Group [$app_guid]" | ||
| + | usermod -a -G " | ||
| + | echo "Added User [$app_uid] to Group [$app_guid]" | ||
| + | else | ||
| + | echo "User [$app_uid] already exists in Group [$app_guid]" | ||
| + | fi | ||
| + | |||
| + | # Stop the App if running | ||
| + | if service --status-all | grep -Fq " | ||
| + | systemctl stop $app | ||
| + | systemctl disable $app.service | ||
| + | fi | ||
| + | # Create Appdata Directory | ||
| + | # AppData | ||
| + | mkdir -p $datadir | ||
| + | chown -R $app_uid: | ||
| + | chmod 775 $datadir | ||
| + | # Download and install the App | ||
| + | # prerequisite packages | ||
| + | apt install $app_prereq | ||
| + | ARCH=$(dpkg --print-architecture) | ||
| + | # get arch | ||
| + | dlbase=" | ||
| + | case " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | *) | ||
| + | echo_error "Arch not supported" | ||
| + | exit 1 | ||
| + | ;; | ||
| + | esac | ||
| + | echo " | ||
| + | wget --content-disposition " | ||
| + | tar -xvzf ${app^}.*.tar.gz | ||
| + | echo " | ||
| + | # remove existing installs | ||
| + | echo " | ||
| + | rm -rf $bindir | ||
| + | echo " | ||
| + | mv " | ||
| + | chown $app_uid: | ||
| + | rm -rf " | ||
| + | # Ensure we check for an update in case user installs older version or different branch | ||
| + | touch $datadir/ | ||
| + | chown $app_uid: | ||
| + | echo "App Installed" | ||
| + | # Configure Autostart | ||
| + | # Remove any previous app .service | ||
| + | echo " | ||
| + | rm -rf / | ||
| + | # Create app .service with correct user startup | ||
| + | echo " | ||
| + | cat <<EOF | tee / | ||
| + | [Unit] | ||
| + | Description=${app^} Daemon | ||
| + | After=syslog.target network.target | ||
| + | [Service] | ||
| + | User=$app_uid | ||
| + | Group=$app_guid | ||
| + | UMask=$app_umask | ||
| + | Type=simple | ||
| + | ExecStart=$bindir/ | ||
| + | TimeoutStopSec=20 | ||
| + | KillMode=process | ||
| + | Restart=on-failure | ||
| + | [Install] | ||
| + | WantedBy=multi-user.target | ||
| + | EOF | ||
| + | # Start the App | ||
| + | echo " | ||
| + | systemctl -q daemon-reload | ||
| + | systemctl enable --now -q " | ||
| + | # Finish Update/ | ||
| + | host=$(hostname -I) | ||
| + | ip_local=$(grep -oP ' | ||
| + | echo "" | ||
| + | echo " | ||
| + | echo " | ||
| + | # Exit | ||
| + | exit 0 | ||
| + | _EOF_ | ||
| + | |||
| + | chmod 755 ProwlarrInstall.sh | ||
| + | sudo ./ | ||
| + | |||
| + | </ | ||
| + | |||
| + | Browse to http:// | ||
| + | |||
| + | Prowlarr fetches updated index definitions automatically. However, custom definitions can be added. | ||
| + | Create Custom directory in either ~/ | ||
| + | Any custom yml files go in this directly and need to have appropriate permissions and ownership for the prowlarr user to read them. | ||
| + | Prowlarr caches the definitions, | ||
| + | https:// | ||
| + | ===== Sonarr install: ===== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | On RPI3, disable h265.x265, | ||
| + | settings -> profiles -> under release profiles click + , give it a name (no HEVC/265) and add under "must not contain" | ||
| + | |||
| + | To exclude 4k/raw content, go to settings -> profiles and edit the Any profile, remove all -2160p, Remux, Raw-HD and unknown entries. | ||
| + | |||
| + | ===== Radarr install: ===== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | On RPI3, disable h265.x265, | ||
| + | settings -> indexers -> under restrictions profiles click + , add under "must not contain" | ||
| + | |||
| + | To exclude 4k/raw and low quality content, go to settings -> profiles and edit the Any profile, remove all -2160p, Remux, Raw-HD and BR-Disk entries as well as Telecine, Telesync, Cam, Workprint and unknown. | ||
| + | |||
| + | ===== Kodi on RPI: ===== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | Kodi on the Raspberry Pi 0/1/2/3 will only function if you are using the Broadcom drivers! This is the " | ||
| + | |||
| + | Kodi on Raspbian requires a minimum of 160 MB of RAM dedicated to the GPU to function properly! This can be done by running " | ||
| + | If you have a RPi 2/3, the recommended is 256 MB of RAM for the GPU. | ||
| + | |||
| + | -Kodi 18 on the Raspberry Pi 2/3 supports 10bit video files (at least h264 and h265/HEVC) but they are software decoded. The Pi 3B / 3B+ may do 720p 10bit and 1080p 10bit low bitrate only at max! For that you need at least 300MB of RAM for the GPU. | ||
| + | |||
| + | |||
| + | Raspbian by default, doesn' | ||
| + | or just add a new line in / | ||
| + | < | ||
| + | start_x=1 | ||
| + | </ | ||
| + | |||
| + | on RPI3 add to/enable in / | ||
| + | < | ||
| + | [all] | ||
| + | dtoverlay=vc4-kms-v3d | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | sudo tee -a / | ||
| + | [Unit] | ||
| + | Description = Kodi Media Center | ||
| + | After = remote-fs.target network-online.target | ||
| + | Wants = network-online.target | ||
| + | |||
| + | [Service] | ||
| + | User = pi | ||
| + | Group = pi | ||
| + | Type = simple | ||
| + | ExecStart = / | ||
| + | Restart = on-abort | ||
| + | RestartSec = 5 | ||
| + | |||
| + | [Install] | ||
| + | WantedBy = multi-user.target | ||
| + | _EOF_ | ||
| + | </ | ||
| + | |||
| + | In Kodi enable remote control with user/ | ||
| + | Transmission default login user/ | ||
| + | |||
| + | ===== URLs/Ports: ===== | ||
| + | |||
| + | |||
| + | http:// | ||
| + | http:// | ||
| + | http:// | ||
| + | http:// | ||
| + | http:// | ||
| + | |||