| 
									
										
										
										
											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-05-30 21:09:11 -04:00
										 |  |  | $STD apt-get install -y gpg | 
					
						
							| 
									
										
										
										
											2023-03-22 20:48:20 -04:00
										 |  |  | msg_ok "Installed Dependencies" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-05-30 21:05:15 -04:00
										 |  |  | msg_info "Setting up Node.js Repository" | 
					
						
							|  |  |  | mkdir -p /etc/apt/keyrings | 
					
						
							|  |  |  | curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg | 
					
						
							|  |  |  | echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_20.x nodistro main" >/etc/apt/sources.list.d/nodesource.list | 
					
						
							|  |  |  | msg_ok "Set up Node.js Repository" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | msg_info "Installing Node.js" | 
					
						
							|  |  |  | $STD apt-get update | 
					
						
							|  |  |  | $STD apt-get install -y nodejs | 
					
						
							| 
									
										
										
										
											2023-03-22 20:48:20 -04:00
										 |  |  | msg_ok "Installed Node.js" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-04-21 23:13:45 -04:00
										 |  |  | RELEASE=$(curl -s https://api.github.com/repos/Lissy93/dashy/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }') | 
					
						
							|  |  |  | msg_info "Installing Dashy ${RELEASE} (Patience)" | 
					
						
							| 
									
										
										
										
											2024-03-06 18:45:37 -05:00
										 |  |  | mkdir -p /opt/dashy | 
					
						
							| 
									
										
										
										
											2024-04-21 23:13:45 -04:00
										 |  |  | wget -qO- https://github.com/Lissy93/dashy/archive/refs/tags/${RELEASE}.tar.gz | tar -xz -C /opt/dashy --strip-components=1 | 
					
						
							| 
									
										
										
										
											2024-03-06 18:45:37 -05:00
										 |  |  | cd /opt/dashy | 
					
						
							| 
									
										
										
										
											2024-05-30 22:04:10 -04:00
										 |  |  | $STD npm install | 
					
						
							|  |  |  | $STD npm run build | 
					
						
							| 
									
										
										
										
											2024-04-21 23:13:45 -04:00
										 |  |  | echo "${RELEASE}" >/opt/${APPLICATION}_version.txt | 
					
						
							|  |  |  | msg_ok "Installed Dashy ${RELEASE}" | 
					
						
							| 
									
										
										
										
											2023-03-22 20:48:20 -04:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-09-03 11:29:50 -04:00
										 |  |  | msg_info "Creating Service" | 
					
						
							| 
									
										
										
										
											2023-03-22 20:48:20 -04:00
										 |  |  | cat <<EOF >/etc/systemd/system/dashy.service | 
					
						
							|  |  |  | [Unit] | 
					
						
							|  |  |  | Description=dashy | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | [Service] | 
					
						
							|  |  |  | Type=simple | 
					
						
							| 
									
										
										
										
											2024-03-06 18:45:37 -05:00
										 |  |  | WorkingDirectory=/opt/dashy | 
					
						
							| 
									
										
										
										
											2024-05-30 22:22:30 -04:00
										 |  |  | ExecStart=/usr/bin/npm start | 
					
						
							| 
									
										
										
										
											2023-08-07 14:52:42 +02:00
										 |  |  | [Install] | 
					
						
							|  |  |  | WantedBy=multi-user.target | 
					
						
							|  |  |  | EOF | 
					
						
							| 
									
										
										
										
											2023-08-07 08:56:46 -04:00
										 |  |  | systemctl -q --now enable dashy | 
					
						
							| 
									
										
										
										
											2023-09-03 11:29:50 -04:00
										 |  |  | msg_ok "Created Service" | 
					
						
							| 
									
										
										
										
											2023-03-22 20:48:20 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  | motd_ssh | 
					
						
							| 
									
										
										
										
											2023-05-15 07:39:30 -04:00
										 |  |  | customize | 
					
						
							| 
									
										
										
										
											2023-03-22 20:48:20 -04:00
										 |  |  | 
 | 
					
						
							|  |  |  | msg_info "Cleaning up" | 
					
						
							| 
									
										
										
										
											2024-05-02 13:26:16 -04:00
										 |  |  | $STD apt-get -y autoremove | 
					
						
							|  |  |  | $STD apt-get -y autoclean | 
					
						
							| 
									
										
										
										
											2023-03-22 20:48:20 -04:00
										 |  |  | msg_ok "Cleaned" |