| 
									
										
										
										
											2023-03-22 20:48:20 -04:00
										 |  |  | #!/usr/bin/env bash
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-01-01 12:13:05 -05:00
										 |  |  | # Copyright (c) 2021-2024 tteck | 
					
						
							| 
									
										
										
										
											2023-03-22 20:48:20 -04:00
										 |  |  | # Author: tteck (tteckster) | 
					
						
							|  |  |  | # License: MIT | 
					
						
							|  |  |  | # https://github.com/tteck/Proxmox/raw/main/LICENSE | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | source /dev/stdin <<< "$FUNCTIONS_FILE_PATH" | 
					
						
							|  |  |  | color | 
					
						
							|  |  |  | verb_ip6 | 
					
						
							|  |  |  | catch_errors | 
					
						
							|  |  |  | setting_up_container | 
					
						
							|  |  |  | network_check | 
					
						
							|  |  |  | update_os | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | msg_info "Installing Dependencies" | 
					
						
							|  |  |  | $STD apt-get install -y curl | 
					
						
							|  |  |  | $STD apt-get install -y sudo | 
					
						
							|  |  |  | $STD apt-get install -y mc | 
					
						
							| 
									
										
										
										
											2024-02-09 10:23:52 -05:00
										 |  |  | $STD apt-get install -y handbrake-cli | 
					
						
							| 
									
										
										
										
											2023-03-22 20:48:20 -04:00
										 |  |  | msg_ok "Installed Dependencies" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-04-30 05:48:46 -04:00
										 |  |  | msg_info "Setting Up Hardware Acceleration" | 
					
						
							|  |  |  | $STD apt-get -y install {va-driver-all,ocl-icd-libopencl1,intel-opencl-icd,vainfo,intel-gpu-tools} | 
					
						
							| 
									
										
										
										
											2023-05-14 11:44:18 -04:00
										 |  |  | if [[ "$CTTYPE" == "0" ]]; then | 
					
						
							| 
									
										
										
										
											2023-12-03 14:40:39 -05:00
										 |  |  |   chgrp video /dev/dri | 
					
						
							|  |  |  |   chmod 755 /dev/dri | 
					
						
							|  |  |  |   chmod 660 /dev/dri/* | 
					
						
							|  |  |  |   $STD adduser $(id -u -n) video | 
					
						
							|  |  |  |   $STD adduser $(id -u -n) render | 
					
						
							| 
									
										
										
										
											2023-05-14 11:44:18 -04:00
										 |  |  | fi | 
					
						
							| 
									
										
										
										
											2024-04-30 05:48:46 -04:00
										 |  |  | msg_ok "Set Up Hardware Acceleration" | 
					
						
							| 
									
										
										
										
											2023-05-14 11:44:18 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-03-22 20:48:20 -04:00
										 |  |  | msg_info "Installing Tdarr" | 
					
						
							|  |  |  | mkdir -p /opt/tdarr | 
					
						
							|  |  |  | cd /opt/tdarr | 
					
						
							| 
									
										
										
										
											2024-03-29 15:00:38 -04:00
										 |  |  | RELEASE=$(curl -s https://f000.backblazeb2.com/file/tdarrs/versions.json | grep -oP '(?<="Tdarr_Updater": ")[^"]+' | grep linux_x64 | head -n 1) | 
					
						
							|  |  |  | wget -q $RELEASE | 
					
						
							| 
									
										
										
										
											2023-03-22 20:48:20 -04:00
										 |  |  | $STD unzip Tdarr_Updater.zip | 
					
						
							| 
									
										
										
										
											2023-04-13 12:42:31 -04:00
										 |  |  | rm -rf Tdarr_Updater.zip | 
					
						
							| 
									
										
										
										
											2023-03-22 20:48:20 -04:00
										 |  |  | chmod +x Tdarr_Updater | 
					
						
							| 
									
										
										
										
											2023-04-13 12:42:31 -04:00
										 |  |  | ./Tdarr_Updater &>/dev/null | 
					
						
							| 
									
										
										
										
											2024-04-30 05:48:46 -04:00
										 |  |  | if [[ "$CTTYPE" == "0" ]]; then | 
					
						
							|  |  |  |   sed -i -e 's/^sgx:x:104:$/render:x:104:root/' -e 's/^render:x:106:root$/sgx:x:106:/' /etc/group | 
					
						
							|  |  |  | else | 
					
						
							|  |  |  |   sed -i -e 's/^sgx:x:104:$/render:x:104:/' -e 's/^render:x:106:$/sgx:x:106:/' /etc/group | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-03-22 20:48:20 -04:00
										 |  |  | msg_ok "Installed Tdarr" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | msg_info "Creating Service" | 
					
						
							|  |  |  | service_path="/etc/systemd/system/tdarr-server.service" | 
					
						
							|  |  |  | echo "[Unit]
 | 
					
						
							|  |  |  | Description=Tdarr Server Daemon | 
					
						
							|  |  |  | After=network.target | 
					
						
							|  |  |  | # Enable if using ZFS, edit and enable if other FS mounting is required to access directory | 
					
						
							|  |  |  | #Requires=zfs-mount.service | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [Service] | 
					
						
							|  |  |  | User=root | 
					
						
							|  |  |  | Group=root | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Type=simple | 
					
						
							|  |  |  | WorkingDirectory=/opt/tdarr/Tdarr_Server | 
					
						
							|  |  |  | ExecStartPre=/opt/tdarr/Tdarr_Updater                   | 
					
						
							|  |  |  | ExecStart=/opt/tdarr/Tdarr_Server/Tdarr_Server | 
					
						
							|  |  |  | TimeoutStopSec=20 | 
					
						
							|  |  |  | KillMode=process | 
					
						
							|  |  |  | Restart=on-failure | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [Install] | 
					
						
							|  |  |  | WantedBy=multi-user.target" >$service_path
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | service_path="/etc/systemd/system/tdarr-node.service" | 
					
						
							|  |  |  | echo "[Unit]
 | 
					
						
							|  |  |  | Description=Tdarr Node Daemon | 
					
						
							|  |  |  | After=network.target | 
					
						
							|  |  |  | Requires=tdarr-server.service | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [Service] | 
					
						
							|  |  |  | User=root | 
					
						
							|  |  |  | Group=root | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Type=simple | 
					
						
							|  |  |  | WorkingDirectory=/opt/tdarr/Tdarr_Node | 
					
						
							|  |  |  | ExecStart=/opt/tdarr/Tdarr_Node/Tdarr_Node | 
					
						
							|  |  |  | TimeoutStopSec=20 | 
					
						
							|  |  |  | KillMode=process | 
					
						
							|  |  |  | Restart=on-failure | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [Install] | 
					
						
							|  |  |  | WantedBy=multi-user.target" >$service_path
 | 
					
						
							|  |  |  | systemctl enable --now -q tdarr-server.service | 
					
						
							|  |  |  | systemctl enable --now -q tdarr-node.service | 
					
						
							|  |  |  | msg_ok "Created Service" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | motd_ssh | 
					
						
							| 
									
										
										
										
											2023-05-15 07:39:30 -04:00
										 |  |  | customize | 
					
						
							| 
									
										
										
										
											2023-03-22 20:48:20 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  | msg_info "Cleaning up" | 
					
						
							|  |  |  | rm -rf Tdarr_Updater.zip | 
					
						
							| 
									
										
										
										
											2024-06-02 08:00:22 -04:00
										 |  |  | $STD apt-get -y autoremove | 
					
						
							|  |  |  | $STD apt-get -y autoclean | 
					
						
							| 
									
										
										
										
											2023-03-22 20:48:20 -04:00
										 |  |  | msg_ok "Cleaned" |