mirror of
				https://github.com/community-scripts/ProxmoxVE.git
				synced 2025-11-04 10:22:50 +00:00 
			
		
		
		
	Compare commits
	
		
			298 Commits
		
	
	
		
			2024-11-24
			...
			2024-12-30
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					13175efbd8 | ||
| 
						 | 
					4a8239b2ce | ||
| 
						 | 
					e319355859 | ||
| 
						 | 
					21d857e7ad | ||
| 
						 | 
					df3919b904 | ||
| 
						 | 
					96f30bf51f | ||
| 
						 | 
					2832a1e2c4 | ||
| 
						 | 
					415f99e3eb | ||
| 
						 | 
					aa7e8e0810 | ||
| 
						 | 
					8717a0fcf1 | ||
| 
						 | 
					30bc16072e | ||
| 
						 | 
					464fa283ad | ||
| 
						 | 
					024480d0a4 | ||
| 
						 | 
					c754f4e243 | ||
| 
						 | 
					152eb6b2bb | ||
| 
						 | 
					3424e9a86e | ||
| 
						 | 
					13a52878ab | ||
| 
						 | 
					5f39bb66a5 | ||
| 
						 | 
					773b2fcc79 | ||
| 
						 | 
					938f0f76fa | ||
| 
						 | 
					611a14b55f | ||
| 
						 | 
					304db812a8 | ||
| 
						 | 
					678206768c | ||
| 
						 | 
					92d2e421ee | ||
| 
						 | 
					fe3ff916b6 | ||
| 
						 | 
					d4c95779bf | ||
| 
						 | 
					8c0794c2bb | ||
| 
						 | 
					cdb121a55f | ||
| 
						 | 
					b22d66da1b | ||
| 
						 | 
					87ff677ed7 | ||
| 
						 | 
					d3eaf6eaf5 | ||
| 
						 | 
					26e4017d76 | ||
| 
						 | 
					406bb57d74 | ||
| 
						 | 
					f97e932205 | ||
| 
						 | 
					395d1086ea | ||
| 
						 | 
					517b19a62b | ||
| 
						 | 
					ab292927e6 | ||
| 
						 | 
					6bae0d71ea | ||
| 
						 | 
					1378e9a2e9 | ||
| 
						 | 
					71d21f3bfe | ||
| 
						 | 
					12f087932f | ||
| 
						 | 
					8d96c5135d | ||
| 
						 | 
					0c31f43789 | ||
| 
						 | 
					943e6967f4 | ||
| 
						 | 
					e253fe6cee | ||
| 
						 | 
					4b0fff5a88 | ||
| 
						 | 
					ff3d2026a5 | ||
| 
						 | 
					1b57be94fd | ||
| 
						 | 
					b1dc0bc20f | ||
| 
						 | 
					8f243c74ff | ||
| 
						 | 
					b30e8c534f | ||
| 
						 | 
					9b07fe4178 | ||
| 
						 | 
					be66aefd9a | ||
| 
						 | 
					7aca36a3f0 | ||
| 
						 | 
					cf8dd2bfac | ||
| 
						 | 
					ee62a56cb9 | ||
| 
						 | 
					b8885e8d6c | ||
| 
						 | 
					55e02d8bdd | ||
| 
						 | 
					72df7e432d | ||
| 
						 | 
					0f2e49fbeb | ||
| 
						 | 
					d71bf7bcdf | ||
| 
						 | 
					4ed5bf0c12 | ||
| 
						 | 
					6debf20d19 | ||
| 
						 | 
					88120fcbcc | ||
| 
						 | 
					b65d55282f | ||
| 
						 | 
					ae67ee8768 | ||
| 
						 | 
					9523491c0a | ||
| 
						 | 
					b0a523aac3 | ||
| 
						 | 
					67a0c06b80 | ||
| 
						 | 
					1c4c3b71e3 | ||
| 
						 | 
					e98d96a232 | ||
| 
						 | 
					48e86b063b | ||
| 
						 | 
					53fcbb46be | ||
| 
						 | 
					5e22f990d2 | ||
| 
						 | 
					d74ad31e72 | ||
| 
						 | 
					8c989eee8e | ||
| 
						 | 
					326f706672 | ||
| 
						 | 
					e715adf3ba | ||
| 
						 | 
					57b881db45 | ||
| 
						 | 
					f40c606808 | ||
| 
						 | 
					4c042c180f | ||
| 
						 | 
					abb0e0f96d | ||
| 
						 | 
					8e1644ab6e | ||
| 
						 | 
					2892762a80 | ||
| 
						 | 
					45c1a73eda | ||
| 
						 | 
					6efc6504d4 | ||
| 
						 | 
					af30823bef | ||
| 
						 | 
					d283d0a1cb | ||
| 
						 | 
					5214c3d531 | ||
| 
						 | 
					7f86418cf5 | ||
| 
						 | 
					949ec3d181 | ||
| 
						 | 
					9379ac4032 | ||
| 
						 | 
					2326e11699 | ||
| 
						 | 
					94b51fefeb | ||
| 
						 | 
					6487885f4b | ||
| 
						 | 
					700902ba2e | ||
| 
						 | 
					23d7587f04 | ||
| 
						 | 
					4c04a33a29 | ||
| 
						 | 
					9da79b9a97 | ||
| 
						 | 
					785d745b22 | ||
| 
						 | 
					a5d6023da8 | ||
| 
						 | 
					773e3ba983 | ||
| 
						 | 
					ba76b4fe37 | ||
| 
						 | 
					08f6042f65 | ||
| 
						 | 
					25049290b0 | ||
| 
						 | 
					94d81fdf5c | ||
| 
						 | 
					c0ac8a7fab | ||
| 
						 | 
					bda30403da | ||
| 
						 | 
					6f96aebc27 | ||
| 
						 | 
					a9a640bb75 | ||
| 
						 | 
					056d8902fb | ||
| 
						 | 
					fe3faccc42 | ||
| 
						 | 
					9236f97009 | ||
| 
						 | 
					17eaedf335 | ||
| 
						 | 
					d0f2c71038 | ||
| 
						 | 
					22c0757b4d | ||
| 
						 | 
					cd374c296f | ||
| 
						 | 
					07508d10d0 | ||
| 
						 | 
					29dcf19c04 | ||
| 
						 | 
					3e60e43d05 | ||
| 
						 | 
					f199366867 | ||
| 
						 | 
					9efb421b5c | ||
| 
						 | 
					d65d64e59e | ||
| 
						 | 
					47307be181 | ||
| 
						 | 
					a6f3771214 | ||
| 
						 | 
					7261affcc2 | ||
| 
						 | 
					c60b16229b | ||
| 
						 | 
					b18b49ef6f | ||
| 
						 | 
					870313cc58 | ||
| 
						 | 
					e9c0ca8579 | ||
| 
						 | 
					73d5794086 | ||
| 
						 | 
					a46e66fd9a | ||
| 
						 | 
					79d597297c | ||
| 
						 | 
					f511d88502 | ||
| 
						 | 
					fad540cf4c | ||
| 
						 | 
					9256880c9f | ||
| 
						 | 
					5b38448107 | ||
| 
						 | 
					db1950a2bb | ||
| 
						 | 
					f449ca707a | ||
| 
						 | 
					e410bdbf5e | ||
| 
						 | 
					7357c1c146 | ||
| 
						 | 
					9fc81e49e4 | ||
| 
						 | 
					826482897a | ||
| 
						 | 
					6f2e0dfde9 | ||
| 
						 | 
					49d8ed135c | ||
| 
						 | 
					357f5bcdb6 | ||
| 
						 | 
					a00f7af0d2 | ||
| 
						 | 
					284238d109 | ||
| 
						 | 
					b547530643 | ||
| 
						 | 
					b78a919b41 | ||
| 
						 | 
					353a5e7c99 | ||
| 
						 | 
					afd57cafc6 | ||
| 
						 | 
					71cc0a0fd4 | ||
| 
						 | 
					f2a1cc7eef | ||
| 
						 | 
					315949b446 | ||
| 
						 | 
					bcc6342f83 | ||
| 
						 | 
					ca902c50fb | ||
| 
						 | 
					69fe688418 | ||
| 
						 | 
					2d9fcbb635 | ||
| 
						 | 
					0573adc83c | ||
| 
						 | 
					c0cf76f0d5 | ||
| 
						 | 
					77d2df5a0f | ||
| 
						 | 
					82ba836743 | ||
| 
						 | 
					8c1b48453c | ||
| 
						 | 
					ae0684b696 | ||
| 
						 | 
					aab63c8db2 | ||
| 
						 | 
					e7ac005592 | ||
| 
						 | 
					6fb6c58454 | ||
| 
						 | 
					0d63e66379 | ||
| 
						 | 
					cfb755a862 | ||
| 
						 | 
					4a60a29f1d | ||
| 
						 | 
					ec27945abd | ||
| 
						 | 
					d6ead654ad | ||
| 
						 | 
					4f66476de5 | ||
| 
						 | 
					e4354c1d53 | ||
| 
						 | 
					8a6ea7cbac | ||
| 
						 | 
					96d691c862 | ||
| 
						 | 
					82ee63a6db | ||
| 
						 | 
					102669cd11 | ||
| 
						 | 
					ae120c1e23 | ||
| 
						 | 
					c056dd97ea | ||
| 
						 | 
					5b2cbd3e99 | ||
| 
						 | 
					cadae9796e | ||
| 
						 | 
					9eb5cc022a | ||
| 
						 | 
					52898b4edf | ||
| 
						 | 
					e45aba86bd | ||
| 
						 | 
					be4e6503d7 | ||
| 
						 | 
					59deaa0a19 | ||
| 
						 | 
					a4803d178d | ||
| 
						 | 
					259203ee51 | ||
| 
						 | 
					944328625a | ||
| 
						 | 
					3d38ad0288 | ||
| 
						 | 
					c46f15cdc1 | ||
| 
						 | 
					e2aa5fe627 | ||
| 
						 | 
					493c2c931c | ||
| 
						 | 
					ce545bd499 | ||
| 
						 | 
					0ba2ea9183 | ||
| 
						 | 
					cff3fa8696 | ||
| 
						 | 
					871fd6517d | ||
| 
						 | 
					3a876c99ef | ||
| 
						 | 
					5c3fe0e802 | ||
| 
						 | 
					3ec3478b2d | ||
| 
						 | 
					67524454d7 | ||
| 
						 | 
					ec27e92833 | ||
| 
						 | 
					fa20526525 | ||
| 
						 | 
					4f5712097b | ||
| 
						 | 
					3c388ef157 | ||
| 
						 | 
					df99c30ab3 | ||
| 
						 | 
					6d307f07a9 | ||
| 
						 | 
					0d472640ff | ||
| 
						 | 
					54dd0ba420 | ||
| 
						 | 
					47ecc7a006 | ||
| 
						 | 
					4bb5741707 | ||
| 
						 | 
					d6ff28abf5 | ||
| 
						 | 
					c188b54398 | ||
| 
						 | 
					b8e2de30a5 | ||
| 
						 | 
					f710b541e4 | ||
| 
						 | 
					9c722be967 | ||
| 
						 | 
					b9f889c6c3 | ||
| 
						 | 
					baa29fb096 | ||
| 
						 | 
					e74f6f8efe | ||
| 
						 | 
					9c8223d64e | ||
| 
						 | 
					336ea19b39 | ||
| 
						 | 
					1ca99781ff | ||
| 
						 | 
					342e145273 | ||
| 
						 | 
					85b80393bd | ||
| 
						 | 
					53807c9633 | ||
| 
						 | 
					8301204cc0 | ||
| 
						 | 
					70952b3db3 | ||
| 
						 | 
					e9506e3c0c | ||
| 
						 | 
					869ddc0d5e | ||
| 
						 | 
					11d1f0f981 | ||
| 
						 | 
					c75148ec51 | ||
| 
						 | 
					8c7b72e71b | ||
| 
						 | 
					3f1cde865e | ||
| 
						 | 
					ddc867ea4e | ||
| 
						 | 
					78948b08cf | ||
| 
						 | 
					f0936500d3 | ||
| 
						 | 
					fe4b8fed8a | ||
| 
						 | 
					ec273ba221 | ||
| 
						 | 
					d5d5a3d3a3 | ||
| 
						 | 
					617b42dd8e | ||
| 
						 | 
					274867dc11 | ||
| 
						 | 
					17e5d69052 | ||
| 
						 | 
					c9148547ef | ||
| 
						 | 
					942ad74b73 | ||
| 
						 | 
					6fb5512878 | ||
| 
						 | 
					b191579f11 | ||
| 
						 | 
					bc10a3fa17 | ||
| 
						 | 
					dc49ad1133 | ||
| 
						 | 
					b15a59315e | ||
| 
						 | 
					b9fe3855b0 | ||
| 
						 | 
					74b4b5150c | ||
| 
						 | 
					689122b14a | ||
| 
						 | 
					2fbd5f5068 | ||
| 
						 | 
					40c70192af | ||
| 
						 | 
					5f3985cd0a | ||
| 
						 | 
					8901aa4d7f | ||
| 
						 | 
					862b72ab39 | ||
| 
						 | 
					b328eedc75 | ||
| 
						 | 
					543142ebf1 | ||
| 
						 | 
					e30c413ea5 | ||
| 
						 | 
					d7102d1233 | ||
| 
						 | 
					f7087e57f9 | ||
| 
						 | 
					b17ede296c | ||
| 
						 | 
					ae49d1d8d7 | ||
| 
						 | 
					03be08be63 | ||
| 
						 | 
					000f206d90 | ||
| 
						 | 
					e9ebfffb57 | ||
| 
						 | 
					11147e4482 | ||
| 
						 | 
					e786b09199 | ||
| 
						 | 
					0afeac4266 | ||
| 
						 | 
					1558b0d875 | ||
| 
						 | 
					1cb822b34c | ||
| 
						 | 
					24cfb32c3d | ||
| 
						 | 
					2599bff463 | ||
| 
						 | 
					e40de17874 | ||
| 
						 | 
					e8719df21b | ||
| 
						 | 
					257bccad6c | ||
| 
						 | 
					4e66916ebc | ||
| 
						 | 
					1be91e9fad | ||
| 
						 | 
					c098031a5a | ||
| 
						 | 
					928a5cb9e5 | ||
| 
						 | 
					9d72b5872a | ||
| 
						 | 
					60b9103a34 | ||
| 
						 | 
					a2ae582992 | ||
| 
						 | 
					853c727167 | ||
| 
						 | 
					9795d41d39 | ||
| 
						 | 
					a4dd7f5449 | ||
| 
						 | 
					a61c42ea4d | ||
| 
						 | 
					99b130d186 | ||
| 
						 | 
					df1c1ea873 | ||
| 
						 | 
					f6047ee9fb | ||
| 
						 | 
					ca819064f7 | ||
| 
						 | 
					e5d39ab555 | ||
| 
						 | 
					2e3d5f8b0c | ||
| 
						 | 
					0864afbbf3 | ||
| 
						 | 
					0cb071ce11 | 
							
								
								
									
										16
									
								
								.editorconfig
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										16
									
								
								.editorconfig
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,16 @@
 | 
			
		||||
; editorconfig.org
 | 
			
		||||
root = true
 | 
			
		||||
 | 
			
		||||
[*]
 | 
			
		||||
charset                     = utf-8
 | 
			
		||||
continuation_indent_size    = 2
 | 
			
		||||
end_of_line                 = lf
 | 
			
		||||
indent_size                 = 2
 | 
			
		||||
indent_style                = space
 | 
			
		||||
insert_final_newline        = true
 | 
			
		||||
max_line_length             = 120
 | 
			
		||||
tab_width                   = 2
 | 
			
		||||
; trim_trailing_whitespace    = true ; disabled until files are cleaned up
 | 
			
		||||
 | 
			
		||||
[*.md]
 | 
			
		||||
trim_trailing_whitespace    = false
 | 
			
		||||
							
								
								
									
										71
									
								
								.github/ISSUE_TEMPLATE/bug_report.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										71
									
								
								.github/ISSUE_TEMPLATE/bug_report.yml
									
									
									
									
										vendored
									
									
								
							@@ -5,44 +5,64 @@ body:
 | 
			
		||||
  - type: markdown
 | 
			
		||||
    attributes:
 | 
			
		||||
      value: |
 | 
			
		||||
        **IMPORTANT:** Failure to comply with the following guidelines may result in immediate closure.
 | 
			
		||||
        - Prior to submitting, kindly search the closed issues to check if the problem you are reporting has already been addressed and resolved. If you come across a closed issue that pertains to your problem, please leave a comment on that issue instead of creating a new one.
 | 
			
		||||
        - If the default Linux distribution is not adhered to, script support will be discontinued.
 | 
			
		||||
        - When encountering the error message `[ERROR] in line 23: exit code *: while executing command "$@" > /dev/null 2>&1`, make sure to run the script in verbose mode to accurately determine the underlying issue.
 | 
			
		||||
        - For suggestions, questions, or feature/script requests, please use the [Discussions section.](https://github.com/community-scripts/ProxmoxVE/discussions)
 | 
			
		||||
        # 🐞 **Script Issue Report**
 | 
			
		||||
        Thank you for taking the time to report an issue! Please provide as much detail as possible to help us address the problem efficiently.  
 | 
			
		||||
 | 
			
		||||
        ## ⚠️ **IMPORTANT**  
 | 
			
		||||
        - 🔍 **Search first:** Before submitting, check if the issue has already been reported or resolved in [closed issues](https://github.com/community-scripts/ProxmoxVE/issues?q=is%3Aissue+is%3Aclosed). If found, comment on that issue instead of creating a new one.  
 | 
			
		||||
        Alternatively, check the **[Discussions](https://github.com/community-scripts/ProxmoxVE/discussions)** under the *"Announcement"* or *"Guide"* categories for relevant information.  
 | 
			
		||||
        - 🛠️ **Supported environments only:** Ensure you are using a default Linux distribution. Custom setups may not be supported.  
 | 
			
		||||
        - 🔎 If you encounter `[ERROR] in line 23: exit code *: while executing command "$@" > /dev/null 2>&1`, rerun the script with verbose mode before submitting the issue.  
 | 
			
		||||
        - 💡 For general questions, feature requests, or suggestions, use the [Discussions section](https://github.com/community-scripts/ProxmoxVE/discussions).  
 | 
			
		||||
 | 
			
		||||
  - type: input
 | 
			
		||||
    id: guidelines
 | 
			
		||||
    attributes:
 | 
			
		||||
      label: Please verify that you have read and understood the guidelines.
 | 
			
		||||
      label: ✅ Have you read and understood the above guidelines?
 | 
			
		||||
      placeholder: "yes"
 | 
			
		||||
    validations:
 | 
			
		||||
      required: true
 | 
			
		||||
 | 
			
		||||
  - type: textarea
 | 
			
		||||
    id: bug
 | 
			
		||||
  - type: input
 | 
			
		||||
    id: script_name
 | 
			
		||||
    attributes:
 | 
			
		||||
      label: A clear and concise description of the issue.
 | 
			
		||||
      label: 📜 What is the name of the script you are using?
 | 
			
		||||
      placeholder: "e.g., NextcloudPi, Zigbee2MQTT"
 | 
			
		||||
    validations:
 | 
			
		||||
      required: true
 | 
			
		||||
      
 | 
			
		||||
 | 
			
		||||
  - type: input
 | 
			
		||||
    id: script_command
 | 
			
		||||
    attributes:
 | 
			
		||||
      label: 📂 What was the exact command used to execute the script?
 | 
			
		||||
      placeholder: "e.g., bash -c \"$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/ct/zigbee2mqtt.sh)\" or \"update\""
 | 
			
		||||
    validations:
 | 
			
		||||
      required: true
 | 
			
		||||
 | 
			
		||||
  - type: textarea
 | 
			
		||||
    id: issue_description
 | 
			
		||||
    attributes:
 | 
			
		||||
      label: 📝 Provide a clear and concise description of the issue.
 | 
			
		||||
    validations:
 | 
			
		||||
      required: true
 | 
			
		||||
 | 
			
		||||
  - type: checkboxes
 | 
			
		||||
    validations:
 | 
			
		||||
      required: true
 | 
			
		||||
    attributes:
 | 
			
		||||
      label: What settings are you currently utilizing?
 | 
			
		||||
      label: ⚙️ What settings are you using?
 | 
			
		||||
      options:
 | 
			
		||||
        - label: Default Settings
 | 
			
		||||
        - label: Advanced Settings
 | 
			
		||||
 | 
			
		||||
  - type: markdown
 | 
			
		||||
    attributes:
 | 
			
		||||
      value: "If using Advanced Settings, please try Default Settings before creating an issue."
 | 
			
		||||
      value: "💡 **Tip:** If you are using Advanced Settings, please test with Default Settings before submitting an issue."
 | 
			
		||||
 | 
			
		||||
  - type: dropdown
 | 
			
		||||
    id: distribution
 | 
			
		||||
    id: linux_distribution
 | 
			
		||||
    attributes:
 | 
			
		||||
      label: Which Linux distribution are you employing?
 | 
			
		||||
      label: 🖥️ Which Linux distribution are you using?
 | 
			
		||||
      options:
 | 
			
		||||
        - 
 | 
			
		||||
        - Alpine
 | 
			
		||||
@@ -51,21 +71,30 @@ body:
 | 
			
		||||
        - Ubuntu 20.04
 | 
			
		||||
        - Ubuntu 22.04
 | 
			
		||||
        - Ubuntu 24.04
 | 
			
		||||
        - Ubuntu 24.10
 | 
			
		||||
    validations:
 | 
			
		||||
      required: true
 | 
			
		||||
 | 
			
		||||
  - type: textarea
 | 
			
		||||
    id: screenshot
 | 
			
		||||
    id: steps_to_reproduce
 | 
			
		||||
    attributes:
 | 
			
		||||
      label: If relevant, including screenshots or a code block can be helpful in clarifying the issue.
 | 
			
		||||
      placeholder: "Code blocks begin and conclude by enclosing the code with three backticks (```) above and below it."
 | 
			
		||||
      label: 🔄 Steps to reproduce the issue.
 | 
			
		||||
      placeholder: "e.g., Step 1: ..., Step 2: ..."
 | 
			
		||||
    validations:
 | 
			
		||||
      required: false
 | 
			
		||||
      required: true
 | 
			
		||||
 | 
			
		||||
  - type: textarea
 | 
			
		||||
    id: reproduce
 | 
			
		||||
    id: error_output
 | 
			
		||||
    attributes:
 | 
			
		||||
      label: Please provide detailed steps to reproduce the issue.
 | 
			
		||||
      placeholder: "First do this, then this ..."
 | 
			
		||||
      label: ❌ Paste the full error output (if available).
 | 
			
		||||
      placeholder: "Include any relevant logs or error messages."
 | 
			
		||||
    validations:
 | 
			
		||||
      required: true
 | 
			
		||||
 | 
			
		||||
  - type: textarea
 | 
			
		||||
    id: additional_context
 | 
			
		||||
    attributes:
 | 
			
		||||
      label: 🖼️ Additional context (optional).
 | 
			
		||||
      placeholder: "Include screenshots, code blocks (use triple backticks ```), or any other relevant information."
 | 
			
		||||
    validations:
 | 
			
		||||
      required: false
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										48
									
								
								.github/pull_request_template.md
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										48
									
								
								.github/pull_request_template.md
									
									
									
									
										vendored
									
									
								
							@@ -1,31 +1,39 @@
 | 
			
		||||
> [!NOTE]
 | 
			
		||||
> We are meticulous when it comes to merging code into the main branch, so please understand that we may reject pull requests that do not meet the project's standards. It's never personal. Also, game-related scripts have a lower chance of being merged.
 | 
			
		||||
> **🛠️ Note:**  
 | 
			
		||||
> We are meticulous about merging code into the main branch, so please understand that pull requests not meeting the project's standards may be rejected. It's never personal!  
 | 
			
		||||
> 🎮 **Note for game-related scripts:** These have a lower likelihood of being merged.
 | 
			
		||||
 | 
			
		||||
## Description
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
## ✍️ Description
 | 
			
		||||
Provide a summary of the changes made and/or reference the issue being addressed.
 | 
			
		||||
 | 
			
		||||
Fixes # (issue)
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
## Type of change
 | 
			
		||||
Please check the relevant option(s):
 | 
			
		||||
- - -
 | 
			
		||||
**_Please remove unneeded lines!_**
 | 
			
		||||
- Related Issue: # (issue number, if applicable)  
 | 
			
		||||
- Related PR: # (if applicable)  
 | 
			
		||||
- Related Discussion: []()(if applicable)  
 | 
			
		||||
 | 
			
		||||
- [ ] Bug fix (non-breaking change that resolves an issue)
 | 
			
		||||
- [ ] New feature (non-breaking change that adds functionality)
 | 
			
		||||
- [ ] Breaking change (a fix or feature that would cause existing functionality to change unexpectedly)
 | 
			
		||||
- [ ] New script (a fully functional and thoroughly tested script or set of scripts.)
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
## Prerequisites
 | 
			
		||||
The following efforts must be made for the PR to be considered. Please check when completed:
 | 
			
		||||
- [ ] Self-review performed (I have reviewed my code, ensuring it follows established patterns and conventions)
 | 
			
		||||
- [ ] Testing performed (I have tested my changes, ensuring everything works as expected)
 | 
			
		||||
## 🛠️ Type of Change
 | 
			
		||||
Please check the relevant options:  
 | 
			
		||||
- [ ] Bug fix (non-breaking change that resolves an issue)  
 | 
			
		||||
- [ ] New feature (non-breaking change that adds functionality)  
 | 
			
		||||
- [ ] Breaking change (fix or feature that would cause existing functionality to change unexpectedly)  
 | 
			
		||||
- [ ] New script (a fully functional and thoroughly tested script or set of scripts)  
 | 
			
		||||
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
## ✅ Prerequisites
 | 
			
		||||
The following steps must be completed for the pull request to be considered:  
 | 
			
		||||
- [ ] Self-review performed (I have reviewed my code to ensure it follows established patterns and conventions.)  
 | 
			
		||||
- [ ] Testing performed (I have thoroughly tested my changes and verified expected functionality.)  
 | 
			
		||||
- [ ] Documentation updated (I have updated any relevant documentation)
 | 
			
		||||
 | 
			
		||||
## Additional Information (optional)
 | 
			
		||||
Provide any additional context or screenshots about the feature or fix here.
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
## 📋 Additional Information (optional)
 | 
			
		||||
Provide any extra context or screenshots about the feature or fix here.  
 | 
			
		||||
 | 
			
		||||
## Related Pull Requests / Discussions
 | 
			
		||||
 | 
			
		||||
If there are other pull requests or discussions related to this change, please link them here:
 | 
			
		||||
- Related PR #
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										1
									
								
								.github/workflows/changelog-pr.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								.github/workflows/changelog-pr.yml
									
									
									
									
										vendored
									
									
								
							@@ -63,6 +63,7 @@ jobs:
 | 
			
		||||
            const { data: pulls } = await github.rest.pulls.list({
 | 
			
		||||
              owner: context.repo.owner,
 | 
			
		||||
              repo: context.repo.repo,
 | 
			
		||||
              base: "main",
 | 
			
		||||
              state: "closed",
 | 
			
		||||
              sort: "updated",
 | 
			
		||||
              direction: "desc",
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										79
									
								
								.github/workflows/deploy-pages.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										79
									
								
								.github/workflows/deploy-pages.yml
									
									
									
									
										vendored
									
									
								
							@@ -1,79 +0,0 @@
 | 
			
		||||
# Sample workflow for building and deploying a Next.js site to GitHub Pages
 | 
			
		||||
#
 | 
			
		||||
# To get started with Next.js see: https://nextjs.org/docs/getting-started
 | 
			
		||||
#
 | 
			
		||||
name: Deploy Next.js site to Pages
 | 
			
		||||
 | 
			
		||||
on:
 | 
			
		||||
  push:
 | 
			
		||||
    branches: ["main"]
 | 
			
		||||
    paths:
 | 
			
		||||
      - frontend/**
 | 
			
		||||
      - json/**
 | 
			
		||||
 | 
			
		||||
  workflow_dispatch:
 | 
			
		||||
 | 
			
		||||
permissions:
 | 
			
		||||
  contents: read
 | 
			
		||||
  pages: write
 | 
			
		||||
  id-token: write
 | 
			
		||||
 | 
			
		||||
concurrency:
 | 
			
		||||
  group: "pages"
 | 
			
		||||
  cancel-in-progress: false
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  build:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    defaults:
 | 
			
		||||
      run:
 | 
			
		||||
        working-directory: frontend  # Set default working directory for all run steps
 | 
			
		||||
    steps:
 | 
			
		||||
      - name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
      - name: Detect package manager
 | 
			
		||||
        id: detect-package-manager
 | 
			
		||||
        run: |
 | 
			
		||||
          if [ -f "${{ github.workspace }}/frontend/yarn.lock" ]; then
 | 
			
		||||
            echo "manager=yarn" >> $GITHUB_OUTPUT
 | 
			
		||||
            echo "command=install" >> $GITHUB_OUTPUT
 | 
			
		||||
            echo "runner=yarn" >> $GITHUB_OUTPUT
 | 
			
		||||
            exit 0
 | 
			
		||||
          elif [ -f "${{ github.workspace }}/frontend/package.json" ]; then
 | 
			
		||||
            echo "manager=npm" >> $GITHUB_OUTPUT
 | 
			
		||||
            echo "command=ci" >> $GITHUB_OUTPUT
 | 
			
		||||
            echo "runner=npx --no-install" >> $GITHUB_OUTPUT
 | 
			
		||||
            exit 0
 | 
			
		||||
          else
 | 
			
		||||
            echo "Unable to determine package manager"
 | 
			
		||||
            exit 1
 | 
			
		||||
          fi
 | 
			
		||||
      - name: Setup Node
 | 
			
		||||
        uses: actions/setup-node@v4
 | 
			
		||||
        with:
 | 
			
		||||
          node-version: "20"
 | 
			
		||||
          cache: ${{ steps.detect-package-manager.outputs.manager }}
 | 
			
		||||
          cache-dependency-path: frontend/package-lock.json  # Specify the path to package-lock.json
 | 
			
		||||
      - name: Setup Pages
 | 
			
		||||
        uses: actions/configure-pages@v5
 | 
			
		||||
        with:
 | 
			
		||||
          static_site_generator: next
 | 
			
		||||
      - name: Install dependencies
 | 
			
		||||
        run: ${{ steps.detect-package-manager.outputs.manager }} ${{ steps.detect-package-manager.outputs.command }} --legacy-peer-deps
 | 
			
		||||
      - name: Build with Next.js
 | 
			
		||||
        run: ${{ steps.detect-package-manager.outputs.runner }} next build
 | 
			
		||||
      - name: Upload artifact
 | 
			
		||||
        uses: actions/upload-pages-artifact@v3
 | 
			
		||||
        with:
 | 
			
		||||
          path: frontend/out
 | 
			
		||||
 | 
			
		||||
  deploy:
 | 
			
		||||
    environment:
 | 
			
		||||
      name: github-pages
 | 
			
		||||
      url: ${{ steps.deployment.outputs.page_url }}
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    needs: build
 | 
			
		||||
    steps:
 | 
			
		||||
      - name: Deploy to GitHub Pages
 | 
			
		||||
        id: deployment
 | 
			
		||||
        uses: actions/deploy-pages@v4
 | 
			
		||||
							
								
								
									
										78
									
								
								.github/workflows/frontend-cicd.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										78
									
								
								.github/workflows/frontend-cicd.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,78 @@
 | 
			
		||||
# Based on https://github.com/actions/starter-workflows/blob/main/pages/nextjs.yml
 | 
			
		||||
 | 
			
		||||
name: Frontend CI/CD
 | 
			
		||||
 | 
			
		||||
on:
 | 
			
		||||
  push:
 | 
			
		||||
    branches: ["main"]
 | 
			
		||||
    paths:
 | 
			
		||||
      - frontend/**
 | 
			
		||||
      - json/**
 | 
			
		||||
 | 
			
		||||
  pull_request:
 | 
			
		||||
    branches: ["main"]
 | 
			
		||||
    types: [opened, synchronize, reopened, edited]
 | 
			
		||||
    paths:
 | 
			
		||||
      - frontend/**
 | 
			
		||||
      - json/**
 | 
			
		||||
 | 
			
		||||
  workflow_dispatch:
 | 
			
		||||
 | 
			
		||||
permissions:
 | 
			
		||||
  contents: read
 | 
			
		||||
 | 
			
		||||
concurrency:
 | 
			
		||||
  group: pages-${{ github.ref }}
 | 
			
		||||
  cancel-in-progress: false
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  build:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    defaults:
 | 
			
		||||
      run:
 | 
			
		||||
        working-directory: frontend  # Set default working directory for all run steps
 | 
			
		||||
    steps:
 | 
			
		||||
      - name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
 | 
			
		||||
      - name: Setup Node
 | 
			
		||||
        uses: actions/setup-node@v4
 | 
			
		||||
        with:
 | 
			
		||||
          node-version: "20"
 | 
			
		||||
          cache: npm
 | 
			
		||||
          cache-dependency-path: frontend/package-lock.json
 | 
			
		||||
 | 
			
		||||
      - name: Install dependencies
 | 
			
		||||
        run: npm ci --prefer-offline --legacy-peer-deps
 | 
			
		||||
 | 
			
		||||
      - name: Run tests
 | 
			
		||||
        run: npm run test
 | 
			
		||||
 | 
			
		||||
      - name: Configure Next.js for pages
 | 
			
		||||
        uses: actions/configure-pages@v5
 | 
			
		||||
        with:
 | 
			
		||||
          static_site_generator: next
 | 
			
		||||
 | 
			
		||||
      - name: Build with Next.js
 | 
			
		||||
        run: npm run build
 | 
			
		||||
 | 
			
		||||
      - name: Upload artifact
 | 
			
		||||
        if: github.ref == 'refs/heads/main'
 | 
			
		||||
        uses: actions/upload-pages-artifact@v3
 | 
			
		||||
        with:
 | 
			
		||||
          path: frontend/out
 | 
			
		||||
 | 
			
		||||
  deploy:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    needs: build
 | 
			
		||||
    if: github.ref == 'refs/heads/main'
 | 
			
		||||
    permissions:
 | 
			
		||||
      pages: write
 | 
			
		||||
      id-token: write
 | 
			
		||||
    environment:
 | 
			
		||||
      name: github-pages
 | 
			
		||||
      url: ${{ steps.deployment.outputs.page_url }}
 | 
			
		||||
    steps:
 | 
			
		||||
      - name: Deploy to GitHub Pages
 | 
			
		||||
        id: deployment
 | 
			
		||||
        uses: actions/deploy-pages@v4
 | 
			
		||||
							
								
								
									
										25
									
								
								.github/workflows/shellcheck.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								.github/workflows/shellcheck.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,25 @@
 | 
			
		||||
name: Shellcheck
 | 
			
		||||
 | 
			
		||||
on:
 | 
			
		||||
  push:
 | 
			
		||||
    branches:
 | 
			
		||||
      - main
 | 
			
		||||
  pull_request:
 | 
			
		||||
  workflow_dispatch:
 | 
			
		||||
  schedule:
 | 
			
		||||
    - cron: "5 1 * * *"
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  shellcheck:
 | 
			
		||||
    name: Shellcheck
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
 | 
			
		||||
    steps:
 | 
			
		||||
    - uses: actions/checkout@v4
 | 
			
		||||
 | 
			
		||||
    - name: Run ShellCheck
 | 
			
		||||
      uses: ludeeus/action-shellcheck@master
 | 
			
		||||
      with:
 | 
			
		||||
        ignore_paths: >-
 | 
			
		||||
          frontend
 | 
			
		||||
          json
 | 
			
		||||
							
								
								
									
										468
									
								
								CHANGELOG.md
									
									
									
									
									
								
							
							
						
						
									
										468
									
								
								CHANGELOG.md
									
									
									
									
									
								
							@@ -16,6 +16,474 @@ All LXC instances created using this repository come pre-installed with Midnight
 | 
			
		||||
> [!IMPORTANT]
 | 
			
		||||
Do not break established syntax in this file, as it is automatically updated by a Github Workflow
 | 
			
		||||
 | 
			
		||||
## 2024-12-30
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- [Archivebox] Fix wrong port being printed post install. [@Strana-Mechty](https://github.com/Strana-Mechty) ([#1105](https://github.com/community-scripts/ProxmoxVE/pull/1105))
 | 
			
		||||
- fix: add homepage version during build step [@se-bastiaan](https://github.com/se-bastiaan) ([#1107](https://github.com/community-scripts/ProxmoxVE/pull/1107))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Fix Trilium Website to TriliumNext [@tmkis2](https://github.com/tmkis2) ([#1103](https://github.com/community-scripts/ProxmoxVE/pull/1103))
 | 
			
		||||
 | 
			
		||||
## 2024-12-29
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- New Script: Grist [@cfurrow](https://github.com/cfurrow) ([#1076](https://github.com/community-scripts/ProxmoxVE/pull/1076))
 | 
			
		||||
- New Script: TeddyCloud Server [@dsiebel](https://github.com/dsiebel) ([#1064](https://github.com/community-scripts/ProxmoxVE/pull/1064))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Fix Install / Update on Grist Script [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1091](https://github.com/community-scripts/ProxmoxVE/pull/1091))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- fix: Update add-lxc-iptag.json warn to warning [@BramSuurdje](https://github.com/BramSuurdje) ([#1094](https://github.com/community-scripts/ProxmoxVE/pull/1094))
 | 
			
		||||
 | 
			
		||||
### 🧰 Maintenance
 | 
			
		||||
 | 
			
		||||
- Introduce editorconfig for more consistent formatting [@dsiebel](https://github.com/dsiebel) ([#1073](https://github.com/community-scripts/ProxmoxVE/pull/1073))
 | 
			
		||||
 | 
			
		||||
## 2024-12-28
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 💥 Breaking Changes
 | 
			
		||||
 | 
			
		||||
- Add Figlet into Repo | Creation of local ASCII Header [@MickLesk](https://github.com/MickLesk) ([#1072](https://github.com/community-scripts/ProxmoxVE/pull/1072))
 | 
			
		||||
- Add an IP-Update for MOTD if IP Changed [@MickLesk](https://github.com/MickLesk) ([#1067](https://github.com/community-scripts/ProxmoxVE/pull/1067))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Zabbix: Fix SQL Path for 7.2 [@MickLesk](https://github.com/MickLesk) ([#1069](https://github.com/community-scripts/ProxmoxVE/pull/1069))
 | 
			
		||||
- Authentik: added missing port to access url [@TheRealVira](https://github.com/TheRealVira) ([#1065](https://github.com/community-scripts/ProxmoxVE/pull/1065))
 | 
			
		||||
 | 
			
		||||
## 2024-12-27
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- new scripts for Authentik [@remz1337](https://github.com/remz1337) ([#291](https://github.com/community-scripts/ProxmoxVE/pull/291))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Add 8.0 for MongoDB Installation [@MickLesk](https://github.com/MickLesk) ([#1046](https://github.com/community-scripts/ProxmoxVE/pull/1046))
 | 
			
		||||
- Update Zabbix to 7.2. Release [@MickLesk](https://github.com/MickLesk) ([#1048](https://github.com/community-scripts/ProxmoxVE/pull/1048))
 | 
			
		||||
- Apache-Guacamole script bug fix [@sannier3](https://github.com/sannier3) ([#1039](https://github.com/community-scripts/ProxmoxVE/pull/1039))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Updated SAB documentation based on RAM increase [@TheRealVira](https://github.com/TheRealVira) ([#1035](https://github.com/community-scripts/ProxmoxVE/pull/1035))
 | 
			
		||||
 | 
			
		||||
### ❔ Unlabelled
 | 
			
		||||
 | 
			
		||||
- Patch Figlet Repo if missing [@MickLesk](https://github.com/MickLesk) ([#1044](https://github.com/community-scripts/ProxmoxVE/pull/1044))
 | 
			
		||||
- fix Tags for Advanced Settings [@MickLesk](https://github.com/MickLesk) ([#1042](https://github.com/community-scripts/ProxmoxVE/pull/1042))
 | 
			
		||||
 | 
			
		||||
## 2024-12-26
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
-  New Script: Jenkins [@quantumryuu](https://github.com/quantumryuu) ([#1019](https://github.com/community-scripts/ProxmoxVE/pull/1019))
 | 
			
		||||
- New Script: 2FAuth [@jkrgr0](https://github.com/jkrgr0) ([#943](https://github.com/community-scripts/ProxmoxVE/pull/943))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- ChangeDetection Update: Update also Browsers [@Niklas04](https://github.com/Niklas04) ([#1027](https://github.com/community-scripts/ProxmoxVE/pull/1027))
 | 
			
		||||
- ensure all RFC1918 local Ipv4 addresses are in iptag script [@AskAlice](https://github.com/AskAlice) ([#992](https://github.com/community-scripts/ProxmoxVE/pull/992))
 | 
			
		||||
- Fix Proxmox DataCenter: incorrect build.func url [@rbradley0](https://github.com/rbradley0) ([#1013](https://github.com/community-scripts/ProxmoxVE/pull/1013))
 | 
			
		||||
 | 
			
		||||
### 🧰 Maintenance
 | 
			
		||||
 | 
			
		||||
- [GitHub Actions] Introduce Shellcheck to check bash code [@andygrunwald](https://github.com/andygrunwald) ([#1018](https://github.com/community-scripts/ProxmoxVE/pull/1018))
 | 
			
		||||
 | 
			
		||||
## 2024-12-25
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- add: pve-datacenter-manager [@CrazyWolf13](https://github.com/CrazyWolf13) ([#947](https://github.com/community-scripts/ProxmoxVE/pull/947))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Fix Script: Alpine Nextcloud Upload File Size Limit [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#933](https://github.com/community-scripts/ProxmoxVE/pull/933))
 | 
			
		||||
- Doubled RAM for SAB [@TheRealVira](https://github.com/TheRealVira) ([#1007](https://github.com/community-scripts/ProxmoxVE/pull/1007))
 | 
			
		||||
 | 
			
		||||
## 2024-12-23
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Fix Navidrome Update & Install [@MickLesk](https://github.com/MickLesk) ([#991](https://github.com/community-scripts/ProxmoxVE/pull/991))
 | 
			
		||||
- Update emby.sh to correct port [@Rageplant](https://github.com/Rageplant) ([#989](https://github.com/community-scripts/ProxmoxVE/pull/989))
 | 
			
		||||
 | 
			
		||||
## 2024-12-21
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- update Port in homeassistant-core CT [@fraefel](https://github.com/fraefel) ([#961](https://github.com/community-scripts/ProxmoxVE/pull/961))
 | 
			
		||||
 | 
			
		||||
## 2024-12-20
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- New Script: Apache Guacamole [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#657](https://github.com/community-scripts/ProxmoxVE/pull/657))
 | 
			
		||||
- New Script: silverbullet [@dsiebel](https://github.com/dsiebel) ([#659](https://github.com/community-scripts/ProxmoxVE/pull/659))
 | 
			
		||||
- New Script: Zammad [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#640](https://github.com/community-scripts/ProxmoxVE/pull/640))
 | 
			
		||||
- New Script: CheckMk [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#926](https://github.com/community-scripts/ProxmoxVE/pull/926))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Fix: Remove PHP Key generation in Bookstack Update [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#948](https://github.com/community-scripts/ProxmoxVE/pull/948))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Update checkmk description [@BramSuurdje](https://github.com/BramSuurdje) ([#954](https://github.com/community-scripts/ProxmoxVE/pull/954))
 | 
			
		||||
- Add Login Note for Checkmk [@MickLesk](https://github.com/MickLesk) ([#940](https://github.com/community-scripts/ProxmoxVE/pull/940))
 | 
			
		||||
 | 
			
		||||
### ❔ Unlabelled
 | 
			
		||||
 | 
			
		||||
- Update build.func to display the Proxmox Hostname [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#894](https://github.com/community-scripts/ProxmoxVE/pull/894))
 | 
			
		||||
 | 
			
		||||
## 2024-12-19
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Fix: Bookstack Update Function [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#844](https://github.com/community-scripts/ProxmoxVE/pull/844))
 | 
			
		||||
- mysql not showing ip after install [@snow2k9](https://github.com/snow2k9) ([#924](https://github.com/community-scripts/ProxmoxVE/pull/924))
 | 
			
		||||
- Fix Omada - Crawling latest version [@MickLesk](https://github.com/MickLesk) ([#918](https://github.com/community-scripts/ProxmoxVE/pull/918))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Fix script path formatting in InstallMethod component [@BramSuurdje](https://github.com/BramSuurdje) ([#909](https://github.com/community-scripts/ProxmoxVE/pull/909))
 | 
			
		||||
- Fix Part-DB Docu (cred command) [@EvilBlood](https://github.com/EvilBlood) ([#898](https://github.com/community-scripts/ProxmoxVE/pull/898))
 | 
			
		||||
- Enhance Tooltip component by adding CircleHelp icon and fix instructions in script component [@BramSuurdje](https://github.com/BramSuurdje) ([#910](https://github.com/community-scripts/ProxmoxVE/pull/910))
 | 
			
		||||
 | 
			
		||||
## 2024-12-18
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- New script: Part-DB LXC [@bvdberg01](https://github.com/bvdberg01) ([#591](https://github.com/community-scripts/ProxmoxVE/pull/591))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Fix Kernel-Clean for Proxmox 8.x [@MickLesk](https://github.com/MickLesk) ([#904](https://github.com/community-scripts/ProxmoxVE/pull/904))
 | 
			
		||||
- [Frigate] Remove SSE 4.2 from instruction set supporting OpenVino [@remz1337](https://github.com/remz1337) ([#902](https://github.com/community-scripts/ProxmoxVE/pull/902))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- New Metadata Category: "Coding & AI" [@newzealandpaul](https://github.com/newzealandpaul) ([#890](https://github.com/community-scripts/ProxmoxVE/pull/890))
 | 
			
		||||
- Moved Webmin to "Server & Networking" [@newzealandpaul](https://github.com/newzealandpaul) ([#891](https://github.com/community-scripts/ProxmoxVE/pull/891))
 | 
			
		||||
 | 
			
		||||
## 2024-12-17
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Fix Alpine-Nextcloud: Bump PHP Version to 8.3 [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#865](https://github.com/community-scripts/ProxmoxVE/pull/865))
 | 
			
		||||
- Correction of Jellyfin CT Port [@mneten](https://github.com/mneten) ([#884](https://github.com/community-scripts/ProxmoxVE/pull/884))
 | 
			
		||||
- fix spinner on lxc-ip-tag [@MickLesk](https://github.com/MickLesk) ([#876](https://github.com/community-scripts/ProxmoxVE/pull/876))
 | 
			
		||||
- Fix Keycloak Installation [@MickLesk](https://github.com/MickLesk) ([#874](https://github.com/community-scripts/ProxmoxVE/pull/874))
 | 
			
		||||
- Fix ports ressources [@MickLesk](https://github.com/MickLesk) ([#867](https://github.com/community-scripts/ProxmoxVE/pull/867))
 | 
			
		||||
 | 
			
		||||
### 🧰 Maintenance
 | 
			
		||||
 | 
			
		||||
- Small Changes to the PR Template [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#862](https://github.com/community-scripts/ProxmoxVE/pull/862))
 | 
			
		||||
 | 
			
		||||
### ❔ Unlabelled
 | 
			
		||||
 | 
			
		||||
- calculate terminal size for header_info [@MickLesk](https://github.com/MickLesk) ([#879](https://github.com/community-scripts/ProxmoxVE/pull/879))
 | 
			
		||||
- Fix header creation with figlet for alpine [@MickLesk](https://github.com/MickLesk) ([#869](https://github.com/community-scripts/ProxmoxVE/pull/869))
 | 
			
		||||
 | 
			
		||||
## 2024-12-16
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 💥 Breaking Changes
 | 
			
		||||
 | 
			
		||||
- Massive Update: build.func | install.func | create_lxc.sh (Part 1) [@MickLesk](https://github.com/MickLesk) ([#643](https://github.com/community-scripts/ProxmoxVE/pull/643))
 | 
			
		||||
- Update ALL CT's to new default (Part 2) [@MickLesk](https://github.com/MickLesk) ([#710](https://github.com/community-scripts/ProxmoxVE/pull/710))
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- New Script: LXC IP-Tag [@MickLesk](https://github.com/MickLesk) ([#536](https://github.com/community-scripts/ProxmoxVE/pull/536))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Increase Size | Description & Download-URL of Debian VM [@MickLesk](https://github.com/MickLesk) ([#837](https://github.com/community-scripts/ProxmoxVE/pull/837))
 | 
			
		||||
- Update Script: Remove Docker Compose Question [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#847](https://github.com/community-scripts/ProxmoxVE/pull/847))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Bump nanoid from 3.3.7 to 3.3.8 in /frontend [@dependabot[bot]](https://github.com/dependabot[bot]) ([#845](https://github.com/community-scripts/ProxmoxVE/pull/845))
 | 
			
		||||
 | 
			
		||||
### ❔ Unlabelled
 | 
			
		||||
 | 
			
		||||
- Fix SSH root access in install.func [@havardthom](https://github.com/havardthom) ([#858](https://github.com/community-scripts/ProxmoxVE/pull/858))
 | 
			
		||||
- Fix variable name for CT_TYPE override [@remz1337](https://github.com/remz1337) ([#855](https://github.com/community-scripts/ProxmoxVE/pull/855))
 | 
			
		||||
- Keeps the same style after writing the SEARCH icon [@remz1337](https://github.com/remz1337) ([#851](https://github.com/community-scripts/ProxmoxVE/pull/851))
 | 
			
		||||
 | 
			
		||||
## 2024-12-13
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Fix Keycloak Update Function [@MickLesk](https://github.com/MickLesk) ([#762](https://github.com/community-scripts/ProxmoxVE/pull/762))
 | 
			
		||||
- Fix config bug in Alpine Vaultwarden [@havardthom](https://github.com/havardthom) ([#775](https://github.com/community-scripts/ProxmoxVE/pull/775))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Change MISC from red to green [@MickLesk](https://github.com/MickLesk) ([#815](https://github.com/community-scripts/ProxmoxVE/pull/815))
 | 
			
		||||
- Update some JSON Files for Website [@MickLesk](https://github.com/MickLesk) ([#812](https://github.com/community-scripts/ProxmoxVE/pull/812))
 | 
			
		||||
- Update Notes & Documentation for Proxmox Backup Server [@MickLesk](https://github.com/MickLesk) ([#804](https://github.com/community-scripts/ProxmoxVE/pull/804))
 | 
			
		||||
 | 
			
		||||
### 🧰 Maintenance
 | 
			
		||||
 | 
			
		||||
- Github: Optimize Issue Template & PR Template [@MickLesk](https://github.com/MickLesk) ([#802](https://github.com/community-scripts/ProxmoxVE/pull/802))
 | 
			
		||||
 | 
			
		||||
## 2024-12-12
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Update jellyfin.sh / Fix infinite loop [@gerpo](https://github.com/gerpo) ([#792](https://github.com/community-scripts/ProxmoxVE/pull/792))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Fix port and website in nextcloudpi.json [@PhoenixEmik](https://github.com/PhoenixEmik) ([#790](https://github.com/community-scripts/ProxmoxVE/pull/790))
 | 
			
		||||
- Add post-install note to mqtt.json [@havardthom](https://github.com/havardthom) ([#783](https://github.com/community-scripts/ProxmoxVE/pull/783))
 | 
			
		||||
 | 
			
		||||
### 🧰 Maintenance
 | 
			
		||||
 | 
			
		||||
- Filter pull requests on main branch in changelog-pr.yml [@havardthom](https://github.com/havardthom) ([#793](https://github.com/community-scripts/ProxmoxVE/pull/793))
 | 
			
		||||
- Fix Z-Wave JS UI Breaking Change in CHANGELOG.md [@havardthom](https://github.com/havardthom) ([#781](https://github.com/community-scripts/ProxmoxVE/pull/781))
 | 
			
		||||
 | 
			
		||||
## 2024-12-09
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Fix PostgreSQL password bug in Umami install [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#750](https://github.com/community-scripts/ProxmoxVE/pull/750))
 | 
			
		||||
 | 
			
		||||
## 2024-12-08
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Use MongoDB 4.4 in Unifi for non-AVX users [@havardthom](https://github.com/havardthom) ([#691](https://github.com/community-scripts/ProxmoxVE/pull/691))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Move homarr to Dashboards section [@CrazyWolf13](https://github.com/CrazyWolf13) ([#740](https://github.com/community-scripts/ProxmoxVE/pull/740))
 | 
			
		||||
 | 
			
		||||
## 2024-12-07
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Zigbee2MQTT: Remove dev branch choice until v2.0.0 release [@havardthom](https://github.com/havardthom) ([#702](https://github.com/community-scripts/ProxmoxVE/pull/702))
 | 
			
		||||
- Fix Hoarder build failure by installing Chromium stable [@vhsdream](https://github.com/vhsdream) ([#723](https://github.com/community-scripts/ProxmoxVE/pull/723))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Bugfix: Include script name in website search [@havardthom](https://github.com/havardthom) ([#731](https://github.com/community-scripts/ProxmoxVE/pull/731))
 | 
			
		||||
 | 
			
		||||
### ❔ Unlabelled
 | 
			
		||||
 | 
			
		||||
- Fix broken build.func [@havardthom](https://github.com/havardthom) ([#736](https://github.com/community-scripts/ProxmoxVE/pull/736))
 | 
			
		||||
 | 
			
		||||
## 2024-12-06
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Fix bugs in Komga update [@DysfunctionalProgramming](https://github.com/DysfunctionalProgramming) ([#717](https://github.com/community-scripts/ProxmoxVE/pull/717))
 | 
			
		||||
- Bookstack: Fix Update function composer [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#700](https://github.com/community-scripts/ProxmoxVE/pull/700))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- fix: note component in json-editor getting out of focus when typing and revert theme switch animation [@BramSuurdje](https://github.com/BramSuurdje) ([#706](https://github.com/community-scripts/ProxmoxVE/pull/706))
 | 
			
		||||
 | 
			
		||||
### 🧰 Maintenance
 | 
			
		||||
 | 
			
		||||
- Update frontend CI/CD workflow [@havardthom](https://github.com/havardthom) ([#703](https://github.com/community-scripts/ProxmoxVE/pull/703))
 | 
			
		||||
 | 
			
		||||
## 2024-12-05
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- PostgreSQL: Change authentication method from peer to md5 for UNIX sockets [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#650](https://github.com/community-scripts/ProxmoxVE/pull/650))
 | 
			
		||||
- Fix stdout in unifi.sh [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#688](https://github.com/community-scripts/ProxmoxVE/pull/688))
 | 
			
		||||
- Fix `rm` bug in Vikunja update [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#692](https://github.com/community-scripts/ProxmoxVE/pull/692))
 | 
			
		||||
 | 
			
		||||
## 2024-12-04
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Update Spelling 'Environment' in nginxproxymanager [@MathijsG](https://github.com/MathijsG) ([#676](https://github.com/community-scripts/ProxmoxVE/pull/676))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Update homepage.json documentation and website links [@patchmonkey](https://github.com/patchmonkey) ([#668](https://github.com/community-scripts/ProxmoxVE/pull/668))
 | 
			
		||||
 | 
			
		||||
## 2024-12-03
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- New Script: Onedev [@quantumryuu](https://github.com/quantumryuu) ([#612](https://github.com/community-scripts/ProxmoxVE/pull/612))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Script Update: SnipeIT [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#641](https://github.com/community-scripts/ProxmoxVE/pull/641))
 | 
			
		||||
 | 
			
		||||
## 2024-12-02
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- New Script: Hoarder LXC [@vhsdream](https://github.com/vhsdream) ([#567](https://github.com/community-scripts/ProxmoxVE/pull/567))
 | 
			
		||||
- New script: SnipeIT LXC [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#538](https://github.com/community-scripts/ProxmoxVE/pull/538))
 | 
			
		||||
- New Script: Glance [@quantumryuu](https://github.com/quantumryuu) ([#595](https://github.com/community-scripts/ProxmoxVE/pull/595))
 | 
			
		||||
- New script: Unbound LXC [@wimb0](https://github.com/wimb0) ([#547](https://github.com/community-scripts/ProxmoxVE/pull/547))
 | 
			
		||||
- New script: Mylar3 LXC [@davalanche](https://github.com/davalanche) ([#554](https://github.com/community-scripts/ProxmoxVE/pull/554))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Stirling-PDF: replace dependency for v0.35.0 and add check and fix in stirling-pdf.sh [@vhsdream](https://github.com/vhsdream) ([#614](https://github.com/community-scripts/ProxmoxVE/pull/614))
 | 
			
		||||
- qbittorrent: do not override the configuration port in systemd [@zdraganov](https://github.com/zdraganov) ([#618](https://github.com/community-scripts/ProxmoxVE/pull/618))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- chore: Update unbound logo to have only the actual logo [@BramSuurdje](https://github.com/BramSuurdje) ([#648](https://github.com/community-scripts/ProxmoxVE/pull/648))
 | 
			
		||||
- fix: vaultwarden info mismatch [@BramSuurdje](https://github.com/BramSuurdje) ([#645](https://github.com/community-scripts/ProxmoxVE/pull/645))
 | 
			
		||||
- Wallos json fix [@quantumryuu](https://github.com/quantumryuu) ([#630](https://github.com/community-scripts/ProxmoxVE/pull/630))
 | 
			
		||||
 | 
			
		||||
## 2024-11-30
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Convert line endings in the-lounge.sh [@jamezpolley](https://github.com/jamezpolley) ([#599](https://github.com/community-scripts/ProxmoxVE/pull/599))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- add some Information for Monitor-All Script [@MickLesk](https://github.com/MickLesk) ([#605](https://github.com/community-scripts/ProxmoxVE/pull/605))
 | 
			
		||||
 | 
			
		||||
## 2024-11-29
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- New Script: The Lounge IRC [@quantumryuu](https://github.com/quantumryuu) ([#571](https://github.com/community-scripts/ProxmoxVE/pull/571))
 | 
			
		||||
- New Script: LubeLogger [@quantumryuu](https://github.com/quantumryuu) ([#574](https://github.com/community-scripts/ProxmoxVE/pull/574))
 | 
			
		||||
- New Script: Inspircd [@quantumryuu](https://github.com/quantumryuu) ([#576](https://github.com/community-scripts/ProxmoxVE/pull/576))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Fix msg_error on zwave-js-ui [@MickLesk](https://github.com/MickLesk) ([#585](https://github.com/community-scripts/ProxmoxVE/pull/585))
 | 
			
		||||
- Fix Kimai Apache2 Rights [@MickLesk](https://github.com/MickLesk) ([#577](https://github.com/community-scripts/ProxmoxVE/pull/577))
 | 
			
		||||
 | 
			
		||||
## 2024-11-28
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 💥 Breaking Changes
 | 
			
		||||
 | 
			
		||||
- Fix Z-Wave JS UI script [@MickLesk](https://github.com/MickLesk) ([#546](https://github.com/community-scripts/ProxmoxVE/pull/546))
 | 
			
		||||
  - [Migration guide](https://github.com/community-scripts/ProxmoxVE/discussions/635)
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Add vitest, add json validation tests, fix broken json files [@havardthom](https://github.com/havardthom) ([#566](https://github.com/community-scripts/ProxmoxVE/pull/566))
 | 
			
		||||
- Add update script to Pocketbase [@dsiebel](https://github.com/dsiebel) ([#535](https://github.com/community-scripts/ProxmoxVE/pull/535))
 | 
			
		||||
- Fix MongoDB install in Unifi script [@havardthom](https://github.com/havardthom) ([#564](https://github.com/community-scripts/ProxmoxVE/pull/564))
 | 
			
		||||
- Remove changing DISK_REF for zfspool mikrotik-routeros.sh [@tjcomserv](https://github.com/tjcomserv) ([#529](https://github.com/community-scripts/ProxmoxVE/pull/529))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Show Changelog on Mobile Devices [@MickLesk](https://github.com/MickLesk) ([#558](https://github.com/community-scripts/ProxmoxVE/pull/558))
 | 
			
		||||
 | 
			
		||||
## 2024-11-27
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 💥 Breaking Changes
 | 
			
		||||
 | 
			
		||||
- Zabbix: Use Agent2 as Default | Update Script added | some other Improvements [@MickLesk](https://github.com/MickLesk) ([#527](https://github.com/community-scripts/ProxmoxVE/pull/527))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Fix: install mosquitto from mosquitto repo [@dsiebel](https://github.com/dsiebel) ([#534](https://github.com/community-scripts/ProxmoxVE/pull/534))
 | 
			
		||||
- Patch Netbird Script | Container Boot-Check | Debian/Ubuntu Only [@MickLesk](https://github.com/MickLesk) ([#528](https://github.com/community-scripts/ProxmoxVE/pull/528))
 | 
			
		||||
- Install MongoDB 4.2 for non-AVX CPUs in Unifi LXC [@ColinOppenheim](https://github.com/ColinOppenheim) ([#319](https://github.com/community-scripts/ProxmoxVE/pull/319))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Fix json error in zabbix.json [@havardthom](https://github.com/havardthom) ([#543](https://github.com/community-scripts/ProxmoxVE/pull/543))
 | 
			
		||||
- Fix another json error in add-netbird-lxc.json [@havardthom](https://github.com/havardthom) ([#545](https://github.com/community-scripts/ProxmoxVE/pull/545))
 | 
			
		||||
 | 
			
		||||
## 2024-11-26
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Fix Vikunja install script to prevent database deletion upon updating [@vhsdream](https://github.com/vhsdream) ([#524](https://github.com/community-scripts/ProxmoxVE/pull/524))
 | 
			
		||||
 | 
			
		||||
## 2024-11-25
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 💥 Breaking Changes
 | 
			
		||||
 | 
			
		||||
- Remove Scrypted script [@MickLesk](https://github.com/MickLesk) ([#511](https://github.com/community-scripts/ProxmoxVE/pull/511))
 | 
			
		||||
  - Because of request from Scrypted maintainer: [#494](https://github.com/community-scripts/ProxmoxVE/issues/494)
 | 
			
		||||
  - Official Scrypted script can be used instead: https://docs.scrypted.app/installation.html#proxmox-ve
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Fix bugs in Calibre-Web update [@havardthom](https://github.com/havardthom) ([#517](https://github.com/community-scripts/ProxmoxVE/pull/517))
 | 
			
		||||
- Fix upload folder in listmonk LXC [@bvdberg01](https://github.com/bvdberg01) ([#515](https://github.com/community-scripts/ProxmoxVE/pull/515))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Fix website url in Zoraxy documentation [@miggi92](https://github.com/miggi92) ([#506](https://github.com/community-scripts/ProxmoxVE/pull/506))
 | 
			
		||||
 | 
			
		||||
## 2024-11-24
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										90
									
								
								ct/2fauth.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										90
									
								
								ct/2fauth.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,90 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 community-scripts ORG
 | 
			
		||||
# Author: jkrgr0
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://docs.2fauth.app/
 | 
			
		||||
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="2FAuth"
 | 
			
		||||
TAGS="2fa;authenticator"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
 | 
			
		||||
    # Check if installation is present | -f for file, -d for folder
 | 
			
		||||
    if [[ ! -d "/opt/2fauth" ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    # Crawling the new version and checking whether an update is required
 | 
			
		||||
    RELEASE=$(curl -s https://api.github.com/repos/Bubka/2FAuth/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
 | 
			
		||||
    if [[ "${RELEASE}" != "$(cat /opt/2fauth_version.txt)" ]] || [[ ! -f /opt/2fauth_version.txt ]]; then
 | 
			
		||||
        msg_info "Updating $APP to ${RELEASE}"
 | 
			
		||||
 | 
			
		||||
        apt-get update &>/dev/null
 | 
			
		||||
        apt-get -y upgrade &>/dev/null
 | 
			
		||||
 | 
			
		||||
        # Creating Backup
 | 
			
		||||
        msg_info "Creating Backup"
 | 
			
		||||
        mv "/opt/2fauth" "/opt/2fauth-backup"
 | 
			
		||||
        msg_ok "Backup Created"
 | 
			
		||||
 | 
			
		||||
        # Execute Update
 | 
			
		||||
        wget -q "https://github.com/Bubka/2FAuth/archive/refs/tags/${RELEASE}.zip"
 | 
			
		||||
        unzip -q "${RELEASE}.zip"
 | 
			
		||||
        mv "2FAuth-${RELEASE//v}/" "/opt/2fauth"
 | 
			
		||||
        mv "/opt/2fauth-backup/.env" "/opt/2fauth/.env"
 | 
			
		||||
        mv "/opt/2fauth-backup/storage" "/opt/2fauth/storage"
 | 
			
		||||
        cd "/opt/2fauth" || return
 | 
			
		||||
 | 
			
		||||
        chown -R www-data: "/opt/2fauth"
 | 
			
		||||
        chmod -R 755 "/opt/2fauth"
 | 
			
		||||
 | 
			
		||||
        export COMPOSER_ALLOW_SUPERUSER=1
 | 
			
		||||
        composer install --no-dev --prefer-source &>/dev/null
 | 
			
		||||
 | 
			
		||||
        php artisan 2fauth:install
 | 
			
		||||
 | 
			
		||||
        # Cleaning up
 | 
			
		||||
        msg_info "Cleaning Up"
 | 
			
		||||
        rm -rf "v${RELEASE}.zip"
 | 
			
		||||
        $STD apt-get -y autoremove
 | 
			
		||||
        $STD apt-get -y autoclean
 | 
			
		||||
        msg_ok "Cleanup Completed"
 | 
			
		||||
 | 
			
		||||
        # Last Action
 | 
			
		||||
        echo "${RELEASE}" >/opt/2fauth_version.txt
 | 
			
		||||
        msg_ok "Updated $APP to ${RELEASE}"
 | 
			
		||||
    else
 | 
			
		||||
        msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
    fi
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:80${CL}"
 | 
			
		||||
@@ -2,69 +2,44 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://actualbudget.org/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ___        __              __   ____            __           __
 | 
			
		||||
   /   | _____/ /___  ______ _/ /  / __ )__  ______/ /___ ____  / /_
 | 
			
		||||
  / /| |/ ___/ __/ / / / __ `/ /  / __  / / / / __  / __ `/ _ \/ __/
 | 
			
		||||
 / ___ / /__/ /_/ /_/ / /_/ / /  / /_/ / /_/ / /_/ / /_/ /  __/ /_
 | 
			
		||||
/_/  |_\___/\__/\__,_/\__,_/_/  /_____/\__,_/\__,_/\__, /\___/\__/
 | 
			
		||||
                                                  /____/
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Actual Budget"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="finance"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/actualbudget ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating ${APP}"
 | 
			
		||||
systemctl stop actualbudget.service
 | 
			
		||||
cd /opt/actualbudget
 | 
			
		||||
git pull &>/dev/null
 | 
			
		||||
yarn install &>/dev/null
 | 
			
		||||
systemctl start actualbudget.service
 | 
			
		||||
msg_ok "Successfully Updated ${APP}"
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /opt/actualbudget ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Updating ${APP}"
 | 
			
		||||
    systemctl stop actualbudget.service
 | 
			
		||||
    cd /opt/actualbudget
 | 
			
		||||
    git pull &>/dev/null
 | 
			
		||||
    yarn install &>/dev/null
 | 
			
		||||
    systemctl start actualbudget.service
 | 
			
		||||
    msg_ok "Successfully Updated ${APP}"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -72,5 +47,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:5006${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:5006${CL}"
 | 
			
		||||
@@ -2,63 +2,38 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://adguard.com/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ___       __                           __
 | 
			
		||||
   /   | ____/ /___ ___  ______ __________/ /
 | 
			
		||||
  / /| |/ __  / __  / / / / __  / ___/ __  / 
 | 
			
		||||
 / ___ / /_/ / /_/ / /_/ / /_/ / /  / /_/ /  
 | 
			
		||||
/_/  |_\__,_/\__, /\__,_/\__,_/_/   \__,_/   
 | 
			
		||||
            /____/                           
 | 
			
		||||
 
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Adguard"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_tags="adblock"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/AdGuardHome ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_error "Adguard Home should be updated via the user interface."
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /opt/AdGuardHome ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_error "Adguard Home should be updated via the user interface."
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -66,5 +41,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} Setup should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:3000${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"
 | 
			
		||||
 
 | 
			
		||||
@@ -1,102 +1,77 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck
 | 
			
		||||
# Co-Author: MickLesk (Canbiz)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Author: MickLesk (Canbiz)
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://adventurelog.app/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ___       __                 __                  __               
 | 
			
		||||
   /   | ____/ /   _____  ____  / /___  __________  / /   ____  ____ _
 | 
			
		||||
  / /| |/ __  / | / / _ \/ __ \/ __/ / / / ___/ _ \/ /   / __ \/ __ `/
 | 
			
		||||
 / ___ / /_/ /| |/ /  __/ / / / /_/ /_/ / /  /  __/ /___/ /_/ / /_/ / 
 | 
			
		||||
/_/  |_\__,_/ |___/\___/_/ /_/\__/\__,_/_/   \___/_____/\____/\__, /  
 | 
			
		||||
                                                             /____/   
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="AdventureLog"
 | 
			
		||||
var_tags="traveling"
 | 
			
		||||
var_disk="7"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/adventurelog ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
RELEASE=$(curl -s https://api.github.com/repos/seanmorley15/AdventureLog/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
  msg_info "Stopping Services"
 | 
			
		||||
  systemctl stop adventurelog-backend
 | 
			
		||||
  systemctl stop adventurelog-frontend
 | 
			
		||||
  msg_ok "Services Stopped"
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -d /opt/adventurelog ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/seanmorley15/AdventureLog/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
  if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
    msg_info "Stopping Services"
 | 
			
		||||
    systemctl stop adventurelog-backend
 | 
			
		||||
    systemctl stop adventurelog-frontend
 | 
			
		||||
    msg_ok "Services Stopped"
 | 
			
		||||
 | 
			
		||||
  msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
  cp /opt/adventurelog/backend/server/.env /opt/server.env
 | 
			
		||||
  cp /opt/adventurelog/frontend/.env /opt/frontend.env
 | 
			
		||||
  wget -q "https://github.com/seanmorley15/AdventureLog/archive/refs/tags/v${RELEASE}.zip"
 | 
			
		||||
  unzip -q v${RELEASE}.zip
 | 
			
		||||
  mv AdventureLog-${RELEASE} /opt/adventurelog
 | 
			
		||||
  mv /opt/server.env /opt/adventurelog/backend/server/.env
 | 
			
		||||
  cd /opt/adventurelog/backend/server
 | 
			
		||||
  pip install --upgrade pip &>/dev/null
 | 
			
		||||
  pip install -r requirements.txt &>/dev/null
 | 
			
		||||
  python3 manage.py collectstatic --noinput &>/dev/null
 | 
			
		||||
  python3 manage.py migrate &>/dev/null
 | 
			
		||||
  
 | 
			
		||||
  mv /opt/frontend.env /opt/adventurelog/frontend/.env
 | 
			
		||||
  cd /opt/adventurelog/frontend
 | 
			
		||||
  pnpm install &>/dev/null
 | 
			
		||||
  pnpm run build &>/dev/null
 | 
			
		||||
  echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
  msg_ok "Updated ${APP}"
 | 
			
		||||
    msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
    cp /opt/adventurelog/backend/server/.env /opt/server.env
 | 
			
		||||
    cp /opt/adventurelog/frontend/.env /opt/frontend.env
 | 
			
		||||
    wget -q "https://github.com/seanmorley15/AdventureLog/archive/refs/tags/v${RELEASE}.zip"
 | 
			
		||||
    unzip -q v${RELEASE}.zip
 | 
			
		||||
    mv AdventureLog-${RELEASE} /opt/adventurelog
 | 
			
		||||
    mv /opt/server.env /opt/adventurelog/backend/server/.env
 | 
			
		||||
    cd /opt/adventurelog/backend/server
 | 
			
		||||
    pip install --upgrade pip &>/dev/null
 | 
			
		||||
    pip install -r requirements.txt &>/dev/null
 | 
			
		||||
    python3 manage.py collectstatic --noinput &>/dev/null
 | 
			
		||||
    python3 manage.py migrate &>/dev/null
 | 
			
		||||
 | 
			
		||||
  msg_info "Starting Services"
 | 
			
		||||
  systemctl start adventurelog-backend
 | 
			
		||||
  systemctl start adventurelog-frontend
 | 
			
		||||
  msg_ok "Started Services"
 | 
			
		||||
    mv /opt/frontend.env /opt/adventurelog/frontend/.env
 | 
			
		||||
    cd /opt/adventurelog/frontend
 | 
			
		||||
    pnpm install &>/dev/null
 | 
			
		||||
    pnpm run build &>/dev/null
 | 
			
		||||
    echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
    msg_ok "Updated ${APP}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Cleaning Up"
 | 
			
		||||
  rm -rf v${RELEASE}.zip
 | 
			
		||||
  msg_ok "Cleaned"
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
else
 | 
			
		||||
  msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
fi
 | 
			
		||||
exit
 | 
			
		||||
    msg_info "Starting Services"
 | 
			
		||||
    systemctl start adventurelog-backend
 | 
			
		||||
    systemctl start adventurelog-frontend
 | 
			
		||||
    msg_ok "Started Services"
 | 
			
		||||
 | 
			
		||||
    msg_info "Cleaning Up"
 | 
			
		||||
    rm -rf v${RELEASE}.zip
 | 
			
		||||
    msg_ok "Cleaned"
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
  fi
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -104,5 +79,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} Setup should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:3000${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"
 | 
			
		||||
@@ -2,63 +2,38 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.ispyconnect.com/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ___                    __  ____ _    ______
 | 
			
		||||
   /   | ____ ____  ____  / /_/ __ \ |  / / __ \
 | 
			
		||||
  / /| |/ __ `/ _ \/ __ \/ __/ / / / | / / /_/ /
 | 
			
		||||
 / ___ / /_/ /  __/ / / / /_/ /_/ /| |/ / _, _/
 | 
			
		||||
/_/  |_\__, /\___/_/ /_/\__/_____/ |___/_/ |_|
 | 
			
		||||
      /____/
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="AgentDVR"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_tags="dvr"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_os="ubuntu"
 | 
			
		||||
var_version="22.04"
 | 
			
		||||
var_unprivileged="0"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="0"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/agentdvr ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_error "There is currently no update path available."
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /opt/agentdvr ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_error "There is currently no update path available."
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -66,5 +41,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP}${CL} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:8090${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8090${CL}"
 | 
			
		||||
@@ -2,57 +2,27 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
  clear
 | 
			
		||||
  cat <<"EOF"
 | 
			
		||||
    ____             __            
 | 
			
		||||
   / __ \____  _____/ /_  __  _____
 | 
			
		||||
  / / / / __ \/ ___/ //_/ _ \/ ___/
 | 
			
		||||
 / /_/ / /_/ / /__/ ,< /  __/ /    
 | 
			
		||||
/_____/\____/\___/_/|_|\___/_/     
 | 
			
		||||
 Alpine
 | 
			
		||||
 
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Alpine-Docker"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_tags="docker;alpine"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="alpine"
 | 
			
		||||
var_version="3.19"
 | 
			
		||||
var_version="3.20"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
  if ! apk -e info newt >/dev/null 2>&1; then
 | 
			
		||||
    apk add -q newt
 | 
			
		||||
 
 | 
			
		||||
@@ -2,57 +2,27 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
  clear
 | 
			
		||||
  cat <<"EOF"
 | 
			
		||||
   ______           ____                 
 | 
			
		||||
  / ____/________ _/ __/___ _____  ____ _
 | 
			
		||||
 / / __/ ___/ __  / /_/ __  / __ \/ __  /
 | 
			
		||||
/ /_/ / /  / /_/ / __/ /_/ / / / / /_/ / 
 | 
			
		||||
\____/_/   \__,_/_/  \__,_/_/ /_/\__,_/  
 | 
			
		||||
 Alpine
 | 
			
		||||
 
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Alpine-Grafana"
 | 
			
		||||
var_disk="1"
 | 
			
		||||
var_tags="alpine;monitoring"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="256"
 | 
			
		||||
var_disk="1"
 | 
			
		||||
var_os="alpine"
 | 
			
		||||
var_version="3.19"
 | 
			
		||||
var_version="3.20"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
  if ! apk -e info newt >/dev/null 2>&1; then
 | 
			
		||||
    apk add -q newt
 | 
			
		||||
 
 | 
			
		||||
@@ -2,56 +2,27 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
  clear
 | 
			
		||||
  cat <<"EOF"
 | 
			
		||||
    _   __          __       __                __   __  __      __
 | 
			
		||||
   / | / /__  _  __/ /______/ /___  __  ______/ /  / / / /_  __/ /_
 | 
			
		||||
  /  |/ / _ \| |/_/ __/ ___/ / __ \/ / / / __  /  / /_/ / / / / __ \
 | 
			
		||||
 / /|  /  __/>  </ /_/ /__/ / /_/ / /_/ / /_/ /  / __  / /_/ / /_/ /
 | 
			
		||||
/_/ |_/\___/_/|_|\__/\___/_/\____/\__,_/\__,_/  /_/ /_/\__,_/_.___/
 | 
			
		||||
Alpine
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Alpine-Nextcloud"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_tags="alpine;cloud"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="alpine"
 | 
			
		||||
var_version="3.19"
 | 
			
		||||
var_version="3.20"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core 
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
  if [[ ! -d /usr/share/webapps/nextcloud ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
 
 | 
			
		||||
@@ -2,57 +2,27 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
  clear
 | 
			
		||||
  cat <<"EOF"
 | 
			
		||||
 _    __            ____                          __         
 | 
			
		||||
| |  / /___ ___  __/ / /__      ______ __________/ /__  ____ 
 | 
			
		||||
| | / / __ `/ / / / / __/ | /| / / __ `/ ___/ __  / _ \/ __ \
 | 
			
		||||
| |/ / /_/ / /_/ / / /_ | |/ |/ / /_/ / /  / /_/ /  __/ / / /
 | 
			
		||||
|___/\__,_/\__,_/_/\__/ |__/|__/\__,_/_/   \__,_/\___/_/ /_/ 
 | 
			
		||||
 Alpine                                                 
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Alpine-Vaultwarden"
 | 
			
		||||
var_disk="0.3"
 | 
			
		||||
var_tags="alpine;vault"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="256"
 | 
			
		||||
var_disk="0.3"
 | 
			
		||||
var_os="alpine"
 | 
			
		||||
var_version="3.19"
 | 
			
		||||
var_version="3.20"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
  if ! apk -e info newt >/dev/null 2>&1; then
 | 
			
		||||
    apk add -q newt
 | 
			
		||||
@@ -85,7 +55,7 @@ function update_script() {
 | 
			
		||||
          sed -i "s|\"admin_token\": .*|\"admin_token\": \"${TOKEN}\",|" /var/lib/vaultwarden/config.json
 | 
			
		||||
        fi
 | 
			
		||||
        rc-service vaultwarden restart -q
 | 
			
		||||
      fi      
 | 
			
		||||
      fi
 | 
			
		||||
      clear
 | 
			
		||||
      exit
 | 
			
		||||
      ;;
 | 
			
		||||
 
 | 
			
		||||
@@ -2,57 +2,27 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
  clear
 | 
			
		||||
  cat <<"EOF"
 | 
			
		||||
 _____   _       __             ___   __  _______  ____________
 | 
			
		||||
/__  /  (_)___ _/ /_  ___  ___ |__ \ /  |/  / __ \/_  __/_  __/
 | 
			
		||||
  / /  / / __  / __ \/ _ \/ _ \__/ // /|_/ / / / / / /   / /   
 | 
			
		||||
 / /__/ / /_/ / /_/ /  __/  __/ __// /  / / /_/ / / /   / /    
 | 
			
		||||
/____/_/\__, /_.___/\___/\___/____/_/  /_/\___\_\/_/   /_/     
 | 
			
		||||
       /____/ Alpine
 | 
			
		||||
 
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Alpine-Zigbee2MQTT"
 | 
			
		||||
var_tags="alpine;zigbee;mqtt;smarthome"
 | 
			
		||||
var_disk="0.3"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="256"
 | 
			
		||||
var_os="alpine"
 | 
			
		||||
var_version="3.19"
 | 
			
		||||
var_version="3.20"
 | 
			
		||||
var_unprivileged="0"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="0"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
  if ! apk -e info newt >/dev/null 2>&1; then
 | 
			
		||||
    apk add -q newt
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										70
									
								
								ct/alpine.sh
									
									
									
									
									
								
							
							
						
						
									
										70
									
								
								ct/alpine.sh
									
									
									
									
									
								
							@@ -2,67 +2,37 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ___    __      _          
 | 
			
		||||
   /   |  / /___  (_)___  ___ 
 | 
			
		||||
  / /| | / / __ \/ / __ \/ _ \
 | 
			
		||||
 / ___ |/ / /_/ / / / / /  __/
 | 
			
		||||
/_/  |_/_/ .___/_/_/ /_/\___/ 
 | 
			
		||||
        /_/                   
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Alpine"
 | 
			
		||||
var_disk="0.1"
 | 
			
		||||
var_tags="os;alpine"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="0.1"
 | 
			
		||||
var_os="alpine"
 | 
			
		||||
var_version="3.19"
 | 
			
		||||
var_version="3.20"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW="-password alpine"
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
UPD=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "SUPPORT" --radiolist --cancel-button Exit-Script "Spacebar = Select" 11 58 1 \
 | 
			
		||||
  "1" "Check for Alpine Updates" ON \
 | 
			
		||||
  3>&1 1>&2 2>&3)
 | 
			
		||||
  UPD=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "SUPPORT" --radiolist --cancel-button Exit-Script "Spacebar = Select" 11 58 1 \
 | 
			
		||||
    "1" "Check for Alpine Updates" ON \
 | 
			
		||||
    3>&1 1>&2 2>&3)
 | 
			
		||||
 | 
			
		||||
header_info
 | 
			
		||||
if [ "$UPD" == "1" ]; then
 | 
			
		||||
apk update && apk upgrade
 | 
			
		||||
exit;
 | 
			
		||||
fi
 | 
			
		||||
  header_info
 | 
			
		||||
  if [ "$UPD" == "1" ]; then
 | 
			
		||||
    apk update && apk upgrade
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
 
 | 
			
		||||
@@ -2,65 +2,39 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://cassandra.apache.org/_/index.html
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ___                     __            ______                                __
 | 
			
		||||
   /   |  ____  ____ ______/ /_  ___     / ____/___ _______________ _____  ____/ /________ _
 | 
			
		||||
  / /| | / __ \/ __ `/ ___/ __ \/ _ \   / /   / __ `/ ___/ ___/ __ `/ __ \/ __  / ___/ __ `/
 | 
			
		||||
 / ___ |/ /_/ / /_/ / /__/ / / /  __/  / /___/ /_/ (__  |__  ) /_/ / / / / /_/ / /  / /_/ /
 | 
			
		||||
/_/  |_/ .___/\__,_/\___/_/ /_/\___/   \____/\__,_/____/____/\__,_/_/ /_/\__,_/_/   \__,_/
 | 
			
		||||
      /_/
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Apache-Cassandra"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="database;NoSQL"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
VERBOSE="yes"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /etc/systemd/system/cassandra.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_error "There is currently no update path available."
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -f /etc/systemd/system/cassandra.service ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_error "There is currently no update path available."
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -68,3 +42,4 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
@@ -2,65 +2,38 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://couchdb.apache.org/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ___                     __            ______                 __    ____  ____ 
 | 
			
		||||
   /   |  ____  ____ ______/ /_  ___     / ____/___  __  _______/ /_  / __ \/ __ )
 | 
			
		||||
  / /| | / __ \/ __ `/ ___/ __ \/ _ \   / /   / __ \/ / / / ___/ __ \/ / / / __  |
 | 
			
		||||
 / ___ |/ /_/ / /_/ / /__/ / / /  __/  / /___/ /_/ / /_/ / /__/ / / / /_/ / /_/ / 
 | 
			
		||||
/_/  |_/ .___/\__,_/\___/_/ /_/\___/   \____/\____/\__,_/\___/_/ /_/_____/_____/  
 | 
			
		||||
      /_/                                                                         
 | 
			
		||||
                                
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Apache-CouchDB"
 | 
			
		||||
var_disk="10"
 | 
			
		||||
var_tags="database"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="4096"
 | 
			
		||||
var_disk="10"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
VERBOSE="yes"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /etc/systemd/system/couchdb.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_error "There is currently no update path available."
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -f /etc/systemd/system/couchdb.service ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_error "There is currently no update path available."
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -68,5 +41,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:5984/_utils/${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:5984/_utils/${CL}"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										47
									
								
								ct/apache-guacamole.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								ct/apache-guacamole.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,47 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/refs/heads/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 community-scripts ORG
 | 
			
		||||
# Author: Michel Roegl-Brunner (michelroegl-brunner)
 | 
			
		||||
# License: | MIT https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://guacamole.apache.org/
 | 
			
		||||
 | 
			
		||||
#App Default Values
 | 
			
		||||
APP="Apache-Guacamole"
 | 
			
		||||
TAGS="webserver;remote"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /opt/apache-guacamole ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_error "Ther is currently no automatic update function for ${APP}."
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080/guacamole${CL}"
 | 
			
		||||
 | 
			
		||||
@@ -2,67 +2,41 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://wiki.debian.org/AptCacherNg
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ___          __     ______           __                 _   ________
 | 
			
		||||
   /   |  ____  / /_   / ____/___ ______/ /_  ___  _____   / | / / ____/
 | 
			
		||||
  / /| | / __ \/ __/__/ /   / __ `/ ___/ __ \/ _ \/ ___/__/  |/ / / __
 | 
			
		||||
 / ___ |/ /_/ / /_/__/ /___/ /_/ / /__/ / / /  __/ /  /__/ /|  / /_/ /
 | 
			
		||||
/_/  |_/ .___/\__/   \____/\__,_/\___/_/ /_/\___/_/     /_/ |_/\____/
 | 
			
		||||
      /_/
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Apt-Cacher-NG"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_tags="caching"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating $APP LXC"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get -y upgrade &>/dev/null
 | 
			
		||||
msg_ok "Updated $APP LXC"
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /var ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Updating $APP LXC"
 | 
			
		||||
    apt-get update &>/dev/null
 | 
			
		||||
    apt-get -y upgrade &>/dev/null
 | 
			
		||||
    msg_ok "Updated $APP LXC"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -70,5 +44,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} maintenance page should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:3142/acng-report.html${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3142/acng-report.html{CL}"
 | 
			
		||||
 
 | 
			
		||||
@@ -2,77 +2,52 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://archivebox.io/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ___              __    _            ____
 | 
			
		||||
   /   |  __________/ /_  (_)   _____  / __ )____  _  __
 | 
			
		||||
  / /| | / ___/ ___/ __ \/ / | / / _ \/ __  / __ \| |/_/
 | 
			
		||||
 / ___ |/ /  / /__/ / / / /| |/ /  __/ /_/ / /_/ />  <
 | 
			
		||||
/_/  |_/_/   \___/_/ /_/_/ |___/\___/_____/\____/_/|_|
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="ArchiveBox"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_tags="archive;bookmark"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/archivebox ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Stopping ${APP}"
 | 
			
		||||
systemctl stop archivebox
 | 
			
		||||
msg_ok "Stopped ${APP}"
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /opt/archivebox ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Stopping ${APP}"
 | 
			
		||||
    systemctl stop archivebox
 | 
			
		||||
    msg_ok "Stopped ${APP}"
 | 
			
		||||
 | 
			
		||||
msg_info "Updating ${APP}"
 | 
			
		||||
cd /opt/archivebox/data
 | 
			
		||||
pip install --upgrade --ignore-installed archivebox
 | 
			
		||||
sudo -u archivebox archivebox init
 | 
			
		||||
msg_ok "Updated ${APP}"
 | 
			
		||||
    msg_info "Updating ${APP}"
 | 
			
		||||
    cd /opt/archivebox/data
 | 
			
		||||
    pip install --upgrade --ignore-installed archivebox
 | 
			
		||||
    sudo -u archivebox archivebox init
 | 
			
		||||
    msg_ok "Updated ${APP}"
 | 
			
		||||
 | 
			
		||||
msg_info "Starting ${APP}"
 | 
			
		||||
systemctl start archivebox
 | 
			
		||||
msg_ok "Started ${APP}"
 | 
			
		||||
    msg_info "Starting ${APP}"
 | 
			
		||||
    systemctl start archivebox
 | 
			
		||||
    msg_ok "Started ${APP}"
 | 
			
		||||
 | 
			
		||||
msg_ok "Updated Successfully"
 | 
			
		||||
exit
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -80,5 +55,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:8000/admin/login${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8000/admin/login${CL}"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										79
									
								
								ct/aria2.sh
									
									
									
									
									
								
							
							
						
						
									
										79
									
								
								ct/aria2.sh
									
									
									
									
									
								
							@@ -2,65 +2,41 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://aria2.github.io/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ___         _      ___
 | 
			
		||||
   /   |  _____(_)___ |__ \
 | 
			
		||||
  / /| | / ___/ / __ `/_/ /
 | 
			
		||||
 / ___ |/ /  / / /_/ / __/
 | 
			
		||||
/_/  |_/_/  /_/\__,_/____/
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Aria2"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_tags="download-utility"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="1028"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating $APP LXC"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get -y upgrade &>/dev/null
 | 
			
		||||
msg_ok "Updated $APP LXC"
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /var ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Updating $APP LXC"
 | 
			
		||||
    apt-get update &>/dev/null
 | 
			
		||||
    apt-get -y upgrade &>/dev/null
 | 
			
		||||
    msg_ok "Updated $APP LXC"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -68,5 +44,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:6880${CL}"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:6880${CL}"
 | 
			
		||||
 
 | 
			
		||||
@@ -2,63 +2,38 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.audiobookshelf.org/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
                   ___       __                __        __         ______
 | 
			
		||||
  ____ ___  ______/ (_)___  / /_  ____  ____  / /_______/ /_  ___  / / __/
 | 
			
		||||
 / __ `/ / / / __  / / __ \/ __ \/ __ \/ __ \/ //_/ ___/ __ \/ _ \/ / /_  
 | 
			
		||||
/ /_/ / /_/ / /_/ / / /_/ / /_/ / /_/ / /_/ / ,< (__  ) / / /  __/ / __/  
 | 
			
		||||
\__,_/\__,_/\__,_/_/\____/_.___/\____/\____/_/|_/____/_/ /_/\___/_/_/     
 | 
			
		||||
                                                                          
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="audiobookshelf"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="podcast;audiobook"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /etc/apt/trusted.gpg.d/audiobookshelf-ppa.asc ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
echo "This application receives updates through the APT package manager."
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -f /etc/apt/trusted.gpg.d/audiobookshelf-ppa.asc ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    echo "This application receives updates through the APT package manager."
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -66,5 +41,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:13378${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:13378${CL}"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										85
									
								
								ct/authentik.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										85
									
								
								ct/authentik.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,85 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 community-scripts ORG
 | 
			
		||||
# Author: remz1337
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Authentik"
 | 
			
		||||
var_tags="identity-provider"
 | 
			
		||||
var_disk="15"
 | 
			
		||||
var_cpu="6"
 | 
			
		||||
var_ram="8192"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -f /etc/systemd/system/authentik-server.service ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/goauthentik/authentik/releases/latest | grep "tarball_url" | awk '{print substr($2, 2, length($2)-3)}')
 | 
			
		||||
  if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
 | 
			
		||||
    msg_info "Stopping ${APP}"
 | 
			
		||||
    systemctl stop authentik-server
 | 
			
		||||
    systemctl stop authentik-worker
 | 
			
		||||
    msg_ok "Stopped ${APP}"
 | 
			
		||||
 | 
			
		||||
    msg_info "Building ${APP} website"
 | 
			
		||||
    mkdir -p /opt/authentik
 | 
			
		||||
    wget -qO authentik.tar.gz "${RELEASE}"
 | 
			
		||||
    tar -xzf authentik.tar.gz -C /opt/authentik --strip-components 1 --overwrite
 | 
			
		||||
    rm -rf authentik.tar.gz
 | 
			
		||||
    cd /opt/authentik/website
 | 
			
		||||
    npm install &>/dev/null
 | 
			
		||||
    npm run build-bundled &>/dev/null
 | 
			
		||||
    cd /opt/authentik/web
 | 
			
		||||
    npm install &>/dev/null
 | 
			
		||||
    npm run build &>/dev/null
 | 
			
		||||
    msg_ok "Built ${APP} website"
 | 
			
		||||
 | 
			
		||||
    msg_info "Installing Python Dependencies"
 | 
			
		||||
    cd /opt/authentik
 | 
			
		||||
    poetry install --only=main --no-ansi --no-interaction --no-root &>/dev/null
 | 
			
		||||
    poetry export --without-hashes --without-urls -f requirements.txt --output requirements.txt &>/dev/null
 | 
			
		||||
    pip install --no-cache-dir -r requirements.txt &>/dev/null
 | 
			
		||||
    pip install . &>/dev/null
 | 
			
		||||
    msg_ok "Installed Python Dependencies"
 | 
			
		||||
 | 
			
		||||
    msg_info "Updating ${APP} to v${RELEASE} (Patience)"
 | 
			
		||||
    cp -r /opt/authentik/authentik/blueprints /opt/authentik/blueprints
 | 
			
		||||
    bash /opt/authentik/lifecycle/ak migrate &>/dev/null
 | 
			
		||||
    echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
    msg_ok "Updated ${APP} to v${RELEASE}"
 | 
			
		||||
 | 
			
		||||
    msg_info "Starting ${APP}"
 | 
			
		||||
    systemctl start authentik-server
 | 
			
		||||
    systemctl start authentik-worker
 | 
			
		||||
    msg_ok "Started ${APP}"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required. ${APP} is already at v${RELEASE}"
 | 
			
		||||
  fi
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:9000/if/flow/initial-setup/${CL}"
 | 
			
		||||
@@ -2,77 +2,52 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://autobrr.com/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ___         __        __             
 | 
			
		||||
   /   | __  __/ /_____  / /_  __________
 | 
			
		||||
  / /| |/ / / / __/ __ \/ __ \/ ___/ ___/
 | 
			
		||||
 / ___ / /_/ / /_/ /_/ / /_/ / /  / /    
 | 
			
		||||
/_/  |_\__,_/\__/\____/_.___/_/  /_/     
 | 
			
		||||
                                         
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Autobrr"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_tags="arr;"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /root/.config/autobrr/config.toml ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Stopping ${APP} LXC"
 | 
			
		||||
systemctl stop autobrr.service
 | 
			
		||||
msg_ok "Stopped ${APP} LXC"
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -f /root/.config/autobrr/config.toml ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Stopping ${APP} LXC"
 | 
			
		||||
    systemctl stop autobrr.service
 | 
			
		||||
    msg_ok "Stopped ${APP} LXC"
 | 
			
		||||
 | 
			
		||||
msg_info "Updating ${APP} LXC"
 | 
			
		||||
rm -rf /usr/local/bin/*
 | 
			
		||||
wget -q $(curl -s https://api.github.com/repos/autobrr/autobrr/releases/latest | grep download | grep linux_x86_64 | cut -d\" -f4)
 | 
			
		||||
tar -C /usr/local/bin -xzf autobrr*.tar.gz
 | 
			
		||||
rm -rf autobrr*.tar.gz
 | 
			
		||||
msg_ok "Updated ${APP} LXC"
 | 
			
		||||
    msg_info "Updating ${APP} LXC"
 | 
			
		||||
    rm -rf /usr/local/bin/*
 | 
			
		||||
    wget -q $(curl -s https://api.github.com/repos/autobrr/autobrr/releases/latest | grep download | grep linux_x86_64 | cut -d\" -f4)
 | 
			
		||||
    tar -C /usr/local/bin -xzf autobrr*.tar.gz
 | 
			
		||||
    rm -rf autobrr*.tar.gz
 | 
			
		||||
    msg_ok "Updated ${APP} LXC"
 | 
			
		||||
 | 
			
		||||
msg_info "Starting ${APP} LXC"
 | 
			
		||||
systemctl start autobrr.service
 | 
			
		||||
msg_ok "Started ${APP} LXC"
 | 
			
		||||
msg_ok "Updated Successfully"
 | 
			
		||||
exit
 | 
			
		||||
    msg_info "Starting ${APP} LXC"
 | 
			
		||||
    systemctl start autobrr.service
 | 
			
		||||
    msg_ok "Started ${APP} LXC"
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -80,5 +55,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:7474${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:7474${CL}"
 | 
			
		||||
							
								
								
									
										73
									
								
								ct/bazarr.sh
									
									
									
									
									
								
							
							
						
						
									
										73
									
								
								ct/bazarr.sh
									
									
									
									
									
								
							@@ -2,65 +2,37 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.bazarr.media/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ____
 | 
			
		||||
   / __ )____ _____  ____ ___________
 | 
			
		||||
  / __  / __ `/_  / / __ `/ ___/ ___/
 | 
			
		||||
 / /_/ / /_/ / / /_/ /_/ / /  / /
 | 
			
		||||
/_____/\__,_/ /___/\__,_/_/  /_/
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Bazarr"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="arr"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core 
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /var/lib/bazarr/ ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating $APP LXC"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get -y upgrade &>/dev/null
 | 
			
		||||
msg_ok "Updated $APP LXC"
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /var/lib/bazarr/ ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
    msg_info "Updating $APP LXC"
 | 
			
		||||
    apt-get update &>/dev/null
 | 
			
		||||
    apt-get -y upgrade &>/dev/null
 | 
			
		||||
    msg_ok "Updated $APP LXC"
 | 
			
		||||
exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -69,5 +41,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:6767${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:6767${CL}"
 | 
			
		||||
							
								
								
									
										73
									
								
								ct/blocky.sh
									
									
									
									
									
								
							
							
						
						
									
										73
									
								
								ct/blocky.sh
									
									
									
									
									
								
							@@ -2,66 +2,38 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://0xerr0r.github.io/blocky/latest/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ____  __           __        
 | 
			
		||||
   / __ )/ /___  _____/ /____  __
 | 
			
		||||
  / __  / / __ \/ ___/ //_/ / / /
 | 
			
		||||
 / /_/ / / /_/ / /__/ ,< / /_/ / 
 | 
			
		||||
/_____/_/\____/\___/_/|_|\__, /  
 | 
			
		||||
                        /____/   
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Blocky"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_tags="adblock"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core 
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating $APP LXC"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get -y upgrade &>/dev/null
 | 
			
		||||
msg_ok "Updated $APP LXC"
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
        msg_info "Updating $APP LXC"
 | 
			
		||||
        apt-get update &>/dev/null
 | 
			
		||||
        apt-get -y upgrade &>/dev/null
 | 
			
		||||
        msg_ok "Updated $APP LXC"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -69,3 +41,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:4000${CL}"
 | 
			
		||||
							
								
								
									
										130
									
								
								ct/bookstack.sh
									
									
									
									
									
								
							
							
						
						
									
										130
									
								
								ct/bookstack.sh
									
									
									
									
									
								
							@@ -2,97 +2,81 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 community-scripts ORG
 | 
			
		||||
# Author: MickLesk (Canbiz)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://github.com/BookStackApp/BookStack
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ____              __        __             __  
 | 
			
		||||
   / __ )____  ____  / /_______/ /_____ ______/ /__
 | 
			
		||||
  / __  / __ \/ __ \/ //_/ ___/ __/ __ `/ ___/ //_/
 | 
			
		||||
 / /_/ / /_/ / /_/ / ,< (__  ) /_/ /_/ / /__/ ,<   
 | 
			
		||||
/_____/\____/\____/_/|_/____/\__/\__,_/\___/_/|_|  
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Bookstack"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="organizer"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/bookstack ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
RELEASE=$(curl -s https://api.github.com/repos/BookStackApp/BookStack/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
  msg_info "Stopping Apache2"
 | 
			
		||||
  systemctl stop apache2
 | 
			
		||||
  msg_ok "Services Stopped"
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -d /opt/bookstack ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/BookStackApp/BookStack/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
  if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
    msg_info "Stopping Apache2"
 | 
			
		||||
    systemctl stop apache2
 | 
			
		||||
    msg_ok "Services Stopped"
 | 
			
		||||
 | 
			
		||||
  msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
  cp /opt/bookstack/.env /opt/.env
 | 
			
		||||
  wget -q "https://github.com/BookStackApp/BookStack/archive/refs/tags/v${RELEASE}.zip"
 | 
			
		||||
  unzip -q v${RELEASE}.zip
 | 
			
		||||
  mv BookStack-${RELEASE} /opt/bookstack
 | 
			
		||||
  mv /opt/.env /opt/bookstack/.env
 | 
			
		||||
  COMPOSER_ALLOW_SUPERUSER=1 composer install --no-dev  &>/dev/null
 | 
			
		||||
  php artisan key:generate &>/dev/null
 | 
			
		||||
  php artisan migrate &>/dev/null
 | 
			
		||||
  echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
  msg_ok "Updated ${APP}"
 | 
			
		||||
    msg_info "Updating ${APP} to v${RELEASE}"
 | 
			
		||||
    mv /opt/bookstack /opt/bookstack-backup
 | 
			
		||||
    wget -q --directory-prefix=/opt "https://github.com/BookStackApp/BookStack/archive/refs/tags/v${RELEASE}.zip"
 | 
			
		||||
    unzip -q /opt/v${RELEASE}.zip -d /opt
 | 
			
		||||
    mv /opt/BookStack-${RELEASE} /opt/bookstack
 | 
			
		||||
    cp /opt/bookstack-backup/.env /opt/bookstack/.env
 | 
			
		||||
    cp -r /opt/bookstack-backup/public/uploads/ /opt/bookstack/public/uploads
 | 
			
		||||
    cp -r /opt/bookstack-backup/storage/uploads/ /opt/bookstack/storage/uploads
 | 
			
		||||
    cp -r /opt/bookstack-backup/themes/ /opt/bookstack/themes
 | 
			
		||||
    cd /opt/bookstack
 | 
			
		||||
    COMPOSER_ALLOW_SUPERUSER=1 composer install --no-dev &>/dev/null
 | 
			
		||||
    php artisan migrate --force &>/dev/null
 | 
			
		||||
    chown www-data:www-data -R /opt/bookstack /opt/bookstack/bootstrap/cache /opt/bookstack/public/uploads /opt/bookstack/storage
 | 
			
		||||
    chmod -R 755 /opt/bookstack /opt/bookstack/bootstrap/cache /opt/bookstack/public/uploads /opt/bookstack/storage
 | 
			
		||||
    chmod -R 775 /opt/bookstack/storage /opt/bookstack/bootstrap/cache /opt/bookstack/public/uploads
 | 
			
		||||
    chmod -R 640 /opt/bookstack/.env
 | 
			
		||||
    echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
    msg_ok "Updated ${APP} to v${RELEASE}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Starting Apache2"
 | 
			
		||||
  systemctl start apache2
 | 
			
		||||
  msg_ok "Started Apache2"
 | 
			
		||||
    msg_info "Starting Apache2"
 | 
			
		||||
    systemctl start apache2
 | 
			
		||||
    msg_ok "Started Apache2"
 | 
			
		||||
 | 
			
		||||
  msg_info "Cleaning Up"
 | 
			
		||||
  rm -rf v${RELEASE}.zip
 | 
			
		||||
  msg_ok "Cleaned"
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
else
 | 
			
		||||
  msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
fi
 | 
			
		||||
exit
 | 
			
		||||
    msg_info "Cleaning Up"
 | 
			
		||||
    rm -rf /opt/bookstack-backup
 | 
			
		||||
    rm -rf /opt/v${RELEASE}.zip
 | 
			
		||||
    msg_ok "Cleaned"
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required. ${APP} is already at v${RELEASE}"
 | 
			
		||||
  fi
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} Setup should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"
 | 
			
		||||
 
 | 
			
		||||
@@ -2,64 +2,35 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.bunkerweb.io/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ____              __            _       __     __
 | 
			
		||||
   / __ )__  ______  / /_____  ____| |     / /__  / /_
 | 
			
		||||
  / __  / / / / __ \/ //_/ _ \/ ___/ | /| / / _ \/ __ \
 | 
			
		||||
 / /_/ / /_/ / / / / ,< /  __/ /   | |/ |/ /  __/ /_/ /
 | 
			
		||||
/_____/\__,_/_/ /_/_/|_|\___/_/    |__/|__/\___/_.___/
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="BunkerWeb"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="webserver"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core 
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /etc/bunkerweb ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
 | 
			
		||||
RELEASE=$(curl -s https://api.github.com/repos/bunkerity/bunkerweb/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -d /etc/bunkerweb ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/bunkerity/bunkerweb/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
  if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
 | 
			
		||||
  msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
  cat <<EOF >/etc/apt/preferences.d/bunkerweb
 | 
			
		||||
@@ -84,5 +55,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} setup should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}/setup${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}/setup${CL}"
 | 
			
		||||
							
								
								
									
										76
									
								
								ct/caddy.sh
									
									
									
									
									
								
							
							
						
						
									
										76
									
								
								ct/caddy.sh
									
									
									
									
									
								
							@@ -2,66 +2,41 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://caddyserver.com/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
   ______          __    __
 | 
			
		||||
  / ____/___ _____/ /___/ /_  __
 | 
			
		||||
 / /   / __ `/ __  / __  / / / /
 | 
			
		||||
/ /___/ /_/ / /_/ / /_/ / /_/ /
 | 
			
		||||
\____/\__,_/\__,_/\__,_/\__, /
 | 
			
		||||
                       /____/
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Caddy"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_tags="webserver"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /etc/caddy ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating $APP LXC"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get -y upgrade &>/dev/null
 | 
			
		||||
msg_ok "Updated $APP LXC"
 | 
			
		||||
exit
 | 
			
		||||
   header_info
 | 
			
		||||
   check_container_storage
 | 
			
		||||
   check_container_resources
 | 
			
		||||
   if [[ ! -d /etc/caddy ]]; then
 | 
			
		||||
      msg_error "No ${APP} Installation Found!"
 | 
			
		||||
      exit
 | 
			
		||||
   fi
 | 
			
		||||
   msg_info "Updating $APP LXC"
 | 
			
		||||
   apt-get update &>/dev/null
 | 
			
		||||
   apt-get -y upgrade &>/dev/null
 | 
			
		||||
   msg_ok "Updated $APP LXC"
 | 
			
		||||
   exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -69,3 +44,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:80${CL}"
 | 
			
		||||
@@ -1,58 +1,29 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# Co-Author: remz1337
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Author: tteck (tteckster) | Co-Author: remz1337
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://github.com/janeczku/calibre-web
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
   ______      ___ __                _       __     __
 | 
			
		||||
  / ____/___ _/ (_) /_  ________    | |     / /__  / /_
 | 
			
		||||
 / /   / __ `/ / / __ \/ ___/ _ \___| | /| / / _ \/ __ \
 | 
			
		||||
/ /___/ /_/ / / / /_/ / /  /  __/___/ |/ |/ /  __/ /_/ /
 | 
			
		||||
\____/\__,_/_/_/_.___/_/   \___/    |__/|__/\___/_.___/
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Calibre-Web"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="eBook"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
@@ -61,11 +32,14 @@ function update_script() {
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  msg_info "Updating $APP LXC"
 | 
			
		||||
  msg_info "Stopping ${APP}"
 | 
			
		||||
  systemctl stop cps
 | 
			
		||||
  msg_ok "Stopped ${APP}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Updating ${APP}"
 | 
			
		||||
  cd /opt/kepubify
 | 
			
		||||
  rm kepubify-linux-64bit
 | 
			
		||||
  curl -fsSLO https://github.com/pgaskin/kepubify/releases/latest/download/kepubify-linux-64bit &>/dev/null
 | 
			
		||||
  rm -rf kepubify-linux-64bit
 | 
			
		||||
  curl -fsSLO https://github.com/pgaskin/kepubify/releases/latest/download/kepubify-linux-64bit
 | 
			
		||||
  chmod +x kepubify-linux-64bit
 | 
			
		||||
  menu_array=("1" "Enables gdrive as storage backend for your ebooks" OFF \
 | 
			
		||||
    "2" "Enables sending emails via a googlemail account without enabling insecure apps" OFF \
 | 
			
		||||
@@ -74,33 +48,33 @@ function update_script() {
 | 
			
		||||
    "5" "Enables login via google or github oauth" OFF \
 | 
			
		||||
    "6" "Enables extracting of metadata from epub, fb2, pdf files, and also extraction of covers from cbr, cbz, cbt files" OFF \
 | 
			
		||||
    "7" "Enables extracting of metadata from cbr, cbz, cbt files" OFF \
 | 
			
		||||
    "8" "Enables syncing with your kobo reader" OFF )
 | 
			
		||||
    "8" "Enables syncing with your kobo reader" OFF)
 | 
			
		||||
  if [ -f "/opt/calibre-web/options.txt" ]; then
 | 
			
		||||
    cps_options="$(cat /opt/calibre-web/options.txt)"
 | 
			
		||||
    IFS=',' read -ra ADDR <<< "$cps_options"
 | 
			
		||||
    IFS=',' read -ra ADDR <<<"$cps_options"
 | 
			
		||||
    for i in "${ADDR[@]}"; do
 | 
			
		||||
	  if [ $i == "gdrive" ]; then
 | 
			
		||||
	    line=0
 | 
			
		||||
	  elif [ $i == "gmail" ]; then
 | 
			
		||||
	    line=1
 | 
			
		||||
          elif [ $i == "goodreads" ]; then
 | 
			
		||||
	    line=2
 | 
			
		||||
	  elif [ $i == "ldap" ]; then
 | 
			
		||||
	    line=3
 | 
			
		||||
	  elif [ $i == "oauth" ]; then
 | 
			
		||||
	    line=4
 | 
			
		||||
	  elif [ $i == "metadata" ]; then
 | 
			
		||||
	    line=5
 | 
			
		||||
	  elif [ $i == "comics" ]; then
 | 
			
		||||
	    line=6
 | 
			
		||||
	  elif [ $i == "kobo" ]; then
 | 
			
		||||
	    line=7
 | 
			
		||||
	  fi
 | 
			
		||||
      array_index=$(( 3*line + 2 ))
 | 
			
		||||
      if [ $i == "gdrive" ]; then
 | 
			
		||||
        line=0
 | 
			
		||||
      elif [ $i == "gmail" ]; then
 | 
			
		||||
        line=1
 | 
			
		||||
      elif [ $i == "goodreads" ]; then
 | 
			
		||||
        line=2
 | 
			
		||||
      elif [ $i == "ldap" ]; then
 | 
			
		||||
        line=3
 | 
			
		||||
      elif [ $i == "oauth" ]; then
 | 
			
		||||
        line=4
 | 
			
		||||
      elif [ $i == "metadata" ]; then
 | 
			
		||||
        line=5
 | 
			
		||||
      elif [ $i == "comics" ]; then
 | 
			
		||||
        line=6
 | 
			
		||||
      elif [ $i == "kobo" ]; then
 | 
			
		||||
        line=7
 | 
			
		||||
      fi
 | 
			
		||||
      array_index=$((3 * line + 2))
 | 
			
		||||
      menu_array[$array_index]=ON
 | 
			
		||||
    done
 | 
			
		||||
  fi
 | 
			
		||||
  if [ -n "$SPINNER_PID" ] && ps -p $SPINNER_PID > /dev/null; then kill $SPINNER_PID > /dev/null; fi
 | 
			
		||||
  if [ -n "$SPINNER_PID" ] && ps -p $SPINNER_PID >/dev/null; then kill $SPINNER_PID >/dev/null; fi
 | 
			
		||||
  CHOICES=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "CALIBRE-WEB OPTIONS" --separate-output --checklist "Choose Additional Options" 15 125 8 "${menu_array[@]}" 3>&1 1>&2 2>&3)
 | 
			
		||||
  spinner &
 | 
			
		||||
  SPINNER_PID=$!
 | 
			
		||||
@@ -109,29 +83,29 @@ function update_script() {
 | 
			
		||||
    for CHOICE in $CHOICES; do
 | 
			
		||||
      case "$CHOICE" in
 | 
			
		||||
      "1")
 | 
			
		||||
        options+=( gdrive )
 | 
			
		||||
        options+=(gdrive)
 | 
			
		||||
        ;;
 | 
			
		||||
      "2")
 | 
			
		||||
        options+=( gmail )
 | 
			
		||||
        options+=(gmail)
 | 
			
		||||
        ;;
 | 
			
		||||
      "3")
 | 
			
		||||
        options+=( goodreads )
 | 
			
		||||
        options+=(goodreads)
 | 
			
		||||
        ;;
 | 
			
		||||
      "4")
 | 
			
		||||
        options+=( ldap )
 | 
			
		||||
        options+=(ldap)
 | 
			
		||||
        apt-get install -qqy libldap2-dev libsasl2-dev
 | 
			
		||||
        ;;
 | 
			
		||||
      "5")
 | 
			
		||||
        options+=( oauth )
 | 
			
		||||
        options+=(oauth)
 | 
			
		||||
        ;;
 | 
			
		||||
      "6")
 | 
			
		||||
        options+=( metadata )
 | 
			
		||||
        options+=(metadata)
 | 
			
		||||
        ;;
 | 
			
		||||
      "7")
 | 
			
		||||
        options+=( comics )
 | 
			
		||||
        options+=(comics)
 | 
			
		||||
        ;;
 | 
			
		||||
      "8")
 | 
			
		||||
        options+=( kobo )
 | 
			
		||||
        options+=(kobo)
 | 
			
		||||
        ;;
 | 
			
		||||
      *)
 | 
			
		||||
        echo "Unsupported item $CHOICE!" >&2
 | 
			
		||||
@@ -140,16 +114,22 @@ function update_script() {
 | 
			
		||||
      esac
 | 
			
		||||
    done
 | 
			
		||||
  fi
 | 
			
		||||
  if [ ! -z "$options" ] && [ ${#options[@]} -gt 0 ]; then
 | 
			
		||||
    cps_options=$(IFS=, ; echo "${options[*]}")
 | 
			
		||||
    echo $cps_options > /opt/calibre-web/options.txt
 | 
			
		||||
    pip install --upgrade calibreweb[$cps_options]
 | 
			
		||||
  if [ ${#options[@]} -gt 0 ]; then
 | 
			
		||||
    cps_options=$(
 | 
			
		||||
      IFS=,
 | 
			
		||||
      echo "${options[*]}"
 | 
			
		||||
    )
 | 
			
		||||
    echo $cps_options >/opt/calibre-web/options.txt
 | 
			
		||||
    pip install --upgrade calibreweb[$cps_options] &>/dev/null
 | 
			
		||||
  else
 | 
			
		||||
    rm /opt/calibre-web/options.txt 2> /dev/null
 | 
			
		||||
    pip install --upgrade calibreweb
 | 
			
		||||
    rm -rf /opt/calibre-web/options.txt
 | 
			
		||||
    pip install --upgrade calibreweb &>/dev/null
 | 
			
		||||
  fi
 | 
			
		||||
 | 
			
		||||
  msg_info "Starting ${APP}"
 | 
			
		||||
  systemctl start cps
 | 
			
		||||
  msg_ok "Updated $APP LXC"
 | 
			
		||||
  msg_ok "Started ${APP}"
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -158,5 +138,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:8083${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8083${CL}"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										78
									
								
								ct/casaos.sh
									
									
									
									
									
								
							
							
						
						
									
										78
									
								
								ct/casaos.sh
									
									
									
									
									
								
							@@ -2,66 +2,41 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://casaos.io/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
   ______                 ____  _____
 | 
			
		||||
  / ____/___ __________ _/ __ \/ ___/
 | 
			
		||||
 / /   / __ `/ ___/ __ `/ / / /\__ \ 
 | 
			
		||||
/ /___/ /_/ (__  ) /_/ / /_/ /___/ / 
 | 
			
		||||
\____/\__,_/____/\__,_/\____//____/  
 | 
			
		||||
                                     
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="CasaOS"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_tags="cloud"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating ${APP} LXC"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get -y upgrade &>/dev/null
 | 
			
		||||
msg_ok "Updated ${APP} LXC"
 | 
			
		||||
exit
 | 
			
		||||
   header_info
 | 
			
		||||
   check_container_storage
 | 
			
		||||
   check_container_resources
 | 
			
		||||
   if [[ ! -d /var ]]; then
 | 
			
		||||
      msg_error "No ${APP} Installation Found!"
 | 
			
		||||
      exit
 | 
			
		||||
   fi
 | 
			
		||||
   msg_info "Updating ${APP} LXC"
 | 
			
		||||
   apt-get update &>/dev/null
 | 
			
		||||
   apt-get -y upgrade &>/dev/null
 | 
			
		||||
   msg_ok "Updated ${APP} LXC"
 | 
			
		||||
   exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -69,5 +44,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} Setup should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP} ${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"
 | 
			
		||||
@@ -2,82 +2,74 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://changedetection.io/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
   ________                              ____       __            __  _           
 | 
			
		||||
  / ____/ /_  ____ _____  ____ ____     / __ \___  / /____  _____/ /_(_)___  ____ 
 | 
			
		||||
 / /   / __ \/ __ `/ __ \/ __ `/ _ \   / / / / _ \/ __/ _ \/ ___/ __/ / __ \/ __ \
 | 
			
		||||
/ /___/ / / / /_/ / / / / /_/ /  __/  / /_/ /  __/ /_/  __/ /__/ /_/ / /_/ / / / /
 | 
			
		||||
\____/_/ /_/\__,_/_/ /_/\__, /\___/  /_____/\___/\__/\___/\___/\__/_/\____/_/ /_/ 
 | 
			
		||||
                       /____/                                                     
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Change Detection"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_tags="monitoring;crawler"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /etc/systemd/system/changedetection.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating ${APP} LXC"
 | 
			
		||||
if ! dpkg -s libjpeg-dev >/dev/null 2>&1; then
 | 
			
		||||
  apt-get update
 | 
			
		||||
  apt-get install -y libjpeg-dev
 | 
			
		||||
fi
 | 
			
		||||
pip3 install changedetection.io --upgrade &>/dev/null
 | 
			
		||||
pip3 install playwright --upgrade &>/dev/null
 | 
			
		||||
if [[ -f /etc/systemd/system/browserless.service ]]; then
 | 
			
		||||
  git -C /opt/browserless/ fetch --all &>/dev/null
 | 
			
		||||
  git -C /opt/browserless/ reset --hard origin/main &>/dev/null
 | 
			
		||||
  npm update --prefix /opt/browserless &>/dev/null
 | 
			
		||||
  npm run build --prefix /opt/browserless &>/dev/null
 | 
			
		||||
  npm run build:function --prefix /opt/browserless &>/dev/null
 | 
			
		||||
  npm prune production --prefix /opt/browserless &>/dev/null
 | 
			
		||||
  systemctl restart browserless
 | 
			
		||||
else
 | 
			
		||||
  msg_error "No Browserless Installation Found!"
 | 
			
		||||
fi
 | 
			
		||||
systemctl restart changedetection
 | 
			
		||||
msg_ok "Updated Successfully"
 | 
			
		||||
exit
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
 | 
			
		||||
  if [[ ! -f /etc/systemd/system/changedetection.service ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
 | 
			
		||||
  if ! dpkg -s libjpeg-dev >/dev/null 2>&1; then
 | 
			
		||||
    msg_info "Installing Dependencies"
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get install -y libjpeg-dev
 | 
			
		||||
    msg_ok "Updated Dependencies"
 | 
			
		||||
  fi
 | 
			
		||||
 | 
			
		||||
  msg_info "Updating ${APP}"
 | 
			
		||||
  pip3 install changedetection.io --upgrade &>/dev/null
 | 
			
		||||
  msg_ok "Updated ${APP}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Updating Playwright"
 | 
			
		||||
  pip3 install playwright --upgrade &>/dev/null
 | 
			
		||||
  msg_ok "Updated Playwright"
 | 
			
		||||
 | 
			
		||||
  if [[ -f /etc/systemd/system/browserless.service ]]; then
 | 
			
		||||
    msg_info "Updating Browserless (Patience)"
 | 
			
		||||
    git -C /opt/browserless/ fetch --all &>/dev/null
 | 
			
		||||
    git -C /opt/browserless/ reset --hard origin/main &>/dev/null
 | 
			
		||||
    npm update --prefix /opt/browserless &>/dev/null
 | 
			
		||||
    /opt/browserless/node_modules/playwright-core/cli.js install --with-deps &>/dev/null
 | 
			
		||||
    # Update Chrome separately, as it has to be done with the force option. Otherwise the installation of other browsers will not be done if Chrome is already installed.
 | 
			
		||||
    /opt/browserless/node_modules/playwright-core/cli.js install --force chrome &>/dev/null
 | 
			
		||||
    /opt/browserless/node_modules/playwright-core/cli.js install chromium firefox webkit &>/dev/null
 | 
			
		||||
    npm run build --prefix /opt/browserless &>/dev/null
 | 
			
		||||
    npm run build:function --prefix /opt/browserless &>/dev/null
 | 
			
		||||
    npm prune production --prefix /opt/browserless &>/dev/null
 | 
			
		||||
    systemctl restart browserless
 | 
			
		||||
    msg_ok "Updated Browserless"
 | 
			
		||||
  else
 | 
			
		||||
    msg_error "No Browserless Installation Found!"
 | 
			
		||||
  fi
 | 
			
		||||
 | 
			
		||||
  systemctl restart changedetection
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -85,5 +77,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:5000${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:5000${CL}"
 | 
			
		||||
 
 | 
			
		||||
@@ -2,63 +2,38 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://getchannels.com/dvr-server/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
   ________                           __        ____ _    ______     _____
 | 
			
		||||
  / ____/ /_  ____ _____  ____  ___  / /____   / __ \ |  / / __ \   / ___/___  ______   _____  _____
 | 
			
		||||
 / /   / __ \/ __ `/ __ \/ __ \/ _ \/ / ___/  / / / / | / / /_/ /   \__ \/ _ \/ ___/ | / / _ \/ ___/
 | 
			
		||||
/ /___/ / / / /_/ / / / / / / /  __/ (__  )  / /_/ /| |/ / _, _/   ___/ /  __/ /   | |/ /  __/ /
 | 
			
		||||
\____/_/ /_/\__,_/_/ /_/_/ /_/\___/_/____/  /_____/ |___/_/ |_|   /____/\___/_/    |___/\___/_/
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Channels"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_tags="dvr"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="0"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="0"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/channels-dvr ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_error "There is currently no update path available."
 | 
			
		||||
exit
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -d /opt/channels-dvr ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  msg_error "There is currently no update path available."
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -66,5 +41,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} Setup should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:8089 ${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8089${CL}"
 | 
			
		||||
							
								
								
									
										59
									
								
								ct/checkmk.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								ct/checkmk.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,59 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 community-scripts ORG
 | 
			
		||||
# Author: Michel Roegl-Brunner (michelroegl-brunner)
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://checkmk.com/
 | 
			
		||||
 | 
			
		||||
APP="checkmk"
 | 
			
		||||
var_tags="monitoring"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -f /opt/checkmk_version.txt ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  RELEASE=$(curl -fsSL https://api.github.com/repos/checkmk/checkmk/tags | grep "name" | awk '{print substr($2, 3, length($2)-4) }' | grep -v "*-rc" | tail -n +2 | head -n 1)
 | 
			
		||||
  if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
    msg_info "Updating ${APP} to v${RELEASE}"
 | 
			
		||||
    omd stop monitoring &>/dev/null
 | 
			
		||||
    omd cp monitoring monitoringbackup &>/dev/null
 | 
			
		||||
    wget -q https://download.checkmk.com/checkmk/${RELEASE}/check-mk-raw-${RELEASE}_0.bookworm_amd64.deb -O /opt/checkmk.deb
 | 
			
		||||
    apt-get install -y /opt/checkmk.deb &>/dev/null
 | 
			
		||||
    omd --force -V ${RELEASE}.cre update --conflict=install monitoring &>/dev/null
 | 
			
		||||
    omd start monitoring &>/dev/null
 | 
			
		||||
    omd -f rm monitoringbackup  &>/dev/null
 | 
			
		||||
    omd cleanup &>/dev/null
 | 
			
		||||
    rm -rf /opt/checkmk.deb
 | 
			
		||||
    msg_ok "Updated ${APP} to v${RELEASE}"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required. ${APP} is already at v${RELEASE}."
 | 
			
		||||
  fi
 | 
			
		||||
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}/monitoring${CL}"
 | 
			
		||||
@@ -2,66 +2,41 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.cloudflare.com/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
   ________                ________                    __
 | 
			
		||||
  / ____/ /___  __  ______/ / __/ /___ _________  ____/ /
 | 
			
		||||
 / /   / / __ \/ / / / __  / /_/ / __ `/ ___/ _ \/ __  / 
 | 
			
		||||
/ /___/ / /_/ / /_/ / /_/ / __/ / /_/ / /  /  __/ /_/ /  
 | 
			
		||||
\____/_/\____/\__,_/\__,_/_/ /_/\__,_/_/   \___/\__,_/   
 | 
			
		||||
                                                         
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Cloudflared"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_tags="network;cloudflare"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating $APP LXC"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get -y upgrade &>/dev/null
 | 
			
		||||
msg_ok "Updated $APP LXC"
 | 
			
		||||
exit
 | 
			
		||||
   header_info
 | 
			
		||||
   check_container_storage
 | 
			
		||||
   check_container_resources
 | 
			
		||||
   if [[ ! -d /var ]]; then
 | 
			
		||||
      msg_error "No ${APP} Installation Found!"
 | 
			
		||||
      exit
 | 
			
		||||
   fi
 | 
			
		||||
   msg_info "Updating $APP LXC"
 | 
			
		||||
   apt-get update &>/dev/null
 | 
			
		||||
   apt-get -y upgrade &>/dev/null
 | 
			
		||||
   msg_ok "Updated $APP LXC"
 | 
			
		||||
   exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -69,3 +44,4 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
							
								
								
									
										179
									
								
								ct/cockpit.sh
									
									
									
									
									
								
							
							
						
						
									
										179
									
								
								ct/cockpit.sh
									
									
									
									
									
								
							@@ -1,118 +1,92 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck
 | 
			
		||||
# Co-Author: havardthom
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Author: tteck | Co-Author: havardthom
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://cockpit-project.org/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"     
 | 
			
		||||
   ______           __         _ __
 | 
			
		||||
  / ____/___  _____/ /______  (_) /_
 | 
			
		||||
 / /   / __ \/ ___/ //_/ __ \/ / __/
 | 
			
		||||
/ /___/ /_/ / /__/ ,< / /_/ / / /_
 | 
			
		||||
\____/\____/\___/_/|_/ .___/_/\__/
 | 
			
		||||
                    /_/
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Cockpit"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="monitoring;network"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /etc/cockpit ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
UPD=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "SUPPORT" --radiolist --cancel-button Exit-Script "Spacebar = Select" 11 58 4 \
 | 
			
		||||
  "1" "Update LXC" ON \
 | 
			
		||||
  "2" "Install cockpit-file-sharing" OFF \
 | 
			
		||||
  "3" "Install cockpit-identities" OFF \
 | 
			
		||||
  "4" "Install cockpit-navigator" OFF \
 | 
			
		||||
  3>&1 1>&2 2>&3)
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -d /etc/cockpit ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  UPD=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "SUPPORT" --radiolist --cancel-button Exit-Script "Spacebar = Select" 11 58 4 \
 | 
			
		||||
    "1" "Update LXC" ON \
 | 
			
		||||
    "2" "Install cockpit-file-sharing" OFF \
 | 
			
		||||
    "3" "Install cockpit-identities" OFF \
 | 
			
		||||
    "4" "Install cockpit-navigator" OFF \
 | 
			
		||||
    3>&1 1>&2 2>&3)
 | 
			
		||||
 | 
			
		||||
if [ "$UPD" == "1" ]; then
 | 
			
		||||
  msg_info "Updating ${APP} LXC"
 | 
			
		||||
  apt-get update &>/dev/null
 | 
			
		||||
  apt-get -y upgrade &>/dev/null
 | 
			
		||||
  msg_ok "Updated ${APP} LXC"
 | 
			
		||||
  exit
 | 
			
		||||
fi
 | 
			
		||||
if [ "$UPD" == "2" ]; then
 | 
			
		||||
  msg_info "Installing dependencies (patience)"
 | 
			
		||||
  apt-get install -y attr &>/dev/null
 | 
			
		||||
  apt-get install -y nfs-kernel-server &>/dev/null
 | 
			
		||||
  apt-get install -y samba &>/dev/null
 | 
			
		||||
  apt-get install -y samba-common-bin &>/dev/null
 | 
			
		||||
  apt-get install -y winbind &>/dev/null
 | 
			
		||||
  apt-get install -y gawk &>/dev/null
 | 
			
		||||
  msg_ok "Installed dependencies"
 | 
			
		||||
  msg_info "Installing Cockpit file sharing"
 | 
			
		||||
  wget -q $(curl -s https://api.github.com/repos/45Drives/cockpit-file-sharing/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)
 | 
			
		||||
  dpkg -i cockpit-file-sharing_*focal_all.deb &>/dev/null
 | 
			
		||||
  rm cockpit-file-sharing_*focal_all.deb
 | 
			
		||||
  msg_ok "Installed Cockpit file sharing"
 | 
			
		||||
  exit
 | 
			
		||||
fi
 | 
			
		||||
if [ "$UPD" == "3" ]; then
 | 
			
		||||
  msg_info "Installing dependencies (patience)"
 | 
			
		||||
  apt-get install -y psmisc &>/dev/null
 | 
			
		||||
  apt-get install -y samba &>/dev/null
 | 
			
		||||
  apt-get install -y samba-common-bin &>/dev/null
 | 
			
		||||
  msg_ok "Installed dependencies"
 | 
			
		||||
  msg_info "Installing Cockpit identities"
 | 
			
		||||
  wget -q $(curl -s https://api.github.com/repos/45Drives/cockpit-identities/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)
 | 
			
		||||
  dpkg -i cockpit-identities_*focal_all.deb &>/dev/null
 | 
			
		||||
  rm cockpit-identities_*focal_all.deb
 | 
			
		||||
  msg_ok "Installed Cockpit identities"
 | 
			
		||||
  exit
 | 
			
		||||
fi
 | 
			
		||||
if [ "$UPD" == "4" ]; then
 | 
			
		||||
  msg_info "Installing dependencies"
 | 
			
		||||
  apt-get install -y rsync &>/dev/null
 | 
			
		||||
  apt-get install -y zip &>/dev/null
 | 
			
		||||
  msg_ok "Installed dependencies"
 | 
			
		||||
  msg_info "Installing Cockpit navigator"
 | 
			
		||||
  wget -q $(curl -s https://api.github.com/repos/45Drives/cockpit-navigator/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)
 | 
			
		||||
  dpkg -i cockpit-navigator_*focal_all.deb &>/dev/null
 | 
			
		||||
  rm cockpit-navigator_*focal_all.deb
 | 
			
		||||
  msg_ok "Installed Cockpit navigator"
 | 
			
		||||
  exit
 | 
			
		||||
fi
 | 
			
		||||
  if [ "$UPD" == "1" ]; then
 | 
			
		||||
    msg_info "Updating ${APP} LXC"
 | 
			
		||||
    apt-get update &>/dev/null
 | 
			
		||||
    apt-get -y upgrade &>/dev/null
 | 
			
		||||
    msg_ok "Updated ${APP} LXC"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  if [ "$UPD" == "2" ]; then
 | 
			
		||||
    msg_info "Installing dependencies (patience)"
 | 
			
		||||
    apt-get install -y attr &>/dev/null
 | 
			
		||||
    apt-get install -y nfs-kernel-server &>/dev/null
 | 
			
		||||
    apt-get install -y samba &>/dev/null
 | 
			
		||||
    apt-get install -y samba-common-bin &>/dev/null
 | 
			
		||||
    apt-get install -y winbind &>/dev/null
 | 
			
		||||
    apt-get install -y gawk &>/dev/null
 | 
			
		||||
    msg_ok "Installed dependencies"
 | 
			
		||||
    msg_info "Installing Cockpit file sharing"
 | 
			
		||||
    wget -q $(curl -s https://api.github.com/repos/45Drives/cockpit-file-sharing/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)
 | 
			
		||||
    dpkg -i cockpit-file-sharing_*focal_all.deb &>/dev/null
 | 
			
		||||
    rm cockpit-file-sharing_*focal_all.deb
 | 
			
		||||
    msg_ok "Installed Cockpit file sharing"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  if [ "$UPD" == "3" ]; then
 | 
			
		||||
    msg_info "Installing dependencies (patience)"
 | 
			
		||||
    apt-get install -y psmisc &>/dev/null
 | 
			
		||||
    apt-get install -y samba &>/dev/null
 | 
			
		||||
    apt-get install -y samba-common-bin &>/dev/null
 | 
			
		||||
    msg_ok "Installed dependencies"
 | 
			
		||||
    msg_info "Installing Cockpit identities"
 | 
			
		||||
    wget -q $(curl -s https://api.github.com/repos/45Drives/cockpit-identities/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)
 | 
			
		||||
    dpkg -i cockpit-identities_*focal_all.deb &>/dev/null
 | 
			
		||||
    rm cockpit-identities_*focal_all.deb
 | 
			
		||||
    msg_ok "Installed Cockpit identities"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  if [ "$UPD" == "4" ]; then
 | 
			
		||||
    msg_info "Installing dependencies"
 | 
			
		||||
    apt-get install -y rsync &>/dev/null
 | 
			
		||||
    apt-get install -y zip &>/dev/null
 | 
			
		||||
    msg_ok "Installed dependencies"
 | 
			
		||||
    msg_info "Installing Cockpit navigator"
 | 
			
		||||
    wget -q $(curl -s https://api.github.com/repos/45Drives/cockpit-navigator/releases/latest | grep download | grep focal_all.deb | cut -d\" -f4)
 | 
			
		||||
    dpkg -i cockpit-navigator_*focal_all.deb &>/dev/null
 | 
			
		||||
    rm cockpit-navigator_*focal_all.deb
 | 
			
		||||
    msg_ok "Installed Cockpit navigator"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -120,5 +94,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:9090${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:9090${CL}"
 | 
			
		||||
							
								
								
									
										108
									
								
								ct/commafeed.sh
									
									
									
									
									
								
							
							
						
						
									
										108
									
								
								ct/commafeed.sh
									
									
									
									
									
								
							@@ -2,83 +2,58 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.commafeed.com/#/welcome
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
   ______                                ______              __
 | 
			
		||||
  / ____/___  ____ ___  ____ ___  ____ _/ ____/__  ___  ____/ /
 | 
			
		||||
 / /   / __ \/ __ `__ \/ __ `__ \/ __ `/ /_  / _ \/ _ \/ __  /
 | 
			
		||||
/ /___/ /_/ / / / / / / / / / / / /_/ / __/ /  __/  __/ /_/ /
 | 
			
		||||
\____/\____/_/ /_/ /_/_/ /_/ /_/\__,_/_/    \___/\___/\__,_/
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="CommaFeed"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="rss-reader"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/commafeed ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
RELEASE=$(curl -sL https://api.github.com/repos/Athou/commafeed/releases/latest | grep '"tag_name":' | cut -d'"' -f4)
 | 
			
		||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
  msg_info "Stopping ${APP}"
 | 
			
		||||
  systemctl stop commafeed
 | 
			
		||||
  msg_ok "Stopped ${APP}"
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -d /opt/commafeed ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  RELEASE=$(curl -sL https://api.github.com/repos/Athou/commafeed/releases/latest | grep '"tag_name":' | cut -d'"' -f4)
 | 
			
		||||
  if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
    msg_info "Stopping ${APP}"
 | 
			
		||||
    systemctl stop commafeed
 | 
			
		||||
    msg_ok "Stopped ${APP}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
  wget -q https://github.com/Athou/commafeed/releases/download/${RELEASE}/commafeed-${RELEASE}-h2-jvm.zip
 | 
			
		||||
  unzip -q commafeed-${RELEASE}-h2-jvm.zip
 | 
			
		||||
  rsync -a --exclude 'data/' commafeed-${RELEASE}-h2/ /opt/commafeed/
 | 
			
		||||
  rm -rf commafeed-${RELEASE}-h2  commafeed-${RELEASE}-h2-jvm.zip
 | 
			
		||||
  echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
  msg_ok "Updated ${APP} to ${RELEASE}"
 | 
			
		||||
    msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
    wget -q https://github.com/Athou/commafeed/releases/download/${RELEASE}/commafeed-${RELEASE}-h2-jvm.zip
 | 
			
		||||
    unzip -q commafeed-${RELEASE}-h2-jvm.zip
 | 
			
		||||
    rsync -a --exclude 'data/' commafeed-${RELEASE}-h2/ /opt/commafeed/
 | 
			
		||||
    rm -rf commafeed-${RELEASE}-h2 commafeed-${RELEASE}-h2-jvm.zip
 | 
			
		||||
    echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
    msg_ok "Updated ${APP} to ${RELEASE}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Starting ${APP}"
 | 
			
		||||
  systemctl start commafeed
 | 
			
		||||
  msg_ok "Started ${APP}"
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
else
 | 
			
		||||
  msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
fi
 | 
			
		||||
exit
 | 
			
		||||
    msg_info "Starting ${APP}"
 | 
			
		||||
    systemctl start commafeed
 | 
			
		||||
    msg_ok "Started ${APP}"
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
  fi
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -86,5 +61,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:8082${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8082${CL}"
 | 
			
		||||
 
 | 
			
		||||
@@ -2,6 +2,7 @@
 | 
			
		||||
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# Co-Author: MickLesk
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
 | 
			
		||||
@@ -9,15 +10,25 @@
 | 
			
		||||
# if [ "$VERBOSE" == "yes" ]; then set -x; fi
 | 
			
		||||
 | 
			
		||||
# This function sets color variables for formatting output in the terminal
 | 
			
		||||
# Colors
 | 
			
		||||
YW=$(echo "\033[33m")
 | 
			
		||||
YWB=$(echo "\033[93m")
 | 
			
		||||
BL=$(echo "\033[36m")
 | 
			
		||||
RD=$(echo "\033[01;31m")
 | 
			
		||||
GN=$(echo "\033[1;92m")
 | 
			
		||||
 | 
			
		||||
# Formatting
 | 
			
		||||
CL=$(echo "\033[m")
 | 
			
		||||
CM="${GN}✓${CL}"
 | 
			
		||||
CROSS="${RD}✗${CL}"
 | 
			
		||||
UL=$(echo "\033[4m")
 | 
			
		||||
BOLD=$(echo "\033[1m")
 | 
			
		||||
BFR="\\r\\033[K"
 | 
			
		||||
HOLD=" "
 | 
			
		||||
TAB="  "
 | 
			
		||||
 | 
			
		||||
# Icons
 | 
			
		||||
CM="${TAB}✔️${TAB}${CL}"
 | 
			
		||||
CROSS="${TAB}✖️${TAB}${CL}"
 | 
			
		||||
INFO="${TAB}💡${TAB}${CL}"
 | 
			
		||||
 | 
			
		||||
# This sets error handling options and defines the error_handler function to handle errors
 | 
			
		||||
set -Eeuo pipefail
 | 
			
		||||
@@ -36,19 +47,24 @@ function error_handler() {
 | 
			
		||||
 | 
			
		||||
# This function displays a spinner.
 | 
			
		||||
function spinner() {
 | 
			
		||||
    local chars="/-\|"
 | 
			
		||||
    local spin_i=0
 | 
			
		||||
    printf "\e[?25l"
 | 
			
		||||
    while true; do
 | 
			
		||||
        printf "\r \e[36m%s\e[0m" "${chars:spin_i++%${#chars}:1}"
 | 
			
		||||
        sleep 0.1
 | 
			
		||||
    done
 | 
			
		||||
  local frames=('⠋' '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')
 | 
			
		||||
  local spin_i=0
 | 
			
		||||
  local interval=0.1
 | 
			
		||||
  printf "\e[?25l" 
 | 
			
		||||
 | 
			
		||||
  local color="${YWB}"
 | 
			
		||||
 | 
			
		||||
  while true; do
 | 
			
		||||
    printf "\r ${color}%s${CL}" "${frames[spin_i]}"
 | 
			
		||||
    spin_i=$(( (spin_i + 1) % ${#frames[@]} ))
 | 
			
		||||
    sleep "$interval"
 | 
			
		||||
  done
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# This function displays an informational message with a yellow color.
 | 
			
		||||
function msg_info() {
 | 
			
		||||
  local msg="$1"
 | 
			
		||||
  echo -ne " ${HOLD} ${YW}${msg}   "
 | 
			
		||||
  echo -ne "${TAB}${YW}${HOLD}${msg}${HOLD}"
 | 
			
		||||
  spinner &
 | 
			
		||||
  SPINNER_PID=$!
 | 
			
		||||
}
 | 
			
		||||
@@ -58,7 +74,7 @@ function msg_ok() {
 | 
			
		||||
  if [ -n "$SPINNER_PID" ] && ps -p $SPINNER_PID > /dev/null; then kill $SPINNER_PID > /dev/null; fi
 | 
			
		||||
  printf "\e[?25h"
 | 
			
		||||
  local msg="$1"
 | 
			
		||||
  echo -e "${BFR} ${CM} ${GN}${msg}${CL}"
 | 
			
		||||
  echo -e "${BFR}${CM}${GN}${msg}${CL}"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# This function displays a error message with a red color.
 | 
			
		||||
@@ -66,7 +82,7 @@ function msg_error() {
 | 
			
		||||
  if [ -n "$SPINNER_PID" ] && ps -p $SPINNER_PID > /dev/null; then kill $SPINNER_PID > /dev/null; fi
 | 
			
		||||
  printf "\e[?25h"
 | 
			
		||||
  local msg="$1"
 | 
			
		||||
  echo -e "${BFR} ${CROSS} ${RD}${msg}${CL}"
 | 
			
		||||
  echo -e "${BFR}${CROSS}${RD}${msg}${CL}"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# This checks for the presence of valid Container Storage and Template Storage locations
 | 
			
		||||
@@ -105,7 +121,7 @@ function select_storage() {
 | 
			
		||||
    local TAG=$(echo $line | awk '{print $1}')
 | 
			
		||||
    local TYPE=$(echo $line | awk '{printf "%-10s", $2}')
 | 
			
		||||
    local FREE=$(echo $line | numfmt --field 4-6 --from-unit=K --to=iec --format %.2f | awk '{printf( "%9sB", $6)}')
 | 
			
		||||
    local ITEM="  Type: $TYPE Free: $FREE "
 | 
			
		||||
    local ITEM="Type: $TYPE Free: $FREE "
 | 
			
		||||
    local OFFSET=2
 | 
			
		||||
    if [[ $((${#ITEM} + $OFFSET)) -gt ${MSG_MAX_LENGTH:-} ]]; then
 | 
			
		||||
      local MSG_MAX_LENGTH=$((${#ITEM} + $OFFSET))
 | 
			
		||||
@@ -123,11 +139,14 @@ function select_storage() {
 | 
			
		||||
      "Which storage pool you would like to use for the ${CONTENT_LABEL,,}?\nTo make a selection, use the Spacebar.\n" \
 | 
			
		||||
      16 $(($MSG_MAX_LENGTH + 23)) 6 \
 | 
			
		||||
      "${MENU[@]}" 3>&1 1>&2 2>&3) || exit "Menu aborted."
 | 
			
		||||
      if [ $? -ne 0 ]; then
 | 
			
		||||
        echo -e "${CROSS}${RD} Menu aborted by user.${CL}"
 | 
			
		||||
        exit 0 
 | 
			
		||||
      fi
 | 
			
		||||
    done
 | 
			
		||||
    printf $STORAGE
 | 
			
		||||
    printf "%s" "$STORAGE"
 | 
			
		||||
  fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# Test if required variables are set
 | 
			
		||||
[[ "${CTID:-}" ]] || exit "You need to set 'CTID' variable."
 | 
			
		||||
[[ "${PCT_OSTYPE:-}" ]] || exit "You need to set 'PCT_OSTYPE' variable."
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										180
									
								
								ct/cronicle.sh
									
									
									
									
									
								
							
							
						
						
									
										180
									
								
								ct/cronicle.sh
									
									
									
									
									
								
							@@ -2,125 +2,100 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://cronicle.net/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
   ______                 _      __   
 | 
			
		||||
  / ____/________  ____  (_)____/ /__ 
 | 
			
		||||
 / /   / ___/ __ \/ __ \/ / ___/ / _ \
 | 
			
		||||
/ /___/ /  / /_/ / / / / / /__/ /  __/
 | 
			
		||||
\____/_/   \____/_/ /_/_/\___/_/\___/ 
 | 
			
		||||
                                      
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Cronicle"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_tags="task-scheduler"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
UPD=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "SUPPORT" --radiolist --cancel-button Exit-Script "Spacebar = Select" 11 58 2 \
 | 
			
		||||
  "1" "Update ${APP}" ON \
 | 
			
		||||
  "2" "Install ${APP} Worker" OFF \
 | 
			
		||||
  3>&1 1>&2 2>&3)
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  UPD=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "SUPPORT" --radiolist --cancel-button Exit-Script "Spacebar = Select" 11 58 2 \
 | 
			
		||||
    "1" "Update ${APP}" ON \
 | 
			
		||||
    "2" "Install ${APP} Worker" OFF \
 | 
			
		||||
    3>&1 1>&2 2>&3)
 | 
			
		||||
 | 
			
		||||
if [ "$UPD" == "1" ]; then
 | 
			
		||||
if [[ ! -d /opt/cronicle ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
  if [[ "$(node -v | cut -d 'v' -f 2)" == "18."* ]]; then
 | 
			
		||||
    if ! command -v npm >/dev/null 2>&1; then
 | 
			
		||||
      echo "Installing NPM..."
 | 
			
		||||
      apt-get install -y npm >/dev/null 2>&1
 | 
			
		||||
      echo "Installed NPM..."
 | 
			
		||||
  if [ "$UPD" == "1" ]; then
 | 
			
		||||
    if [[ ! -d /opt/cronicle ]]; then
 | 
			
		||||
      msg_error "No ${APP} Installation Found!"
 | 
			
		||||
      exit
 | 
			
		||||
    fi
 | 
			
		||||
  fi
 | 
			
		||||
msg_info "Updating ${APP}"
 | 
			
		||||
/opt/cronicle/bin/control.sh upgrade &>/dev/null
 | 
			
		||||
msg_ok "Updated ${APP}"
 | 
			
		||||
exit
 | 
			
		||||
fi
 | 
			
		||||
if [ "$UPD" == "2" ]; then
 | 
			
		||||
  if [[ "$(node -v | cut -d 'v' -f 2)" == "18."* ]]; then
 | 
			
		||||
    if ! command -v npm >/dev/null 2>&1; then
 | 
			
		||||
      echo "Installing NPM..."
 | 
			
		||||
      apt-get install -y npm >/dev/null 2>&1
 | 
			
		||||
      echo "Installed NPM..."
 | 
			
		||||
    if [[ "$(node -v | cut -d 'v' -f 2)" == "18."* ]]; then
 | 
			
		||||
      if ! command -v npm >/dev/null 2>&1; then
 | 
			
		||||
        echo "Installing NPM..."
 | 
			
		||||
        apt-get install -y npm >/dev/null 2>&1
 | 
			
		||||
        echo "Installed NPM..."
 | 
			
		||||
      fi
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Updating ${APP}"
 | 
			
		||||
    /opt/cronicle/bin/control.sh upgrade &>/dev/null
 | 
			
		||||
    msg_ok "Updated ${APP}"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
LATEST=$(curl -sL https://api.github.com/repos/jhuckaby/Cronicle/releases/latest | grep '"tag_name":' | cut -d'"' -f4)
 | 
			
		||||
IP=$(hostname -I | awk '{print $1}')
 | 
			
		||||
msg_info "Installing Dependencies"
 | 
			
		||||
  if [ "$UPD" == "2" ]; then
 | 
			
		||||
    if [[ "$(node -v | cut -d 'v' -f 2)" == "18."* ]]; then
 | 
			
		||||
      if ! command -v npm >/dev/null 2>&1; then
 | 
			
		||||
        echo "Installing NPM..."
 | 
			
		||||
        apt-get install -y npm >/dev/null 2>&1
 | 
			
		||||
        echo "Installed NPM..."
 | 
			
		||||
      fi
 | 
			
		||||
    fi
 | 
			
		||||
    LATEST=$(curl -sL https://api.github.com/repos/jhuckaby/Cronicle/releases/latest | grep '"tag_name":' | cut -d'"' -f4)
 | 
			
		||||
    IP=$(hostname -I | awk '{print $1}')
 | 
			
		||||
    msg_info "Installing Dependencies"
 | 
			
		||||
 | 
			
		||||
apt-get install -y git &>/dev/null
 | 
			
		||||
apt-get install -y make &>/dev/null
 | 
			
		||||
apt-get install -y g++ &>/dev/null
 | 
			
		||||
apt-get install -y gcc &>/dev/null
 | 
			
		||||
apt-get install -y ca-certificates &>/dev/null
 | 
			
		||||
apt-get install -y gnupg &>/dev/null
 | 
			
		||||
msg_ok "Installed Dependencies"
 | 
			
		||||
    apt-get install -y git &>/dev/null
 | 
			
		||||
    apt-get install -y make &>/dev/null
 | 
			
		||||
    apt-get install -y g++ &>/dev/null
 | 
			
		||||
    apt-get install -y gcc &>/dev/null
 | 
			
		||||
    apt-get install -y ca-certificates &>/dev/null
 | 
			
		||||
    apt-get install -y gnupg &>/dev/null
 | 
			
		||||
    msg_ok "Installed Dependencies"
 | 
			
		||||
 | 
			
		||||
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 "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"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get install -y nodejs &>/dev/null
 | 
			
		||||
msg_ok "Installed Node.js"
 | 
			
		||||
    msg_info "Installing Node.js"
 | 
			
		||||
    apt-get update &>/dev/null
 | 
			
		||||
    apt-get install -y nodejs &>/dev/null
 | 
			
		||||
    msg_ok "Installed Node.js"
 | 
			
		||||
 | 
			
		||||
msg_info "Installing Cronicle Worker"
 | 
			
		||||
mkdir -p /opt/cronicle
 | 
			
		||||
cd /opt/cronicle
 | 
			
		||||
tar zxvf <(curl -fsSL https://github.com/jhuckaby/Cronicle/archive/${LATEST}.tar.gz) --strip-components 1 &>/dev/null
 | 
			
		||||
npm install &>/dev/null
 | 
			
		||||
node bin/build.js dist &>/dev/null
 | 
			
		||||
sed -i "s/localhost:3012/${IP}:3012/g" /opt/cronicle/conf/config.json
 | 
			
		||||
/opt/cronicle/bin/control.sh start &>/dev/null
 | 
			
		||||
cp /opt/cronicle/bin/cronicled.init /etc/init.d/cronicled &>/dev/null
 | 
			
		||||
chmod 775 /etc/init.d/cronicled
 | 
			
		||||
update-rc.d cronicled defaults &>/dev/null
 | 
			
		||||
msg_ok "Installed Cronicle Worker"
 | 
			
		||||
echo -e "\n Add Masters secret key to /opt/cronicle/conf/config.json \n"
 | 
			
		||||
exit
 | 
			
		||||
fi
 | 
			
		||||
    msg_info "Installing Cronicle Worker"
 | 
			
		||||
    mkdir -p /opt/cronicle
 | 
			
		||||
    cd /opt/cronicle
 | 
			
		||||
    tar zxvf <(curl -fsSL https://github.com/jhuckaby/Cronicle/archive/${LATEST}.tar.gz) --strip-components 1 &>/dev/null
 | 
			
		||||
    npm install &>/dev/null
 | 
			
		||||
    node bin/build.js dist &>/dev/null
 | 
			
		||||
    sed -i "s/localhost:3012/${IP}:3012/g" /opt/cronicle/conf/config.json
 | 
			
		||||
    /opt/cronicle/bin/control.sh start &>/dev/null
 | 
			
		||||
    cp /opt/cronicle/bin/cronicled.init /etc/init.d/cronicled &>/dev/null
 | 
			
		||||
    chmod 775 /etc/init.d/cronicled
 | 
			
		||||
    update-rc.d cronicled defaults &>/dev/null
 | 
			
		||||
    msg_ok "Installed Cronicle Worker"
 | 
			
		||||
    echo -e "\n Add Masters secret key to /opt/cronicle/conf/config.json \n"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -128,5 +103,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} Primary should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:3012${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3012${CL}"
 | 
			
		||||
@@ -2,66 +2,41 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://daemonsync.me/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ____                                      _____                 
 | 
			
		||||
   / __ \____ ____  ____ ___  ____  ____     / ___/__  ______  _____
 | 
			
		||||
  / / / / __  / _ \/ __  __ \/ __ \/ __ \    \__ \/ / / / __ \/ ___/
 | 
			
		||||
 / /_/ / /_/ /  __/ / / / / / /_/ / / / /   ___/ / /_/ / / / / /__  
 | 
			
		||||
/_____/\__,_/\___/_/ /_/ /_/\____/_/ /_/   /____/\__, /_/ /_/\___/  
 | 
			
		||||
                                                /____/              
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Daemon Sync"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_tags="sync"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating $APP LXC"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get -y upgrade &>/dev/null
 | 
			
		||||
msg_ok "Updated $APP LXC"
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /var ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Updating $APP LXC"
 | 
			
		||||
    apt-get update &>/dev/null
 | 
			
		||||
    apt-get -y upgrade &>/dev/null
 | 
			
		||||
    msg_ok "Updated $APP LXC"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -69,5 +44,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:8084${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8084${CL}"
 | 
			
		||||
							
								
								
									
										144
									
								
								ct/dashy.sh
									
									
									
									
									
								
							
							
						
						
									
										144
									
								
								ct/dashy.sh
									
									
									
									
									
								
							@@ -2,104 +2,79 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://dashy.to/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ____             __         
 | 
			
		||||
   / __ \____ ______/ /_  __  __
 | 
			
		||||
  / / / / __  / ___/ __ \/ / / /
 | 
			
		||||
 / /_/ / /_/ (__  ) / / / /_/ / 
 | 
			
		||||
/_____/\__,_/____/_/ /_/\__, /  
 | 
			
		||||
                       /____/   
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Dashy"
 | 
			
		||||
var_disk="6"
 | 
			
		||||
var_tags="dashboard"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="6"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/dashy/public/ ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
 | 
			
		||||
RELEASE=$(curl -sL https://api.github.com/repos/Lissy93/dashy/releases/latest | grep '"tag_name":' | cut -d'"' -f4)
 | 
			
		||||
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
 | 
			
		||||
  msg_info "Stopping ${APP}"
 | 
			
		||||
  systemctl stop dashy
 | 
			
		||||
  msg_ok "Stopped ${APP}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Backing up conf.yml"
 | 
			
		||||
  cd ~
 | 
			
		||||
  if [[ -f /opt/dashy/public/conf.yml ]]; then
 | 
			
		||||
    cp -R /opt/dashy/public/conf.yml conf.yml
 | 
			
		||||
  else
 | 
			
		||||
    cp -R /opt/dashy/user-data/conf.yml conf.yml
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -d /opt/dashy/public/ ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  msg_ok "Backed up conf.yml"
 | 
			
		||||
 | 
			
		||||
  msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
  rm -rf /opt/dashy
 | 
			
		||||
  mkdir -p /opt/dashy
 | 
			
		||||
  wget -qO- https://github.com/Lissy93/dashy/archive/refs/tags/${RELEASE}.tar.gz | tar -xz -C /opt/dashy --strip-components=1
 | 
			
		||||
  cd /opt/dashy
 | 
			
		||||
  npm install
 | 
			
		||||
  npm run build
 | 
			
		||||
  echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
  msg_ok "Updated ${APP} to ${RELEASE}"
 | 
			
		||||
  RELEASE=$(curl -sL https://api.github.com/repos/Lissy93/dashy/releases/latest | grep '"tag_name":' | cut -d'"' -f4)
 | 
			
		||||
  if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
 | 
			
		||||
    msg_info "Stopping ${APP}"
 | 
			
		||||
    systemctl stop dashy
 | 
			
		||||
    msg_ok "Stopped ${APP}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Restoring conf.yml"
 | 
			
		||||
  cd ~
 | 
			
		||||
  cp -R conf.yml /opt/dashy/user-data
 | 
			
		||||
  msg_ok "Restored conf.yml"
 | 
			
		||||
    msg_info "Backing up conf.yml"
 | 
			
		||||
    cd ~
 | 
			
		||||
    if [[ -f /opt/dashy/public/conf.yml ]]; then
 | 
			
		||||
      cp -R /opt/dashy/public/conf.yml conf.yml
 | 
			
		||||
    else
 | 
			
		||||
      cp -R /opt/dashy/user-data/conf.yml conf.yml
 | 
			
		||||
    fi
 | 
			
		||||
    msg_ok "Backed up conf.yml"
 | 
			
		||||
 | 
			
		||||
  msg_info "Cleaning"
 | 
			
		||||
  rm -rf conf.yml /opt/dashy/public/conf.yml
 | 
			
		||||
  msg_ok "Cleaned"
 | 
			
		||||
    msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
    rm -rf /opt/dashy
 | 
			
		||||
    mkdir -p /opt/dashy
 | 
			
		||||
    wget -qO- https://github.com/Lissy93/dashy/archive/refs/tags/${RELEASE}.tar.gz | tar -xz -C /opt/dashy --strip-components=1
 | 
			
		||||
    cd /opt/dashy
 | 
			
		||||
    npm install
 | 
			
		||||
    npm run build
 | 
			
		||||
    echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
    msg_ok "Updated ${APP} to ${RELEASE}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Starting Dashy"
 | 
			
		||||
  systemctl start dashy
 | 
			
		||||
  msg_ok "Started Dashy"
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
else
 | 
			
		||||
  msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
fi
 | 
			
		||||
exit
 | 
			
		||||
    msg_info "Restoring conf.yml"
 | 
			
		||||
    cd ~
 | 
			
		||||
    cp -R conf.yml /opt/dashy/user-data
 | 
			
		||||
    msg_ok "Restored conf.yml"
 | 
			
		||||
 | 
			
		||||
    msg_info "Cleaning"
 | 
			
		||||
    rm -rf conf.yml /opt/dashy/public/conf.yml
 | 
			
		||||
    msg_ok "Cleaned"
 | 
			
		||||
 | 
			
		||||
    msg_info "Starting Dashy"
 | 
			
		||||
    systemctl start dashy
 | 
			
		||||
    msg_ok "Started Dashy"
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
  fi
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -107,5 +82,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:4000${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:4000${CL}"
 | 
			
		||||
							
								
								
									
										74
									
								
								ct/debian.sh
									
									
									
									
									
								
							
							
						
						
									
										74
									
								
								ct/debian.sh
									
									
									
									
									
								
							@@ -2,66 +2,41 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.debian.org/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ____       __    _           
 | 
			
		||||
   / __ \___  / /_  (_)___  ____ 
 | 
			
		||||
  / / / / _ \/ __ \/ / __ `/ __ \
 | 
			
		||||
 / /_/ /  __/ /_/ / / /_/ / / / /
 | 
			
		||||
/_____/\___/_.___/_/\__,_/_/ /_/ 
 | 
			
		||||
                                 
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Debian"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_tags="os"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating $APP LXC"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get -y upgrade &>/dev/null
 | 
			
		||||
msg_ok "Updated $APP LXC"
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /var ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Updating $APP LXC"
 | 
			
		||||
    apt-get update &>/dev/null
 | 
			
		||||
    apt-get -y upgrade &>/dev/null
 | 
			
		||||
    msg_ok "Updated $APP LXC"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -69,3 +44,4 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
							
								
								
									
										78
									
								
								ct/deconz.sh
									
									
									
									
									
								
							
							
						
						
									
										78
									
								
								ct/deconz.sh
									
									
									
									
									
								
							@@ -2,66 +2,41 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.phoscon.de/en/conbee2/software#deconz
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
       __     __________  _   _______
 | 
			
		||||
  ____/ /__  / ____/ __ \/ | / /__  /
 | 
			
		||||
 / __  / _ \/ /   / / / /  |/ /  / / 
 | 
			
		||||
/ /_/ /  __/ /___/ /_/ / /|  /  / /__
 | 
			
		||||
\__,_/\___/\____/\____/_/ |_/  /____/
 | 
			
		||||
 
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="deCONZ"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="zigbee"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="0"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="0"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /etc/apt/sources.list.d/deconz.list ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating $APP LXC"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get -y upgrade &>/dev/null
 | 
			
		||||
msg_ok "Updated $APP LXC"
 | 
			
		||||
exit
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -f /etc/apt/sources.list.d/deconz.list ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  msg_info "Updating $APP LXC"
 | 
			
		||||
  apt-get update &>/dev/null
 | 
			
		||||
  apt-get -y upgrade &>/dev/null
 | 
			
		||||
  msg_ok "Updated $APP LXC"
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -69,5 +44,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
             ${BL}http://${IP}${CL}\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"
 | 
			
		||||
							
								
								
									
										79
									
								
								ct/deluge.sh
									
									
									
									
									
								
							
							
						
						
									
										79
									
								
								ct/deluge.sh
									
									
									
									
									
								
							@@ -2,67 +2,41 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.deluge-torrent.org/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ____       __               
 | 
			
		||||
   / __ \___  / /_  ______ ____ 
 | 
			
		||||
  / / / / _ \/ / / / / __ `/ _ \
 | 
			
		||||
 / /_/ /  __/ / /_/ / /_/ /  __/
 | 
			
		||||
/_____/\___/_/\__,_/\__, /\___/ 
 | 
			
		||||
                   /____/       
 | 
			
		||||
 
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Deluge"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="torrent"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /etc/systemd/system/deluged.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating $APP LXC"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
pip3 install deluge[all] --upgrade
 | 
			
		||||
msg_ok "Updated $APP LXC"
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -f /etc/systemd/system/deluged.service ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Updating $APP LXC"
 | 
			
		||||
    apt-get update &>/dev/null
 | 
			
		||||
    pip3 install deluge[all] --upgrade
 | 
			
		||||
    msg_ok "Updated $APP LXC"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -70,5 +44,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:8112${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8112${CL}"
 | 
			
		||||
							
								
								
									
										74
									
								
								ct/docker.sh
									
									
									
									
									
								
							
							
						
						
									
										74
									
								
								ct/docker.sh
									
									
									
									
									
								
							@@ -2,66 +2,41 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.docker.com/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ____             __            
 | 
			
		||||
   / __ \____  _____/ /_  __  _____
 | 
			
		||||
  / / / / __ \/ ___/ //_/ _ \/ ___/
 | 
			
		||||
 / /_/ / /_/ / /__/ ,< /  __/ /    
 | 
			
		||||
/_____/\____/\___/_/|_|\___/_/     
 | 
			
		||||
 
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Docker"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="docker"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating ${APP} LXC"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get -y upgrade &>/dev/null
 | 
			
		||||
msg_ok "Updated ${APP} LXC"
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /var ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Updating ${APP} LXC"
 | 
			
		||||
    apt-get update &>/dev/null
 | 
			
		||||
    apt-get -y upgrade &>/dev/null
 | 
			
		||||
    msg_ok "Updated ${APP} LXC"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -69,3 +44,4 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
							
								
								
									
										80
									
								
								ct/dockge.sh
									
									
									
									
									
								
							
							
						
						
									
										80
									
								
								ct/dockge.sh
									
									
									
									
									
								
							@@ -2,67 +2,42 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://dockge.kuma.pet/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ____             __
 | 
			
		||||
   / __ \____  _____/ /______ ____
 | 
			
		||||
  / / / / __ \/ ___/ //_/ __ `/ _ \
 | 
			
		||||
 / /_/ / /_/ / /__/ ,< / /_/ /  __/
 | 
			
		||||
/_____/\____/\___/_/|_|\__, /\___/
 | 
			
		||||
                      /____/
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Dockge"
 | 
			
		||||
var_disk="18"
 | 
			
		||||
var_tags="docker"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="18"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/dockge ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating ${APP}"
 | 
			
		||||
cd /opt/dockge
 | 
			
		||||
docker compose pull
 | 
			
		||||
docker compose up -d
 | 
			
		||||
msg_ok "Updated ${APP}"
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /opt/dockge ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Updating ${APP}"
 | 
			
		||||
    cd /opt/dockge
 | 
			
		||||
    docker compose pull
 | 
			
		||||
    docker compose up -d
 | 
			
		||||
    msg_ok "Updated ${APP}"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -70,5 +45,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:5001${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:5001${CL}"
 | 
			
		||||
							
								
								
									
										96
									
								
								ct/emby.sh
									
									
									
									
									
								
							
							
						
						
									
										96
									
								
								ct/emby.sh
									
									
									
									
									
								
							@@ -2,77 +2,52 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://emby.media/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ______          __         
 | 
			
		||||
   / ____/___ ___  / /_  __  __
 | 
			
		||||
  / __/ / __  __ \/ __ \/ / / /
 | 
			
		||||
 / /___/ / / / / / /_/ / /_/ / 
 | 
			
		||||
/_____/_/ /_/ /_/_.___/\__, /  
 | 
			
		||||
                      /____/   
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Emby"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_tags="media"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_os="ubuntu"
 | 
			
		||||
var_version="22.04"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/emby-server ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
LATEST=$(curl -sL https://api.github.com/repos/MediaBrowser/Emby.Releases/releases/latest | grep '"tag_name":' | cut -d'"' -f4)
 | 
			
		||||
msg_info "Stopping ${APP}"
 | 
			
		||||
systemctl stop emby-server
 | 
			
		||||
msg_ok "Stopped ${APP}"
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /opt/emby-server ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    LATEST=$(curl -sL https://api.github.com/repos/MediaBrowser/Emby.Releases/releases/latest | grep '"tag_name":' | cut -d'"' -f4)
 | 
			
		||||
    msg_info "Stopping ${APP}"
 | 
			
		||||
    systemctl stop emby-server
 | 
			
		||||
    msg_ok "Stopped ${APP}"
 | 
			
		||||
 | 
			
		||||
msg_info "Updating ${APP}"
 | 
			
		||||
wget https://github.com/MediaBrowser/Emby.Releases/releases/download/${LATEST}/emby-server-deb_${LATEST}_amd64.deb &>/dev/null
 | 
			
		||||
dpkg -i emby-server-deb_${LATEST}_amd64.deb &>/dev/null
 | 
			
		||||
rm emby-server-deb_${LATEST}_amd64.deb
 | 
			
		||||
msg_ok "Updated ${APP}"
 | 
			
		||||
    msg_info "Updating ${APP}"
 | 
			
		||||
    wget https://github.com/MediaBrowser/Emby.Releases/releases/download/${LATEST}/emby-server-deb_${LATEST}_amd64.deb &>/dev/null
 | 
			
		||||
    dpkg -i emby-server-deb_${LATEST}_amd64.deb &>/dev/null
 | 
			
		||||
    rm emby-server-deb_${LATEST}_amd64.deb
 | 
			
		||||
    msg_ok "Updated ${APP}"
 | 
			
		||||
 | 
			
		||||
msg_info "Starting ${APP}"
 | 
			
		||||
systemctl start emby-server
 | 
			
		||||
msg_ok "Started ${APP}"
 | 
			
		||||
msg_ok "Updated Successfully"
 | 
			
		||||
exit
 | 
			
		||||
    msg_info "Starting ${APP}"
 | 
			
		||||
    systemctl start emby-server
 | 
			
		||||
    msg_ok "Started ${APP}"
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -80,5 +55,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
             ${BL}http://${IP}:8096${CL}\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8096${CL}"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										78
									
								
								ct/emqx.sh
									
									
									
									
									
								
							
							
						
						
									
										78
									
								
								ct/emqx.sh
									
									
									
									
									
								
							@@ -2,66 +2,41 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.emqx.com/en
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ________  _______   _  __
 | 
			
		||||
   / ____/  |/  / __ \ | |/ /
 | 
			
		||||
  / __/ / /|_/ / / / / |   / 
 | 
			
		||||
 / /___/ /  / / /_/ / /   |  
 | 
			
		||||
/_____/_/  /_/\___\_\/_/|_|  
 | 
			
		||||
                             
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="EMQX"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="mqtt"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating $APP LXC"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get -y upgrade &>/dev/null
 | 
			
		||||
msg_ok "Updated $APP LXC"
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /var ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Updating $APP LXC"
 | 
			
		||||
    apt-get update &>/dev/null
 | 
			
		||||
    apt-get -y upgrade &>/dev/null
 | 
			
		||||
    msg_ok "Updated $APP LXC"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -69,5 +44,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} Setup should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:18083${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:18083${CL}"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										109
									
								
								ct/ersatztv.sh
									
									
									
									
									
								
							
							
						
						
									
										109
									
								
								ct/ersatztv.sh
									
									
									
									
									
								
							@@ -1,85 +1,57 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck
 | 
			
		||||
# Co-Author: MickLesk (Canbiz)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://github.com/ErsatzTV/ErsatzTV/
 | 
			
		||||
# Author: MickLesk (Canbiz)
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://ersatztv.org/
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ______                __      _______    __
 | 
			
		||||
   / ____/_____________ _/ /_____/_  __/ |  / /
 | 
			
		||||
  / __/ / ___/ ___/ __ `/ __/_  / / /  | | / / 
 | 
			
		||||
 / /___/ /  (__  ) /_/ / /_  / /_/ /   | |/ /  
 | 
			
		||||
/_____/_/  /____/\__,_/\__/ /___/_/    |___/   
 | 
			
		||||
                                                         
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="ErsatzTV"
 | 
			
		||||
var_disk="5"
 | 
			
		||||
var_tags="iptv"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="5"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/ErsatzTV ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /opt/ErsatzTV ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
msg_info "Stopping ErsatzTV"
 | 
			
		||||
systemctl stop ersatzTV
 | 
			
		||||
msg_ok "Stopped ErsatzTV"
 | 
			
		||||
    msg_info "Stopping ErsatzTV"
 | 
			
		||||
    systemctl stop ersatzTV
 | 
			
		||||
    msg_ok "Stopped ErsatzTV"
 | 
			
		||||
 | 
			
		||||
msg_info "Updating ErsatzTV"
 | 
			
		||||
RELEASE=$(curl -s https://api.github.com/repos/ErsatzTV/ErsatzTV/releases | grep -oP '"tag_name": "\K[^"]+' | head -n 1)
 | 
			
		||||
cp -R /opt/ErsatzTV/ ErsatzTV-backup
 | 
			
		||||
rm ErsatzTV-backup/ErsatzTV
 | 
			
		||||
rm -rf /opt/ErsatzTV
 | 
			
		||||
wget -qO- "https://github.com/ErsatzTV/ErsatzTV/releases/download/${RELEASE}/ErsatzTV-${RELEASE}-linux-x64.tar.gz" | tar -xz -C /opt
 | 
			
		||||
mv "/opt/ErsatzTV-${RELEASE}-linux-x64" /opt/ErsatzTV
 | 
			
		||||
cp -R ErsatzTV-backup/* /opt/ErsatzTV/
 | 
			
		||||
rm -rf ErsatzTV-backup
 | 
			
		||||
msg_ok "Updated ErsatzTV"
 | 
			
		||||
    msg_info "Updating ErsatzTV"
 | 
			
		||||
    RELEASE=$(curl -s https://api.github.com/repos/ErsatzTV/ErsatzTV/releases | grep -oP '"tag_name": "\K[^"]+' | head -n 1)
 | 
			
		||||
    cp -R /opt/ErsatzTV/ ErsatzTV-backup
 | 
			
		||||
    rm ErsatzTV-backup/ErsatzTV
 | 
			
		||||
    rm -rf /opt/ErsatzTV
 | 
			
		||||
    wget -qO- "https://github.com/ErsatzTV/ErsatzTV/releases/download/${RELEASE}/ErsatzTV-${RELEASE}-linux-x64.tar.gz" | tar -xz -C /opt
 | 
			
		||||
    mv "/opt/ErsatzTV-${RELEASE}-linux-x64" /opt/ErsatzTV
 | 
			
		||||
    cp -R ErsatzTV-backup/* /opt/ErsatzTV/
 | 
			
		||||
    rm -rf ErsatzTV-backup
 | 
			
		||||
    msg_ok "Updated ErsatzTV"
 | 
			
		||||
 | 
			
		||||
msg_info "Starting ErsatzTV"
 | 
			
		||||
systemctl start ersatzTV
 | 
			
		||||
msg_ok "Started ErsatzTV"
 | 
			
		||||
msg_ok "Updated Successfully"
 | 
			
		||||
exit
 | 
			
		||||
    msg_info "Starting ErsatzTV"
 | 
			
		||||
    systemctl start ersatzTV
 | 
			
		||||
    msg_ok "Started ErsatzTV"
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -87,5 +59,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} Setup should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:8409${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8409${CL}"
 | 
			
		||||
@@ -2,77 +2,52 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://esphome.io/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ___________ ____  __  __                   
 | 
			
		||||
   / ____/ ___// __ \/ / / /___  ____ ___  ___ 
 | 
			
		||||
  / __/  \__ \/ /_/ / /_/ / __ \/ __ `__ \/ _ \
 | 
			
		||||
 / /___ ___/ / ____/ __  / /_/ / / / / / /  __/
 | 
			
		||||
/_____//____/_/   /_/ /_/\____/_/ /_/ /_/\___/ 
 | 
			
		||||
                                               
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="ESPHome"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="automation"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /etc/systemd/system/esphomeDashboard.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Stopping ESPHome"
 | 
			
		||||
systemctl stop esphomeDashboard
 | 
			
		||||
msg_ok "Stopped ESPHome"
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -f /etc/systemd/system/esphomeDashboard.service ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  msg_info "Stopping ESPHome"
 | 
			
		||||
  systemctl stop esphomeDashboard
 | 
			
		||||
  msg_ok "Stopped ESPHome"
 | 
			
		||||
 | 
			
		||||
msg_info "Updating ESPHome"
 | 
			
		||||
if [[ -d /srv/esphome ]]; then
 | 
			
		||||
  source /srv/esphome/bin/activate &>/dev/null
 | 
			
		||||
fi
 | 
			
		||||
pip3 install -U esphome &>/dev/null
 | 
			
		||||
msg_ok "Updated ESPHome"
 | 
			
		||||
  msg_info "Updating ESPHome"
 | 
			
		||||
  if [[ -d /srv/esphome ]]; then
 | 
			
		||||
    source /srv/esphome/bin/activate &>/dev/null
 | 
			
		||||
  fi
 | 
			
		||||
  pip3 install -U esphome &>/dev/null
 | 
			
		||||
  msg_ok "Updated ESPHome"
 | 
			
		||||
 | 
			
		||||
msg_info "Starting ESPHome"
 | 
			
		||||
systemctl start esphomeDashboard
 | 
			
		||||
msg_ok "Started ESPHome"
 | 
			
		||||
msg_ok "Updated Successfully"
 | 
			
		||||
exit
 | 
			
		||||
  msg_info "Starting ESPHome"
 | 
			
		||||
  systemctl start esphomeDashboard
 | 
			
		||||
  msg_ok "Started ESPHome"
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -80,5 +55,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:6052${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:6052${CL}"
 | 
			
		||||
							
								
								
									
										77
									
								
								ct/evcc.sh
									
									
									
									
									
								
							
							
						
						
									
										77
									
								
								ct/evcc.sh
									
									
									
									
									
								
							@@ -2,65 +2,41 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: MickLesk (Canbiz)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://evcc.io/en/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"     
 | 
			
		||||
  ___ _   ____________
 | 
			
		||||
 / _ \ | / / ___/ ___/
 | 
			
		||||
/  __/ |/ / /__/ /__  
 | 
			
		||||
\___/|___/\___/\___/  
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="evcc"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="solar;ev;automation"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /etc/apt/sources.list.d/evcc-stable.list ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating evcc LXC"
 | 
			
		||||
apt update &>/dev/null
 | 
			
		||||
apt --only-upgrade install -y evcc &>/dev/null
 | 
			
		||||
msg_ok "Updated Successfully"
 | 
			
		||||
exit
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -f /etc/apt/sources.list.d/evcc-stable.list ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  msg_info "Updating evcc LXC"
 | 
			
		||||
  apt update &>/dev/null
 | 
			
		||||
  apt --only-upgrade install -y evcc &>/dev/null
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -68,5 +44,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} Setup should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:7070${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:7070${CL}"
 | 
			
		||||
							
								
								
									
										123
									
								
								ct/fenrus.sh
									
									
									
									
									
								
							
							
						
						
									
										123
									
								
								ct/fenrus.sh
									
									
									
									
									
								
							@@ -1,89 +1,67 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# Co-Author: Scorpoon
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Author: tteck (tteckster) | Co-Author: Scorpoon
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://github.com/revenz/Fenrus
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ______
 | 
			
		||||
   / ____/__  ____  _______  _______
 | 
			
		||||
  / /_  / _ \/ __ \/ ___/ / / / ___/
 | 
			
		||||
 / __/ /  __/ / / / /  / /_/ (__  )
 | 
			
		||||
/_/    \___/_/ /_/_/   \__,_/____/
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Fenrus"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="dashboard"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/${APP} ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_error "There is currently no update path available."
 | 
			
		||||
exit
 | 
			
		||||
msg_info "Updating ${APP}"
 | 
			
		||||
systemctl stop ${APP}
 | 
			
		||||
git clone https://github.com/revenz/Fenrus.git
 | 
			
		||||
cd Fenrus || exit
 | 
			
		||||
gitVersionNumber=$(git rev-parse HEAD)
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -d /opt/${APP} ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  msg_error "There is currently no update path available."
 | 
			
		||||
  exit
 | 
			
		||||
  msg_info "Updating ${APP}"
 | 
			
		||||
  systemctl stop ${APP}
 | 
			
		||||
  git clone https://github.com/revenz/Fenrus.git
 | 
			
		||||
  cd Fenrus || exit
 | 
			
		||||
  gitVersionNumber=$(git rev-parse HEAD)
 | 
			
		||||
 | 
			
		||||
if [[ "${gitVersionNumber}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
 | 
			
		||||
  mkdir /opt/fenrus-data-backup
 | 
			
		||||
  cp -r "/opt/${APP}/data/" /opt/fenrus-data-backup/data
 | 
			
		||||
  if [[ ! -d /opt/fenrus-data-backup/data ]]; then msg_error "Backup of data folder failed! exiting..."; rm -r /opt/fenrus-data-backup/; exit; fi 
 | 
			
		||||
  export DOTNET_CLI_TELEMETRY_OPTOUT=1
 | 
			
		||||
  dotnet publish -c Release -o "/opt/${APP}/" Fenrus.csproj
 | 
			
		||||
  cp -r /opt/fenrus-data-backup/data/ "/opt/${APP}/"
 | 
			
		||||
  echo "${gitVersionNumber}" >"/opt/${APP}_version.txt"
 | 
			
		||||
  rm -r /opt/fenrus-data-backup/
 | 
			
		||||
  msg_ok "Updated $APP"
 | 
			
		||||
else
 | 
			
		||||
  msg_ok "No update required. ${APP} is already up to date"
 | 
			
		||||
fi
 | 
			
		||||
cd ..
 | 
			
		||||
rm -r Fenrus/
 | 
			
		||||
  if [[ "${gitVersionNumber}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
 | 
			
		||||
    mkdir /opt/fenrus-data-backup
 | 
			
		||||
    cp -r "/opt/${APP}/data/" /opt/fenrus-data-backup/data
 | 
			
		||||
    if [[ ! -d /opt/fenrus-data-backup/data ]]; then
 | 
			
		||||
      msg_error "Backup of data folder failed! exiting..."
 | 
			
		||||
      rm -r /opt/fenrus-data-backup/
 | 
			
		||||
      exit
 | 
			
		||||
    fi
 | 
			
		||||
    export DOTNET_CLI_TELEMETRY_OPTOUT=1
 | 
			
		||||
    dotnet publish -c Release -o "/opt/${APP}/" Fenrus.csproj
 | 
			
		||||
    cp -r /opt/fenrus-data-backup/data/ "/opt/${APP}/"
 | 
			
		||||
    echo "${gitVersionNumber}" >"/opt/${APP}_version.txt"
 | 
			
		||||
    rm -r /opt/fenrus-data-backup/
 | 
			
		||||
    msg_ok "Updated $APP"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required. ${APP} is already up to date"
 | 
			
		||||
  fi
 | 
			
		||||
  cd ..
 | 
			
		||||
  rm -r Fenrus/
 | 
			
		||||
 | 
			
		||||
systemctl start ${APP}
 | 
			
		||||
exit
 | 
			
		||||
  systemctl start ${APP}
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -91,5 +69,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:5000${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:5000${CL}"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										80
									
								
								ct/fhem.sh
									
									
									
									
									
								
							
							
						
						
									
										80
									
								
								ct/fhem.sh
									
									
									
									
									
								
							@@ -2,66 +2,41 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://fhem.de/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ________                 
 | 
			
		||||
   / ____/ /_  ___  ____ ___ 
 | 
			
		||||
  / /_  / __ \/ _ \/ __ `__ \
 | 
			
		||||
 / __/ / / / /  __/ / / / / /
 | 
			
		||||
/_/   /_/ /_/\___/_/ /_/ /_/ 
 | 
			
		||||
                             
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
APP="Fhem"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="FHEM"
 | 
			
		||||
var_tags="automation"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /etc/systemd/system/fhem.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating ${APP} LXC"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get -y upgrade &>/dev/null
 | 
			
		||||
msg_ok "Updated Successfully"
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -f /etc/systemd/system/fhem.service ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Updating ${APP} LXC"
 | 
			
		||||
    apt-get update &>/dev/null
 | 
			
		||||
    apt-get -y upgrade &>/dev/null
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -69,5 +44,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:8083${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8083${CL}"
 | 
			
		||||
@@ -1,63 +1,37 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# Co-Author: remz1337
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Author: tteck (tteckster) | Co-Author: remz1337
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://github.com/FlareSolverr/FlareSolverr
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ________               _____       __                    
 | 
			
		||||
   / ____/ /___ _________ / ___/____  / /   _____  __________
 | 
			
		||||
  / /_  / / __ `/ ___/ _ \\__ \/ __ \/ / | / / _ \/ ___/ ___/
 | 
			
		||||
 / __/ / / /_/ / /  /  __/__/ / /_/ / /| |/ /  __/ /  / /    
 | 
			
		||||
/_/   /_/\__,_/_/   \___/____/\____/_/ |___/\___/_/  /_/     
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="FlareSolverr"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="proxy"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -f /etc/systemd/system/flaresolverr.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
  if [[ ! -f /etc/systemd/system/flaresolverr.service ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  RELEASE=$(wget -q https://github.com/FlareSolverr/FlareSolverr/releases/latest -O - | grep "title>Release" | cut -d " " -f 4)
 | 
			
		||||
  if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
 | 
			
		||||
    msg_info "Updating $APP LXC"
 | 
			
		||||
@@ -79,5 +53,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:8191${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8191${CL}"
 | 
			
		||||
@@ -2,67 +2,42 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://flowiseai.com/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ________              _           ___    ____
 | 
			
		||||
   / ____/ /___ _      __(_)_______  /   |  /  _/
 | 
			
		||||
  / /_  / / __ \ | /| / / / ___/ _ \/ /| |  / /
 | 
			
		||||
 / __/ / / /_/ / |/ |/ / (__  )  __/ ___ |_/ /
 | 
			
		||||
/_/   /_/\____/|__/|__/_/____/\___/_/  |_/___/
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="FlowiseAI"
 | 
			
		||||
var_tags="low-code"
 | 
			
		||||
var_disk="10"
 | 
			
		||||
var_cpu="4"
 | 
			
		||||
var_ram="4096"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /etc/systemd/system/flowise.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating ${APP}"
 | 
			
		||||
systemctl stop flowise
 | 
			
		||||
npm install -g flowise --upgrade
 | 
			
		||||
systemctl start flowise
 | 
			
		||||
msg_ok "Updated ${APP}"
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -f /etc/systemd/system/flowise.service ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Updating ${APP}"
 | 
			
		||||
    systemctl stop flowise
 | 
			
		||||
    npm install -g flowise --upgrade
 | 
			
		||||
    systemctl start flowise
 | 
			
		||||
    msg_ok "Updated ${APP}"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -70,5 +45,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:3000${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"
 | 
			
		||||
							
								
								
									
										107
									
								
								ct/forgejo.sh
									
									
									
									
									
								
							
							
						
						
									
										107
									
								
								ct/forgejo.sh
									
									
									
									
									
								
							@@ -2,84 +2,58 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://forgejo.org/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
  clear
 | 
			
		||||
  cat <<"EOF"
 | 
			
		||||
    ______                        _     
 | 
			
		||||
   / ____/___  _________  ___    (_)___ 
 | 
			
		||||
  / /_  / __ \/ ___/ __ `/ _ \  / / __ \
 | 
			
		||||
 / __/ / /_/ / /  / /_/ /  __/ / / /_/ /
 | 
			
		||||
/_/    \____/_/   \__, /\___/_/ /\____/ 
 | 
			
		||||
                 /____/    /___/        
 | 
			
		||||
 
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Forgejo"
 | 
			
		||||
var_disk="10"
 | 
			
		||||
var_tags="git"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="10"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/forgejo ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Stopping ${APP}"
 | 
			
		||||
systemctl stop forgejo
 | 
			
		||||
msg_ok "Stopped ${APP}"
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -d /opt/forgejo ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  msg_info "Stopping ${APP}"
 | 
			
		||||
  systemctl stop forgejo
 | 
			
		||||
  msg_ok "Stopped ${APP}"
 | 
			
		||||
 | 
			
		||||
msg_info "Updating ${APP}"
 | 
			
		||||
RELEASE=$(curl -s https://codeberg.org/api/v1/repos/forgejo/forgejo/releases/latest | grep -oP '"tag_name":\s*"\K[^"]+' | sed 's/^v//')
 | 
			
		||||
wget -qO forgejo-$RELEASE-linux-amd64 "https://codeberg.org/forgejo/forgejo/releases/download/v${RELEASE}/forgejo-${RELEASE}-linux-amd64"
 | 
			
		||||
rm -rf /opt/forgejo/*
 | 
			
		||||
cp -r forgejo-$RELEASE-linux-amd64 /opt/forgejo/forgejo-$RELEASE-linux-amd64
 | 
			
		||||
chmod +x /opt/forgejo/forgejo-$RELEASE-linux-amd64
 | 
			
		||||
ln -sf /opt/forgejo/forgejo-$RELEASE-linux-amd64 /usr/local/bin/forgejo
 | 
			
		||||
msg_ok "Updated ${APP}"
 | 
			
		||||
  msg_info "Updating ${APP}"
 | 
			
		||||
  RELEASE=$(curl -s https://codeberg.org/api/v1/repos/forgejo/forgejo/releases/latest | grep -oP '"tag_name":\s*"\K[^"]+' | sed 's/^v//')
 | 
			
		||||
  wget -qO forgejo-$RELEASE-linux-amd64 "https://codeberg.org/forgejo/forgejo/releases/download/v${RELEASE}/forgejo-${RELEASE}-linux-amd64"
 | 
			
		||||
  rm -rf /opt/forgejo/*
 | 
			
		||||
  cp -r forgejo-$RELEASE-linux-amd64 /opt/forgejo/forgejo-$RELEASE-linux-amd64
 | 
			
		||||
  chmod +x /opt/forgejo/forgejo-$RELEASE-linux-amd64
 | 
			
		||||
  ln -sf /opt/forgejo/forgejo-$RELEASE-linux-amd64 /usr/local/bin/forgejo
 | 
			
		||||
  msg_ok "Updated ${APP}"
 | 
			
		||||
 | 
			
		||||
msg_info "Cleaning"
 | 
			
		||||
rm -rf forgejo-$RELEASE-linux-amd64
 | 
			
		||||
msg_ok "Cleaned"
 | 
			
		||||
  msg_info "Cleaning"
 | 
			
		||||
  rm -rf forgejo-$RELEASE-linux-amd64
 | 
			
		||||
  msg_ok "Cleaned"
 | 
			
		||||
 | 
			
		||||
msg_info "Starting ${APP}"
 | 
			
		||||
systemctl start forgejo
 | 
			
		||||
msg_ok "Started ${APP}"
 | 
			
		||||
msg_ok "Updated Successfully"
 | 
			
		||||
exit
 | 
			
		||||
  msg_info "Starting ${APP}"
 | 
			
		||||
  systemctl start forgejo
 | 
			
		||||
  msg_ok "Started ${APP}"
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -87,5 +61,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:3000${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"
 | 
			
		||||
@@ -2,64 +2,38 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Authors: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://frigate.video/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
  clear
 | 
			
		||||
  cat <<"EOF"
 | 
			
		||||
    ______     _             __
 | 
			
		||||
   / ____/____(_)___ _____ _/ /____
 | 
			
		||||
  / /_  / ___/ / __ `/ __ `/ __/ _ \
 | 
			
		||||
 / __/ / /  / / /_/ / /_/ / /_/  __/
 | 
			
		||||
/_/   /_/  /_/\__, /\__,_/\__/\___/
 | 
			
		||||
             /____/
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Frigate"
 | 
			
		||||
var_disk="20"
 | 
			
		||||
var_tags="nvr"
 | 
			
		||||
var_cpu="4"
 | 
			
		||||
var_ram="4096"
 | 
			
		||||
var_disk="20"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="11"
 | 
			
		||||
var_unprivileged="0"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="0"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -f /etc/systemd/system/frigate.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
  if [[ ! -f /etc/systemd/system/frigate.service ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  msg_error "To update Frigate, create a new container and transfer your configuration."
 | 
			
		||||
  exit  
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -67,7 +41,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:5000${CL} \n"
 | 
			
		||||
echo -e "go2rtc should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:1984${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:5000${CL}"
 | 
			
		||||
							
								
								
									
										91
									
								
								ct/gitea.sh
									
									
									
									
									
								
							
							
						
						
									
										91
									
								
								ct/gitea.sh
									
									
									
									
									
								
							@@ -1,73 +1,47 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# Co-author: Rogue-King
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Author: tteck (tteckster) | Co-Author: Rogue-King
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://about.gitea.com/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
   ______ _  __
 | 
			
		||||
  / ____/(_)/ /____  ____ _
 | 
			
		||||
 / / __// // __/ _ \/ __  /
 | 
			
		||||
/ /_/ // // /_/  __/ /_/ /
 | 
			
		||||
\____//_/ \__/\___/\__,_/
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Gitea"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_tags="git"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[  ! -f /usr/local/bin/gitea ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
RELEASE=$(wget -q https://github.com/go-gitea/gitea/releases/latest -O - | grep "title>Release" | cut -d " " -f 4 | sed 's/^v//')
 | 
			
		||||
msg_info "Updating $APP to ${RELEASE}"
 | 
			
		||||
wget -q https://github.com/go-gitea/gitea/releases/download/v$RELEASE/gitea-$RELEASE-linux-amd64
 | 
			
		||||
systemctl stop gitea
 | 
			
		||||
rm -rf /usr/local/bin/gitea 
 | 
			
		||||
mv gitea* /usr/local/bin/gitea
 | 
			
		||||
chmod +x /usr/local/bin/gitea
 | 
			
		||||
systemctl start gitea
 | 
			
		||||
msg_ok "Updated $APP Successfully"
 | 
			
		||||
exit
 | 
			
		||||
   header_info
 | 
			
		||||
   check_container_storage
 | 
			
		||||
   check_container_resources
 | 
			
		||||
   if [[ ! -f /usr/local/bin/gitea ]]; then
 | 
			
		||||
      msg_error "No ${APP} Installation Found!"
 | 
			
		||||
      exit
 | 
			
		||||
   fi
 | 
			
		||||
   RELEASE=$(wget -q https://github.com/go-gitea/gitea/releases/latest -O - | grep "title>Release" | cut -d " " -f 4 | sed 's/^v//')
 | 
			
		||||
   msg_info "Updating $APP to ${RELEASE}"
 | 
			
		||||
   wget -q https://github.com/go-gitea/gitea/releases/download/v$RELEASE/gitea-$RELEASE-linux-amd64
 | 
			
		||||
   systemctl stop gitea
 | 
			
		||||
   rm -rf /usr/local/bin/gitea
 | 
			
		||||
   mv gitea* /usr/local/bin/gitea
 | 
			
		||||
   chmod +x /usr/local/bin/gitea
 | 
			
		||||
   systemctl start gitea
 | 
			
		||||
   msg_ok "Updated $APP Successfully"
 | 
			
		||||
   exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -75,5 +49,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:3000${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"
 | 
			
		||||
							
								
								
									
										72
									
								
								ct/glance.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										72
									
								
								ct/glance.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,72 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 community-scripts ORG
 | 
			
		||||
# Author: kristocopani
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://github.com/glanceapp/glance
 | 
			
		||||
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Glance"
 | 
			
		||||
var_tags="dashboard"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
 | 
			
		||||
  if [[ ! -f /etc/systemd/system/glance.service ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/glanceapp/glance/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
  if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
    msg_info "Stopping Service"
 | 
			
		||||
    systemctl stop glance
 | 
			
		||||
    msg_ok "Stopped Service"
 | 
			
		||||
 | 
			
		||||
    msg_info "Updating ${APP} to v${RELEASE}"
 | 
			
		||||
    cd /opt
 | 
			
		||||
    wget -q https://github.com/glanceapp/glance/releases/download/v${RELEASE}/glance-linux-amd64.tar.gz
 | 
			
		||||
    rm -rf /opt/glance/glance
 | 
			
		||||
    tar -xzf glance-linux-amd64.tar.gz -C /opt/glance
 | 
			
		||||
    echo "${RELEASE}" >"/opt/${APP}_version.txt"
 | 
			
		||||
    msg_ok "Updated ${APP} to v${RELEASE}"
 | 
			
		||||
 | 
			
		||||
    msg_info "Starting Service"
 | 
			
		||||
    systemctl start glance
 | 
			
		||||
    msg_ok "Started Service"
 | 
			
		||||
 | 
			
		||||
    msg_info "Cleaning up"
 | 
			
		||||
    rm -rf /opt/glance-linux-amd64.tar.gz
 | 
			
		||||
    msg_ok "Cleaned"
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required. ${APP} is already at v${RELEASE}."
 | 
			
		||||
  fi
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080${CL}"
 | 
			
		||||
							
								
								
									
										87
									
								
								ct/go2rtc.sh
									
									
									
									
									
								
							
							
						
						
									
										87
									
								
								ct/go2rtc.sh
									
									
									
									
									
								
							@@ -2,71 +2,45 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://github.com/AlexxIT/go2rtc
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
               ___        __      
 | 
			
		||||
   ____ _____ |__ \ _____/ /______
 | 
			
		||||
  / __ `/ __ \__/ // ___/ __/ ___/
 | 
			
		||||
 / /_/ / /_/ / __// /  / /_/ /__  
 | 
			
		||||
 \__, /\____/____/_/   \__/\___/  
 | 
			
		||||
/____/                            
 | 
			
		||||
 
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="go2rtc"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="recorder;video"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/go2rtc ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating $APP"
 | 
			
		||||
systemctl stop go2rtc
 | 
			
		||||
cd /opt/go2rtc
 | 
			
		||||
rm go2rtc_linux_amd64
 | 
			
		||||
wget -q https://github.com/AlexxIT/go2rtc/releases/latest/download/go2rtc_linux_amd64
 | 
			
		||||
chmod +x go2rtc_linux_amd64
 | 
			
		||||
systemctl start go2rtc
 | 
			
		||||
msg_ok "Updated $APP"
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /opt/go2rtc ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Updating $APP"
 | 
			
		||||
    systemctl stop go2rtc
 | 
			
		||||
    cd /opt/go2rtc
 | 
			
		||||
    rm go2rtc_linux_amd64
 | 
			
		||||
    wget -q https://github.com/AlexxIT/go2rtc/releases/latest/download/go2rtc_linux_amd64
 | 
			
		||||
    chmod +x go2rtc_linux_amd64
 | 
			
		||||
    systemctl start go2rtc
 | 
			
		||||
    msg_ok "Updated $APP"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -74,5 +48,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:1984${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:1984${CL}"
 | 
			
		||||
							
								
								
									
										72
									
								
								ct/gokapi.sh
									
									
									
									
									
								
							
							
						
						
									
										72
									
								
								ct/gokapi.sh
									
									
									
									
									
								
							@@ -2,63 +2,38 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://github.com/Forceu/Gokapi
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
   ______      __               _
 | 
			
		||||
  / ____/___  / /______ _____  (_)
 | 
			
		||||
 / / __/ __ \/ //_/ __ `/ __ \/ /
 | 
			
		||||
/ /_/ / /_/ / ,< / /_/ / /_/ / /
 | 
			
		||||
\____/\____/_/|_|\__,_/ .___/_/
 | 
			
		||||
                     /_/
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Gokapi"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="file;sharing"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/gokapi ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_error "There is currently no update path available."
 | 
			
		||||
exit
 | 
			
		||||
   header_info
 | 
			
		||||
   check_container_storage
 | 
			
		||||
   check_container_resources
 | 
			
		||||
   if [[ ! -d /opt/gokapi ]]; then
 | 
			
		||||
      msg_error "No ${APP} Installation Found!"
 | 
			
		||||
      exit
 | 
			
		||||
   fi
 | 
			
		||||
   msg_error "There is currently no update path available."
 | 
			
		||||
   exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -66,5 +41,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} Setup should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:53842/setup${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:53842/setup${CL}"
 | 
			
		||||
							
								
								
									
										110
									
								
								ct/gotify.sh
									
									
									
									
									
								
							
							
						
						
									
										110
									
								
								ct/gotify.sh
									
									
									
									
									
								
							@@ -2,85 +2,60 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://gotify.net/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
   ______      __  _ ____
 | 
			
		||||
  / ____/___  / /_(_) __/_  __
 | 
			
		||||
 / / __/ __ \/ __/ / /_/ / / /
 | 
			
		||||
/ /_/ / /_/ / /_/ / __/ /_/ /
 | 
			
		||||
\____/\____/\__/_/_/  \__, /
 | 
			
		||||
                     /____/
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Gotify"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_tags="notification"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/gotify ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -d /opt/gotify ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
 | 
			
		||||
RELEASE=$(curl -s https://api.github.com/repos/gotify/server/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
  msg_info "Stopping ${APP}"
 | 
			
		||||
  systemctl stop gotify
 | 
			
		||||
  msg_ok "Stopped ${APP}"
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/gotify/server/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
  if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
    msg_info "Stopping ${APP}"
 | 
			
		||||
    systemctl stop gotify
 | 
			
		||||
    msg_ok "Stopped ${APP}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
  cd /opt/gotify
 | 
			
		||||
  wget -q https://github.com/gotify/server/releases/download/v${RELEASE}/gotify-linux-amd64.zip
 | 
			
		||||
  unzip -oq gotify-linux-amd64.zip
 | 
			
		||||
  rm -rf gotify-linux-amd64.zip
 | 
			
		||||
  chmod +x gotify-linux-amd64
 | 
			
		||||
  echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
  msg_ok "Updated ${APP} to ${RELEASE}"
 | 
			
		||||
    msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
    cd /opt/gotify
 | 
			
		||||
    wget -q https://github.com/gotify/server/releases/download/v${RELEASE}/gotify-linux-amd64.zip
 | 
			
		||||
    unzip -oq gotify-linux-amd64.zip
 | 
			
		||||
    rm -rf gotify-linux-amd64.zip
 | 
			
		||||
    chmod +x gotify-linux-amd64
 | 
			
		||||
    echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
    msg_ok "Updated ${APP} to ${RELEASE}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Starting ${APP}"
 | 
			
		||||
  systemctl start gotify
 | 
			
		||||
  msg_ok "Started ${APP}"
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
else
 | 
			
		||||
  msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
fi
 | 
			
		||||
exit
 | 
			
		||||
    msg_info "Starting ${APP}"
 | 
			
		||||
    systemctl start gotify
 | 
			
		||||
    msg_ok "Started ${APP}"
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
  fi
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -88,5 +63,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP} ${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"
 | 
			
		||||
 
 | 
			
		||||
@@ -2,66 +2,41 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://grafana.com/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
   ______           ____                 
 | 
			
		||||
  / ____/________ _/ __/___ _____  ____ _
 | 
			
		||||
 / / __/ ___/ __  / /_/ __  / __ \/ __  /
 | 
			
		||||
/ /_/ / /  / /_/ / __/ /_/ / / / / /_/ / 
 | 
			
		||||
\____/_/   \__,_/_/  \__,_/_/ /_/\__,_/  
 | 
			
		||||
 
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Grafana"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_tags="monitoring;visualization"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /etc/apt/sources.list.d/grafana.list ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating ${APP}"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get -y upgrade &>/dev/null
 | 
			
		||||
msg_ok "Updated Successfully"
 | 
			
		||||
exit
 | 
			
		||||
   header_info
 | 
			
		||||
   check_container_storage
 | 
			
		||||
   check_container_resources
 | 
			
		||||
   if [[ ! -f /etc/apt/sources.list.d/grafana.list ]]; then
 | 
			
		||||
      msg_error "No ${APP} Installation Found!"
 | 
			
		||||
      exit
 | 
			
		||||
   fi
 | 
			
		||||
   msg_info "Updating ${APP}"
 | 
			
		||||
   apt-get update &>/dev/null
 | 
			
		||||
   apt-get -y upgrade &>/dev/null
 | 
			
		||||
   msg_ok "Updated Successfully"
 | 
			
		||||
   exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -69,5 +44,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:3000${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"
 | 
			
		||||
							
								
								
									
										78
									
								
								ct/grist.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										78
									
								
								ct/grist.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,78 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Source: https://github.com/gristlabs/grist-core
 | 
			
		||||
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Grist"
 | 
			
		||||
var_tags="database;spreadsheet"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
 | 
			
		||||
  if [[ ! -d /opt/grist ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/gristlabs/grist-core/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
  if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
 | 
			
		||||
    msg_info "Stopping ${APP} Service"
 | 
			
		||||
    systemctl stop grist
 | 
			
		||||
    msg_ok "Stopped ${APP} Service"
 | 
			
		||||
 | 
			
		||||
    msg_info "Updating ${APP} to v${RELEASE}"
 | 
			
		||||
    cd /opt
 | 
			
		||||
    rm -rf grist_bak
 | 
			
		||||
    mv grist grist_bak
 | 
			
		||||
    wget -q https://github.com/gristlabs/grist-core/archive/refs/tags/v${RELEASE}.zip
 | 
			
		||||
    unzip -q v$RELEASE.zip
 | 
			
		||||
    mv grist-core-${RELEASE} grist
 | 
			
		||||
    cp -n /opt/grist_bak/.env /opt/grist/.env
 | 
			
		||||
    cd grist
 | 
			
		||||
    yarn install >/dev/null 2>&1
 | 
			
		||||
    yarn run build:prod >/dev/null 2>&1
 | 
			
		||||
    yarn run install:python >/dev/null 2>&1
 | 
			
		||||
    echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
    msg_ok "Updated ${APP} to v${RELEASE}"
 | 
			
		||||
 | 
			
		||||
    msg_info "Starting ${APP} Service"
 | 
			
		||||
    systemctl start grist
 | 
			
		||||
    msg_ok "Started ${APP} Service"
 | 
			
		||||
 | 
			
		||||
    msg_info "Cleaning up"
 | 
			
		||||
    rm -rf /opt/v$RELEASE.zip
 | 
			
		||||
    msg_ok "Cleaned"
 | 
			
		||||
 | 
			
		||||
    msg_ok "Updated Successfully!\n"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
  fi
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}Grist: http://${IP}:8484${CL}"
 | 
			
		||||
							
								
								
									
										98
									
								
								ct/grocy.sh
									
									
									
									
									
								
							
							
						
						
									
										98
									
								
								ct/grocy.sh
									
									
									
									
									
								
							@@ -2,76 +2,51 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://grocy.info/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
   ____ __________  _______  __
 | 
			
		||||
  / __  / ___/ __ \/ ___/ / / /
 | 
			
		||||
 / /_/ / /  / /_/ / /__/ /_/ / 
 | 
			
		||||
 \__, /_/   \____/\___/\__, /  
 | 
			
		||||
/____/                /____/   
 | 
			
		||||
 
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="grocy"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_tags="grocery;household"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /etc/apache2/sites-available/grocy.conf ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
php_version=$(php -v | head -n 1 | awk '{print $2}')
 | 
			
		||||
if [[ ! $php_version == "8.3"* ]]; then
 | 
			
		||||
  msg_info "Updating PHP"
 | 
			
		||||
  curl -sSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg
 | 
			
		||||
  echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ bookworm main" >/etc/apt/sources.list.d/php.list
 | 
			
		||||
  apt-get update
 | 
			
		||||
  apt-get install -y php8.3 php8.3-cli php8.3-{bz2,curl,mbstring,intl,sqlite3,fpm,gd,zip,xml}
 | 
			
		||||
  systemctl reload apache2
 | 
			
		||||
  apt autoremove
 | 
			
		||||
  msg_ok "Updated PHP"
 | 
			
		||||
fi
 | 
			
		||||
msg_info "Updating ${APP}"
 | 
			
		||||
bash /var/www/html/update.sh
 | 
			
		||||
msg_ok "Updated Successfully"
 | 
			
		||||
exit
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -f /etc/apache2/sites-available/grocy.conf ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  php_version=$(php -v | head -n 1 | awk '{print $2}')
 | 
			
		||||
  if [[ ! $php_version == "8.3"* ]]; then
 | 
			
		||||
    msg_info "Updating PHP"
 | 
			
		||||
    curl -sSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg
 | 
			
		||||
    echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ bookworm main" >/etc/apt/sources.list.d/php.list
 | 
			
		||||
    apt-get update
 | 
			
		||||
    apt-get install -y php8.3 php8.3-cli php8.3-{bz2,curl,mbstring,intl,sqlite3,fpm,gd,zip,xml}
 | 
			
		||||
    systemctl reload apache2
 | 
			
		||||
    apt autoremove
 | 
			
		||||
    msg_ok "Updated PHP"
 | 
			
		||||
  fi
 | 
			
		||||
  msg_info "Updating ${APP}"
 | 
			
		||||
  bash /var/www/html/update.sh
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -79,5 +54,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"
 | 
			
		||||
							
								
								
									
										104
									
								
								ct/headscale.sh
									
									
									
									
									
								
							
							
						
						
									
										104
									
								
								ct/headscale.sh
									
									
									
									
									
								
							@@ -2,82 +2,57 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://github.com/juanfont/headscale
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    __  __               __                __
 | 
			
		||||
   / / / /__  ____ _____/ /_____________ _/ /__
 | 
			
		||||
  / /_/ / _ \/ __ `/ __  / ___/ ___/ __ `/ / _ \
 | 
			
		||||
 / __  /  __/ /_/ / /_/ (__  ) /__/ /_/ / /  __/
 | 
			
		||||
/_/ /_/\___/\__,_/\__,_/____/\___/\__,_/_/\___/
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Headscale"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_tags="tailscale"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /etc/headscale ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
RELEASE=$(curl -s https://api.github.com/repos/juanfont/headscale/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
 | 
			
		||||
  msg_info "Stopping ${APP}"
 | 
			
		||||
  systemctl stop headscale
 | 
			
		||||
  msg_ok "Stopped ${APP}"
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -d /etc/headscale ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/juanfont/headscale/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
  if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
 | 
			
		||||
    msg_info "Stopping ${APP}"
 | 
			
		||||
    systemctl stop headscale
 | 
			
		||||
    msg_ok "Stopped ${APP}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Updating $APP to v${RELEASE}"
 | 
			
		||||
  wget -q https://github.com/juanfont/headscale/releases/download/v${RELEASE}/headscale_${RELEASE}_linux_amd64.deb
 | 
			
		||||
  dpkg -i headscale_${RELEASE}_linux_amd64.deb
 | 
			
		||||
  rm headscale_${RELEASE}_linux_amd64.deb
 | 
			
		||||
  echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
  msg_ok "Updated $APP to ${RELEASE}"
 | 
			
		||||
  
 | 
			
		||||
  msg_info "Starting ${APP}"
 | 
			
		||||
  systemctl start headscale
 | 
			
		||||
  msg_ok "Started ${APP}"
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
else
 | 
			
		||||
  msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
fi
 | 
			
		||||
exit
 | 
			
		||||
    msg_info "Updating $APP to v${RELEASE}"
 | 
			
		||||
    wget -q https://github.com/juanfont/headscale/releases/download/v${RELEASE}/headscale_${RELEASE}_linux_amd64.deb
 | 
			
		||||
    dpkg -i headscale_${RELEASE}_linux_amd64.deb
 | 
			
		||||
    rm headscale_${RELEASE}_linux_amd64.deb
 | 
			
		||||
    echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
    msg_ok "Updated $APP to ${RELEASE}"
 | 
			
		||||
 | 
			
		||||
    msg_info "Starting ${APP}"
 | 
			
		||||
    systemctl start headscale
 | 
			
		||||
    msg_ok "Started ${APP}"
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
  fi
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -85,3 +60,4 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
@@ -2,106 +2,76 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://heimdall.site/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
            _               _       _ _      ___          _     _                         _ 
 | 
			
		||||
  /\  /\___(_)_ __ ___   __| | __ _| | |    /   \__ _ ___| |__ | |__   ___   __ _ _ __ __| |
 | 
			
		||||
 / /_/ / _ \ | '_ ` _ \ / _` |/ _` | | |   / /\ / _` / __| '_ \| '_ \ / _ \ / _` | '__/ _` |
 | 
			
		||||
/ __  /  __/ | | | | | | (_| | (_| | | |  / /_// (_| \__ \ | | | |_) | (_) | (_| | | | (_| |
 | 
			
		||||
\/ /_/ \___|_|_| |_| |_|\__,_|\__,_|_|_| /___,' \__,_|___/_| |_|_.__/ \___/ \__,_|_|  \__,_|
 | 
			
		||||
                                                                                            
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Heimdall-Dashboard"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_tags="dashboard"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/Heimdall ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
RELEASE=$(curl -sX GET "https://api.github.com/repos/linuxserver/Heimdall/releases/latest" | awk '/tag_name/{print $4;exit}' FS='[""]')
 | 
			
		||||
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
 | 
			
		||||
  msg_info "Stopping ${APP}"
 | 
			
		||||
  systemctl stop heimdall
 | 
			
		||||
  sleep 1
 | 
			
		||||
  msg_ok "Stopped ${APP}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Backing up Data"
 | 
			
		||||
  cp -R /opt/Heimdall/database database-backup
 | 
			
		||||
  cp -R /opt/Heimdall/public public-backup
 | 
			
		||||
  sleep 1
 | 
			
		||||
  msg_ok "Backed up Data"
 | 
			
		||||
 | 
			
		||||
  msg_info "Updating Heimdall Dashboard to ${RELEASE}"
 | 
			
		||||
  wget -q https://github.com/linuxserver/Heimdall/archive/${RELEASE}.tar.gz
 | 
			
		||||
  tar xzf ${RELEASE}.tar.gz
 | 
			
		||||
  VER=$(curl -s https://api.github.com/repos/linuxserver/Heimdall/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
  cp -R Heimdall-${VER}/* /opt/Heimdall
 | 
			
		||||
  cd /opt/Heimdall
 | 
			
		||||
  apt-get install -y composer &>/dev/null
 | 
			
		||||
  COMPOSER_ALLOW_SUPERUSER=1 composer dump-autoload &>/dev/null
 | 
			
		||||
  echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
  msg_ok "Updated Heimdall Dashboard to ${RELEASE}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Restoring Data"
 | 
			
		||||
  cd ~
 | 
			
		||||
  cp -R database-backup/* /opt/Heimdall/database
 | 
			
		||||
  cp -R public-backup/* /opt/Heimdall/public
 | 
			
		||||
  sleep 1
 | 
			
		||||
  msg_ok "Restored Data"
 | 
			
		||||
 | 
			
		||||
  msg_info "Cleanup"
 | 
			
		||||
  rm -rf {${RELEASE}.tar.gz,Heimdall-${VER},public-backup,database-backup,Heimdall}
 | 
			
		||||
  sleep 1
 | 
			
		||||
  msg_ok "Cleaned"
 | 
			
		||||
 | 
			
		||||
  msg_info "Starting ${APP}"
 | 
			
		||||
  systemctl start heimdall.service
 | 
			
		||||
  sleep 2
 | 
			
		||||
  msg_ok "Started ${APP}"
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
else
 | 
			
		||||
  msg_ok "No update required.  ${APP} is already at ${RELEASE}."
 | 
			
		||||
fi
 | 
			
		||||
exit
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -d /opt/Heimdall ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  RELEASE=$(curl -sX GET "https://api.github.com/repos/linuxserver/Heimdall/releases/latest" | awk '/tag_name/{print $4;exit}' FS='[""]')
 | 
			
		||||
  if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
 | 
			
		||||
    msg_info "Stopping ${APP}"
 | 
			
		||||
    systemctl stop heimdall
 | 
			
		||||
    sleep 1
 | 
			
		||||
    msg_ok "Stopped ${APP}"
 | 
			
		||||
    msg_info "Backing up Data"
 | 
			
		||||
    cp -R /opt/Heimdall/database database-backup
 | 
			
		||||
    cp -R /opt/Heimdall/public public-backup
 | 
			
		||||
    sleep 1
 | 
			
		||||
    msg_ok "Backed up Data"
 | 
			
		||||
    msg_info "Updating Heimdall Dashboard to ${RELEASE}"
 | 
			
		||||
    wget -q https://github.com/linuxserver/Heimdall/archive/${RELEASE}.tar.gz
 | 
			
		||||
    tar xzf ${RELEASE}.tar.gz
 | 
			
		||||
    VER=$(curl -s https://api.github.com/repos/linuxserver/Heimdall/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
    cp -R Heimdall-${VER}/* /opt/Heimdall
 | 
			
		||||
    cd /opt/Heimdall
 | 
			
		||||
    apt-get install -y composer &>/dev/null
 | 
			
		||||
    COMPOSER_ALLOW_SUPERUSER=1 composer dump-autoload &>/dev/null
 | 
			
		||||
    echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
    msg_ok "Updated Heimdall Dashboard to ${RELEASE}"
 | 
			
		||||
    msg_info "Restoring Data"
 | 
			
		||||
    cd ~
 | 
			
		||||
    cp -R database-backup/* /opt/Heimdall/database
 | 
			
		||||
    cp -R public-backup/* /opt/Heimdall/public
 | 
			
		||||
    sleep 1
 | 
			
		||||
    msg_ok "Restored Data"
 | 
			
		||||
    msg_info "Cleanup"
 | 
			
		||||
    rm -rf {${RELEASE}.tar.gz,Heimdall-${VER},public-backup,database-backup,Heimdall}
 | 
			
		||||
    sleep 1
 | 
			
		||||
    msg_ok "Cleaned"
 | 
			
		||||
    msg_info "Starting ${APP}"
 | 
			
		||||
    systemctl start heimdall.service
 | 
			
		||||
    sleep 2
 | 
			
		||||
    msg_ok "Started ${APP}"
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required.  ${APP} is already at ${RELEASE}."
 | 
			
		||||
  fi
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -109,5 +79,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:7990${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:7990${CL}"
 | 
			
		||||
							
								
								
									
										68
									
								
								ct/hivemq.sh
									
									
									
									
									
								
							
							
						
						
									
										68
									
								
								ct/hivemq.sh
									
									
									
									
									
								
							@@ -2,63 +2,38 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.hivemq.com/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    __  ___            __  _______      ____________
 | 
			
		||||
   / / / (_)   _____  /  |/  / __ \    / ____/ ____/
 | 
			
		||||
  / /_/ / / | / / _ \/ /|_/ / / / /   / /   / __/
 | 
			
		||||
 / __  / /| |/ /  __/ /  / / /_/ /   / /___/ /___
 | 
			
		||||
/_/ /_/_/ |___/\___/_/  /_/\___\_\   \____/_____/
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="HiveMQ"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="mqtt"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_error "There is currently no update path available."
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /var ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_error "There is currently no update path available."
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -66,3 +41,4 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
							
								
								
									
										82
									
								
								ct/hoarder.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										82
									
								
								ct/hoarder.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,82 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: MickLesk (Canbiz) & vhsdream
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://hoarder.app/
 | 
			
		||||
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Hoarder"
 | 
			
		||||
var_tags="bookmark"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="4096"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -d /opt/hoarder ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/hoarder-app/hoarder/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
  PREV_RELEASE=$(cat /opt/${APP}_version.txt)
 | 
			
		||||
  if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "${PREV_RELEASE}" ]]; then
 | 
			
		||||
    msg_info "Stopping Services"
 | 
			
		||||
    systemctl stop hoarder-web hoarder-workers hoarder-browser
 | 
			
		||||
    msg_ok "Stopped Services"
 | 
			
		||||
    msg_info "Updating ${APP} to v${RELEASE}"
 | 
			
		||||
    cd /opt
 | 
			
		||||
    mv /opt/hoarder/.env /opt/.env
 | 
			
		||||
    rm -rf /opt/hoarder
 | 
			
		||||
    wget -q "https://github.com/hoarder-app/hoarder/archive/refs/tags/v${RELEASE}.zip"
 | 
			
		||||
    unzip -q v${RELEASE}.zip
 | 
			
		||||
    mv hoarder-${RELEASE} /opt/hoarder
 | 
			
		||||
    cd /opt/hoarder/apps/web
 | 
			
		||||
    pnpm install --frozen-lockfile &>/dev/null
 | 
			
		||||
    pnpm exec next build --experimental-build-mode compile &>/dev/null
 | 
			
		||||
    cp -r /opt/hoarder/apps/web/.next/standalone/apps/web/server.js /opt/hoarder/apps/web
 | 
			
		||||
    cd /opt/hoarder/apps/workers
 | 
			
		||||
    pnpm install --frozen-lockfile &>/dev/null
 | 
			
		||||
    export DATA_DIR=/opt/hoarder_data
 | 
			
		||||
    cd /opt/hoarder/packages/db
 | 
			
		||||
    pnpm migrate &>/dev/null
 | 
			
		||||
    mv /opt/.env /opt/hoarder/.env
 | 
			
		||||
    sed -i "s/SERVER_VERSION=${PREV_RELEASE}/SERVER_VERSION=${RELEASE}/" /opt/hoarder/.env
 | 
			
		||||
    msg_ok "Updated ${APP} to v${RELEASE}"
 | 
			
		||||
 | 
			
		||||
    msg_info "Starting Services"
 | 
			
		||||
    systemctl start hoarder-browser hoarder-workers hoarder-web
 | 
			
		||||
    msg_ok "Started Services"
 | 
			
		||||
    msg_info "Cleaning up"
 | 
			
		||||
    rm -R /opt/v${RELEASE}.zip
 | 
			
		||||
    echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
    msg_ok "Cleaned"
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required.  ${APP} is already at ${RELEASE}."
 | 
			
		||||
  fi
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"
 | 
			
		||||
							
								
								
									
										147
									
								
								ct/homarr.sh
									
									
									
									
									
								
							
							
						
						
									
										147
									
								
								ct/homarr.sh
									
									
									
									
									
								
							@@ -1,105 +1,79 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# Co-Author: MickLesk (Canbiz)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Author: tteck (tteckster) | Co-Author: MickLesk (Canbiz)
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://homarr.dev/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    __  __
 | 
			
		||||
   / / / /___  ____ ___  ____ ___________
 | 
			
		||||
  / /_/ / __ \/ __ `__ \/ __ `/ ___/ ___/
 | 
			
		||||
 / __  / /_/ / / / / / / /_/ / /  / /
 | 
			
		||||
/_/ /_/\____/_/ /_/ /_/\__,_/_/  /_/
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Homarr"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_tags="arr;dashboard"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/homarr ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
RELEASE=$(curl -s https://api.github.com/repos/ajnart/homarr/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
  msg_info "Stopping Services"
 | 
			
		||||
  systemctl stop homarr
 | 
			
		||||
  msg_ok "Services Stopped"
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -d /opt/homarr ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/ajnart/homarr/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
  if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
    msg_info "Stopping Services"
 | 
			
		||||
    systemctl stop homarr
 | 
			
		||||
    msg_ok "Services Stopped"
 | 
			
		||||
 | 
			
		||||
  msg_info "Backing up Data"
 | 
			
		||||
  mkdir -p /opt/homarr-data-backup
 | 
			
		||||
  cp /opt/homarr/.env /opt/homarr-data-backup/.env
 | 
			
		||||
  cp /opt/homarr/database/db.sqlite /opt/homarr-data-backup/db.sqlite
 | 
			
		||||
  cp -r /opt/homarr/data/configs /opt/homarr-data-backup/configs
 | 
			
		||||
  msg_ok "Backed up Data"
 | 
			
		||||
    msg_info "Backing up Data"
 | 
			
		||||
    mkdir -p /opt/homarr-data-backup
 | 
			
		||||
    cp /opt/homarr/.env /opt/homarr-data-backup/.env
 | 
			
		||||
    cp /opt/homarr/database/db.sqlite /opt/homarr-data-backup/db.sqlite
 | 
			
		||||
    cp -r /opt/homarr/data/configs /opt/homarr-data-backup/configs
 | 
			
		||||
    msg_ok "Backed up Data"
 | 
			
		||||
 | 
			
		||||
  msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
  wget -q "https://github.com/ajnart/homarr/archive/refs/tags/v${RELEASE}.zip"
 | 
			
		||||
  unzip -q v${RELEASE}.zip
 | 
			
		||||
  rm -rf v${RELEASE}.zip
 | 
			
		||||
  rm -rf /opt/homarr
 | 
			
		||||
  mv homarr-${RELEASE} /opt/homarr
 | 
			
		||||
  mv /opt/homarr-data-backup/.env /opt/homarr/.env
 | 
			
		||||
  cd /opt/homarr
 | 
			
		||||
  yarn install &>/dev/null
 | 
			
		||||
  yarn build &>/dev/null
 | 
			
		||||
  echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
  msg_ok "Updated ${APP}"
 | 
			
		||||
    msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
    wget -q "https://github.com/ajnart/homarr/archive/refs/tags/v${RELEASE}.zip"
 | 
			
		||||
    unzip -q v${RELEASE}.zip
 | 
			
		||||
    rm -rf v${RELEASE}.zip
 | 
			
		||||
    rm -rf /opt/homarr
 | 
			
		||||
    mv homarr-${RELEASE} /opt/homarr
 | 
			
		||||
    mv /opt/homarr-data-backup/.env /opt/homarr/.env
 | 
			
		||||
    cd /opt/homarr
 | 
			
		||||
    yarn install &>/dev/null
 | 
			
		||||
    yarn build &>/dev/null
 | 
			
		||||
    echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
    msg_ok "Updated ${APP}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Restoring Data"
 | 
			
		||||
  rm -rf /opt/homarr/data/configs
 | 
			
		||||
  mv /opt/homarr-data-backup/configs /opt/homarr/data/configs
 | 
			
		||||
  mv /opt/homarr-data-backup/db.sqlite /opt/homarr/database/db.sqlite
 | 
			
		||||
  yarn db:migrate &>/dev/null
 | 
			
		||||
  rm -rf /opt/homarr-data-backup
 | 
			
		||||
  msg_ok "Restored Data"
 | 
			
		||||
    msg_info "Restoring Data"
 | 
			
		||||
    rm -rf /opt/homarr/data/configs
 | 
			
		||||
    mv /opt/homarr-data-backup/configs /opt/homarr/data/configs
 | 
			
		||||
    mv /opt/homarr-data-backup/db.sqlite /opt/homarr/database/db.sqlite
 | 
			
		||||
    yarn db:migrate &>/dev/null
 | 
			
		||||
    rm -rf /opt/homarr-data-backup
 | 
			
		||||
    msg_ok "Restored Data"
 | 
			
		||||
 | 
			
		||||
  msg_info "Starting Services"
 | 
			
		||||
  systemctl start homarr
 | 
			
		||||
  msg_ok "Started Services"
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
else
 | 
			
		||||
  msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
fi
 | 
			
		||||
exit
 | 
			
		||||
    msg_info "Starting Services"
 | 
			
		||||
    systemctl start homarr
 | 
			
		||||
    msg_ok "Started Services"
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
  fi
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -107,5 +81,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:3000${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"
 | 
			
		||||
@@ -2,56 +2,28 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.home-assistant.io/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
  clear
 | 
			
		||||
  cat <<"EOF"
 | 
			
		||||
                                _           _     _              _       ___               
 | 
			
		||||
  /\  /\___  _ __ ___   ___    /_\  ___ ___(_)___| |_ __ _ _ __ | |_    / __\___  _ __ ___ 
 | 
			
		||||
 / /_/ / _ \| '_ ` _ \ / _ \  //_\\/ __/ __| / __| __/ _` | '_ \| __|  / /  / _ \| '__/ _ \
 | 
			
		||||
/ __  / (_) | | | | | |  __/ /  _  \__ \__ \ \__ \ || (_| | | | | |_  / /__| (_) | | |  __/
 | 
			
		||||
\/ /_/ \___/|_| |_| |_|\___| \_/ \_/___/___/_|___/\__\__,_|_| |_|\__| \____/\___/|_|  \___|
 | 
			
		||||
                                                                                           
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Home Assistant-Core"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_tags="automation;smarthome"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_os="ubuntu"
 | 
			
		||||
var_version="24.04"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
@@ -119,7 +91,7 @@ function update_script() {
 | 
			
		||||
      filebrowser config init -a '0.0.0.0' &>/dev/null
 | 
			
		||||
      filebrowser config set -a '0.0.0.0' &>/dev/null
 | 
			
		||||
      filebrowser config set --auth.method=noauth &>/dev/null
 | 
			
		||||
      filebrowser users add ID 1 --perm.admin &>/dev/null  
 | 
			
		||||
      filebrowser users add ID 1 --perm.admin &>/dev/null
 | 
			
		||||
    else
 | 
			
		||||
      filebrowser config init -a '0.0.0.0' &>/dev/null
 | 
			
		||||
      filebrowser config set -a '0.0.0.0' &>/dev/null
 | 
			
		||||
@@ -154,5 +126,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:8123${CL}"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8123${CL}"
 | 
			
		||||
 
 | 
			
		||||
@@ -2,56 +2,28 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.home-assistant.io/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
  clear
 | 
			
		||||
  cat <<"EOF"
 | 
			
		||||
    __  __                        ___              _      __              __ 
 | 
			
		||||
   / / / /___  ____ ___  ___     /   |  __________(_)____/ /_____ _____  / /_
 | 
			
		||||
  / /_/ / __ \/ __  __ \/ _ \   / /| | / ___/ ___/ / ___/ __/ __  / __ \/ __/
 | 
			
		||||
 / __  / /_/ / / / / / /  __/  / ___ |(__  |__  ) (__  ) /_/ /_/ / / / / /_  
 | 
			
		||||
/_/ /_/\____/_/ /_/ /_/\___/  /_/  |_/____/____/_/____/\__/\__,_/_/ /_/\__/  
 | 
			
		||||
 
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Home Assistant"
 | 
			
		||||
var_disk="16"
 | 
			
		||||
var_tags="automation;smarthome"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="16"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
@@ -138,7 +110,7 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:8123${CL}
 | 
			
		||||
Portainer should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}https://${IP}:9443${CL}\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}HA: http://${IP}:8123${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}Portainer: http://${IP}:9443${CL}"
 | 
			
		||||
							
								
								
									
										113
									
								
								ct/homebox.sh
									
									
									
									
									
								
							
							
						
						
									
										113
									
								
								ct/homebox.sh
									
									
									
									
									
								
							@@ -1,86 +1,60 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck
 | 
			
		||||
# Co-Author: MickLesk (Canbiz)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Author: tteck | Co-Author: MickLesk (Canbiz)
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://homebox.software/en/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    __  __                     ____            
 | 
			
		||||
   / / / /___  ____ ___  ___  / __ )____  _  __
 | 
			
		||||
  / /_/ / __ \/ __ `__ \/ _ \/ __  / __ \| |/_/
 | 
			
		||||
 / __  / /_/ / / / / / /  __/ /_/ / /_/ />  <
 | 
			
		||||
/_/ /_/\____/_/ /_/ /_/\___/_____/\____/_/|_|
 | 
			
		||||
                                                   
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="HomeBox"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="inventory;household"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /opt/homebox ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
RELEASE=$(curl -s https://api.github.com/repos/sysadminsmedia/homebox/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
 | 
			
		||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
  msg_info "Stopping ${APP}"
 | 
			
		||||
  systemctl stop homebox
 | 
			
		||||
  msg_ok "${APP} Stopped"
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -f /opt/homebox ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/sysadminsmedia/homebox/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
 | 
			
		||||
  if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
    msg_info "Stopping ${APP}"
 | 
			
		||||
    systemctl stop homebox
 | 
			
		||||
    msg_ok "${APP} Stopped"
 | 
			
		||||
 | 
			
		||||
  msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
  cd /opt
 | 
			
		||||
  rm -rf homebox_bak
 | 
			
		||||
  mv homebox homebox_bak
 | 
			
		||||
  wget -qO- https://github.com/sysadminsmedia/homebox/releases/download/${RELEASE}/homebox_Linux_x86_64.tar.gz | tar -xzf - -C /opt
 | 
			
		||||
  chmod +x /opt/homebox
 | 
			
		||||
  echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
  msg_ok "Updated Homebox"
 | 
			
		||||
    msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
    cd /opt
 | 
			
		||||
    rm -rf homebox_bak
 | 
			
		||||
    mv homebox homebox_bak
 | 
			
		||||
    wget -qO- https://github.com/sysadminsmedia/homebox/releases/download/${RELEASE}/homebox_Linux_x86_64.tar.gz | tar -xzf - -C /opt
 | 
			
		||||
    chmod +x /opt/homebox
 | 
			
		||||
    echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
    msg_ok "Updated Homebox"
 | 
			
		||||
 | 
			
		||||
  msg_info "Starting ${APP}"
 | 
			
		||||
  systemctl start homebox
 | 
			
		||||
  msg_ok "Started ${APP}"
 | 
			
		||||
    msg_info "Starting ${APP}"
 | 
			
		||||
    systemctl start homebox
 | 
			
		||||
    msg_ok "Started ${APP}"
 | 
			
		||||
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
else
 | 
			
		||||
  msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
fi
 | 
			
		||||
exit
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
  fi
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -88,5 +62,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} Setup should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:7745${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:7745${CL}"
 | 
			
		||||
@@ -2,66 +2,41 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://homebridge.io/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    __  ______  __  _____________  ____  ________  ____________
 | 
			
		||||
   / / / / __ \/  |/  / ____/ __ )/ __ \/  _/ __ \/ ____/ ____/
 | 
			
		||||
  / /_/ / / / / /|_/ / __/ / __  / /_/ // // / / / / __/ __/   
 | 
			
		||||
 / __  / /_/ / /  / / /___/ /_/ / _, _// // /_/ / /_/ / /___   
 | 
			
		||||
/_/ /_/\____/_/  /_/_____/_____/_/ |_/___/_____/\____/_____/   
 | 
			
		||||
 
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Homebridge"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="smarthome;homekit"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /etc/apt/sources.list.d/homebridge.list ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating ${APP} LXC"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get install -y homebridge &>/dev/null
 | 
			
		||||
msg_ok "Updated Successfully"
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -f /etc/apt/sources.list.d/homebridge.list ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Updating ${APP} LXC"
 | 
			
		||||
    apt-get update &>/dev/null
 | 
			
		||||
    apt-get install -y homebridge &>/dev/null
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -69,5 +44,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:8581${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8581${CL}"
 | 
			
		||||
							
								
								
									
										124
									
								
								ct/homepage.sh
									
									
									
									
									
								
							
							
						
						
									
										124
									
								
								ct/homepage.sh
									
									
									
									
									
								
							@@ -2,89 +2,66 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://gethomepage.dev/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    __  __                                          
 | 
			
		||||
   / / / /___  ____ ___  ___  ____  ____ _____ ____ 
 | 
			
		||||
  / /_/ / __ \/ __ `__ \/ _ \/ __ \/ __ `/ __ `/ _ \
 | 
			
		||||
 / __  / /_/ / / / / / /  __/ /_/ / /_/ / /_/ /  __/
 | 
			
		||||
/_/ /_/\____/_/ /_/ /_/\___/ .___/\__,_/\__, /\___/ 
 | 
			
		||||
                          /_/          /____/       
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Homepage"
 | 
			
		||||
var_disk="3"
 | 
			
		||||
var_tags="dashboard"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="3"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/homepage ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
if [[ "$(node -v | cut -d 'v' -f 2)" == "18."* ]]; then
 | 
			
		||||
  if ! command -v npm >/dev/null 2>&1; then
 | 
			
		||||
    echo "Installing NPM..."
 | 
			
		||||
    apt-get install -y npm >/dev/null 2>&1
 | 
			
		||||
    npm install -g pnpm >/dev/null 2>&1
 | 
			
		||||
    echo "Installed NPM..."
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -d /opt/homepage ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
fi
 | 
			
		||||
RELEASE=$(curl -s https://api.github.com/repos/gethomepage/homepage/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
 | 
			
		||||
  msg_info "Updating Homepage to v${RELEASE} (Patience)"
 | 
			
		||||
  systemctl stop homepage
 | 
			
		||||
  wget -q https://github.com/gethomepage/homepage/archive/refs/tags/v${RELEASE}.tar.gz
 | 
			
		||||
  tar -xzf v${RELEASE}.tar.gz
 | 
			
		||||
  rm -rf v${RELEASE}.tar.gz
 | 
			
		||||
  cp -r homepage-${RELEASE}/* /opt/homepage/
 | 
			
		||||
  rm -rf homepage-${RELEASE}
 | 
			
		||||
  cd /opt/homepage
 | 
			
		||||
  npx update-browserslist-db@latest
 | 
			
		||||
  pnpm install
 | 
			
		||||
  pnpm build
 | 
			
		||||
  systemctl start homepage
 | 
			
		||||
  echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
  msg_ok "Updated Homepage to v${RELEASE}"
 | 
			
		||||
else
 | 
			
		||||
  msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
fi
 | 
			
		||||
exit
 | 
			
		||||
  if [[ "$(node -v | cut -d 'v' -f 2)" == "18."* ]]; then
 | 
			
		||||
    if ! command -v npm >/dev/null 2>&1; then
 | 
			
		||||
      echo "Installing NPM..."
 | 
			
		||||
      apt-get install -y npm >/dev/null 2>&1
 | 
			
		||||
      npm install -g pnpm >/dev/null 2>&1
 | 
			
		||||
      echo "Installed NPM..."
 | 
			
		||||
    fi
 | 
			
		||||
  fi
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/gethomepage/homepage/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
  if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
 | 
			
		||||
    msg_info "Updating Homepage to v${RELEASE} (Patience)"
 | 
			
		||||
    systemctl stop homepage
 | 
			
		||||
    wget -q https://github.com/gethomepage/homepage/archive/refs/tags/v${RELEASE}.tar.gz
 | 
			
		||||
    tar -xzf v${RELEASE}.tar.gz
 | 
			
		||||
    rm -rf v${RELEASE}.tar.gz
 | 
			
		||||
    cp -r homepage-${RELEASE}/* /opt/homepage/
 | 
			
		||||
    rm -rf homepage-${RELEASE}
 | 
			
		||||
    cd /opt/homepage
 | 
			
		||||
    npx update-browserslist-db@latest
 | 
			
		||||
    pnpm install
 | 
			
		||||
    export NEXT_PUBLIC_VERSION=v$RELEASE
 | 
			
		||||
    export NEXT_PUBLIC_REVISION='source' 
 | 
			
		||||
    pnpm build
 | 
			
		||||
    systemctl start homepage
 | 
			
		||||
    echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
    msg_ok "Updated Homepage to v${RELEASE}"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
  fi
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -92,5 +69,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} Setup should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:3000${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										120
									
								
								ct/homer.sh
									
									
									
									
									
								
							
							
						
						
									
										120
									
								
								ct/homer.sh
									
									
									
									
									
								
							@@ -2,92 +2,67 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://github.com/bastienwirtz/homer
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    __  __                         
 | 
			
		||||
   / / / /___  ____ ___  ___  _____
 | 
			
		||||
  / /_/ / __ \/ __ `__ \/ _ \/ ___/
 | 
			
		||||
 / __  / /_/ / / / / / /  __/ /    
 | 
			
		||||
/_/ /_/\____/_/ /_/ /_/\___/_/     
 | 
			
		||||
                                   
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Homer"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_tags="dashboard"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/homer ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Stopping ${APP}"
 | 
			
		||||
systemctl stop homer
 | 
			
		||||
msg_ok "Stopped ${APP}"
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /opt/homer ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Stopping ${APP}"
 | 
			
		||||
    systemctl stop homer
 | 
			
		||||
    msg_ok "Stopped ${APP}"
 | 
			
		||||
 | 
			
		||||
msg_info "Backing up assets directory"
 | 
			
		||||
cd ~
 | 
			
		||||
mkdir -p assets-backup
 | 
			
		||||
cp -R /opt/homer/assets/. assets-backup
 | 
			
		||||
msg_ok "Backed up assets directory"
 | 
			
		||||
    msg_info "Backing up assets directory"
 | 
			
		||||
    cd ~
 | 
			
		||||
    mkdir -p assets-backup
 | 
			
		||||
    cp -R /opt/homer/assets/. assets-backup
 | 
			
		||||
    msg_ok "Backed up assets directory"
 | 
			
		||||
 | 
			
		||||
msg_info "Updating ${APP}"
 | 
			
		||||
rm -rf /opt/homer/*
 | 
			
		||||
cd /opt/homer
 | 
			
		||||
wget -q https://github.com/bastienwirtz/homer/releases/latest/download/homer.zip
 | 
			
		||||
unzip homer.zip &>/dev/null
 | 
			
		||||
msg_ok "Updated ${APP}"
 | 
			
		||||
    msg_info "Updating ${APP}"
 | 
			
		||||
    rm -rf /opt/homer/*
 | 
			
		||||
    cd /opt/homer
 | 
			
		||||
    wget -q https://github.com/bastienwirtz/homer/releases/latest/download/homer.zip
 | 
			
		||||
    unzip homer.zip &>/dev/null
 | 
			
		||||
    msg_ok "Updated ${APP}"
 | 
			
		||||
 | 
			
		||||
msg_info "Restoring assets directory"
 | 
			
		||||
cd ~
 | 
			
		||||
cp -Rf assets-backup/. /opt/homer/assets/
 | 
			
		||||
msg_ok "Restored assets directory"
 | 
			
		||||
    msg_info "Restoring assets directory"
 | 
			
		||||
    cd ~
 | 
			
		||||
    cp -Rf assets-backup/. /opt/homer/assets/
 | 
			
		||||
    msg_ok "Restored assets directory"
 | 
			
		||||
 | 
			
		||||
msg_info "Cleaning"
 | 
			
		||||
rm -rf assets-backup /opt/homer/homer.zip
 | 
			
		||||
msg_ok "Cleaned"
 | 
			
		||||
    msg_info "Cleaning"
 | 
			
		||||
    rm -rf assets-backup /opt/homer/homer.zip
 | 
			
		||||
    msg_ok "Cleaned"
 | 
			
		||||
 | 
			
		||||
msg_info "Starting ${APP}"
 | 
			
		||||
systemctl start homer
 | 
			
		||||
msg_ok "Started ${APP}"
 | 
			
		||||
msg_ok "Updated Successfully"
 | 
			
		||||
exit
 | 
			
		||||
    msg_info "Starting ${APP}"
 | 
			
		||||
    systemctl start homer
 | 
			
		||||
    msg_ok "Started ${APP}"
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -95,5 +70,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:8010${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8010${CL}"
 | 
			
		||||
@@ -2,67 +2,41 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.hyperhdr.eu/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    __  __                      __  ______  ____
 | 
			
		||||
   / / / /_  ______  ___  _____/ / / / __ \/ __ \
 | 
			
		||||
  / /_/ / / / / __ \/ _ \/ ___/ /_/ / / / / /_/ /
 | 
			
		||||
 / __  / /_/ / /_/ /  __/ /  / __  / /_/ / _, _/
 | 
			
		||||
/_/ /_/\__, / .___/\___/_/  /_/ /_/_____/_/ |_|
 | 
			
		||||
      /____/_/
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="HyperHDR"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="ambient lightning"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="0"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="0"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating $APP LXC"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get -y upgrade &>/dev/null
 | 
			
		||||
msg_ok "Updated $APP LXC"
 | 
			
		||||
exit
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -d /var ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  msg_info "Updating $APP LXC"
 | 
			
		||||
  apt-get update &>/dev/null
 | 
			
		||||
  apt-get -y upgrade &>/dev/null
 | 
			
		||||
  msg_ok "Updated $APP LXC"
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -70,5 +44,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:8090${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8090${CL}"
 | 
			
		||||
@@ -2,67 +2,41 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://hyperion-project.org/forum/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    __  __                      _           
 | 
			
		||||
   / / / /_  ______  ___  _____(_)___  ____ 
 | 
			
		||||
  / /_/ / / / / __ \/ _ \/ ___/ / __ \/ __ \
 | 
			
		||||
 / __  / /_/ / /_/ /  __/ /  / / /_/ / / / /
 | 
			
		||||
/_/ /_/\__, / .___/\___/_/  /_/\____/_/ /_/ 
 | 
			
		||||
      /____/_/                              
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Hyperion"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_tags="ambient-lightning"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /etc/apt/sources.list.d/hyperion.list ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating ${APP} LXC"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get install -y hyperion &>/dev/null
 | 
			
		||||
msg_ok "Updated Successfully"
 | 
			
		||||
exit
 | 
			
		||||
      header_info
 | 
			
		||||
      check_container_storage
 | 
			
		||||
      check_container_resources
 | 
			
		||||
      if [[ ! -f /etc/apt/sources.list.d/hyperion.list ]]; then
 | 
			
		||||
            msg_error "No ${APP} Installation Found!"
 | 
			
		||||
            exit
 | 
			
		||||
      fi
 | 
			
		||||
      msg_info "Updating ${APP} LXC"
 | 
			
		||||
      apt-get update &>/dev/null
 | 
			
		||||
      apt-get install -y hyperion &>/dev/null
 | 
			
		||||
      msg_ok "Updated Successfully"
 | 
			
		||||
      exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -70,5 +44,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:8090${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8090${CL}"
 | 
			
		||||
@@ -2,66 +2,41 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.influxdata.com/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ____      ______           ____  ____ 
 | 
			
		||||
   /  _/___  / __/ /_  ___  __/ __ \/ __ )
 | 
			
		||||
   / // __ \/ /_/ / / / / |/_/ / / / __  |
 | 
			
		||||
 _/ // / / / __/ / /_/ />  </ /_/ / /_/ / 
 | 
			
		||||
/___/_/ /_/_/ /_/\__,_/_/|_/_____/_____/  
 | 
			
		||||
 
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="InfluxDB"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_tags="database"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /etc/apt/sources.list.d/influxdata.list ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating ${APP}"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get -y upgrade &>/dev/null
 | 
			
		||||
msg_ok "Updated Successfully"
 | 
			
		||||
exit
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -f /etc/apt/sources.list.d/influxdata.list ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  msg_info "Updating ${APP}"
 | 
			
		||||
  apt-get update &>/dev/null
 | 
			
		||||
  apt-get -y upgrade &>/dev/null
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -69,3 +44,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8086${CL}"
 | 
			
		||||
							
								
								
									
										69
									
								
								ct/inspircd.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										69
									
								
								ct/inspircd.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,69 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 community-scripts ORG
 | 
			
		||||
# Author: kristocopani
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.inspircd.org/
 | 
			
		||||
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="InspIRCd"
 | 
			
		||||
var_tags="IRC"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
function update_script() {
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
 | 
			
		||||
  if [[ ! -f /lib/systemd/system/inspircd.service ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/inspircd/inspircd/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
  if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
    msg_info "Stopping Service"
 | 
			
		||||
    systemctl stop inspircd
 | 
			
		||||
    msg_ok "Stopped Service"
 | 
			
		||||
 | 
			
		||||
    msg_info "Updating ${APP} to v${RELEASE}"
 | 
			
		||||
    cd /opt
 | 
			
		||||
    wget -q https://github.com/inspircd/inspircd/releases/download/v${RELEASE}/inspircd_${RELEASE}.deb12u1_amd64.deb
 | 
			
		||||
    apt-get install "./inspircd_${RELEASE}.deb12u1_amd64.deb" -y &>/dev/nul
 | 
			
		||||
    echo "${RELEASE}" >"/opt/${APP}_version.txt"
 | 
			
		||||
    msg_ok "Updated ${APP} to v${RELEASE}"
 | 
			
		||||
 | 
			
		||||
    msg_info "Starting Service"
 | 
			
		||||
    systemctl start inspircd
 | 
			
		||||
    msg_ok "Started Service"
 | 
			
		||||
 | 
			
		||||
    msg_info "Cleaning up"
 | 
			
		||||
    rm -rf /opt/inspircd_${RELEASE}.deb12u1_amd64.deb
 | 
			
		||||
    msg_ok "Cleaned"
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required. ${APP} is already at v${RELEASE}."
 | 
			
		||||
  fi
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Server-Acces it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}${IP}:6667${CL}"
 | 
			
		||||
@@ -2,66 +2,41 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.iobroker.net/#en/intro
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    _       ____             __            
 | 
			
		||||
   (_)___  / __ )_________  / /_____  _____
 | 
			
		||||
  / / __ \/ __  / ___/ __ \/ //_/ _ \/ ___/
 | 
			
		||||
 / / /_/ / /_/ / /  / /_/ / ,< /  __/ /    
 | 
			
		||||
/_/\____/_____/_/   \____/_/|_|\___/_/     
 | 
			
		||||
 
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="ioBroker"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_tags="automtation"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/iobroker ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating ${APP} LXC"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get -y upgrade &>/dev/null
 | 
			
		||||
msg_ok "Updated Successfully"
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /opt/iobroker ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Updating ${APP} LXC"
 | 
			
		||||
    apt-get update &>/dev/null
 | 
			
		||||
    apt-get -y upgrade &>/dev/null
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -69,5 +44,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:8081${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8081${CL}"
 | 
			
		||||
@@ -2,63 +2,38 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.iventoy.com/en/index.html
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    _ _    __           __             
 | 
			
		||||
   (_) |  / /__  ____  / /_____  __  __
 | 
			
		||||
  / /| | / / _ \/ __ \/ __/ __ \/ / / /
 | 
			
		||||
 / / | |/ /  __/ / / / /_/ /_/ / /_/ / 
 | 
			
		||||
/_/  |___/\___/_/ /_/\__/\____/\__, /  
 | 
			
		||||
                              /____/
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="iVentoy"
 | 
			
		||||
var_tags="pxe-tool"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="0"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="0"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/iventoy ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_error "There is currently no update path available."
 | 
			
		||||
exit
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -d /opt/iventoy ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  msg_error "There is currently no update path available."
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -66,5 +41,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:26000/ ${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:26000${CL}"
 | 
			
		||||
@@ -2,76 +2,51 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://github.com/Jackett/Jackett
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
       __           __        __  __ 
 | 
			
		||||
      / /___ ______/ /_____  / /_/ /_
 | 
			
		||||
 __  / / __ `/ ___/ //_/ _ \/ __/ __/
 | 
			
		||||
/ /_/ / /_/ / /__/ ,< /  __/ /_/ /_  
 | 
			
		||||
\____/\__,_/\___/_/|_|\___/\__/\__/  
 | 
			
		||||
                                     
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Jackett"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_tags="torrent"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /etc/systemd/system/jackett.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
RELEASE=$(wget -q https://github.com/Jackett/Jackett/releases/latest -O - | grep "title>Release" | cut -d " " -f 4)
 | 
			
		||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
  msg_info "Updating ${APP}"
 | 
			
		||||
  wget -q https://github.com/Jackett/Jackett/releases/download/$RELEASE/Jackett.Binaries.LinuxAMDx64.tar.gz
 | 
			
		||||
  systemctl stop jackett
 | 
			
		||||
  rm -rf /opt/Jackett
 | 
			
		||||
  tar -xzf Jackett.Binaries.LinuxAMDx64.tar.gz -C /opt
 | 
			
		||||
  rm -rf Jackett.Binaries.LinuxAMDx64.tar.gz
 | 
			
		||||
  systemctl start jackett
 | 
			
		||||
  echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
  msg_ok "Updated ${APP} to ${RELEASE}"
 | 
			
		||||
else
 | 
			
		||||
  msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
fi
 | 
			
		||||
exit
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -f /etc/systemd/system/jackett.service ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  RELEASE=$(wget -q https://github.com/Jackett/Jackett/releases/latest -O - | grep "title>Release" | cut -d " " -f 4)
 | 
			
		||||
  if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
    msg_info "Updating ${APP}"
 | 
			
		||||
    wget -q https://github.com/Jackett/Jackett/releases/download/$RELEASE/Jackett.Binaries.LinuxAMDx64.tar.gz
 | 
			
		||||
    systemctl stop jackett
 | 
			
		||||
    rm -rf /opt/Jackett
 | 
			
		||||
    tar -xzf Jackett.Binaries.LinuxAMDx64.tar.gz -C /opt
 | 
			
		||||
    rm -rf Jackett.Binaries.LinuxAMDx64.tar.gz
 | 
			
		||||
    systemctl start jackett
 | 
			
		||||
    echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
    msg_ok "Updated ${APP} to ${RELEASE}"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
  fi
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -79,5 +54,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:9117${CL}\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:9117${CL}"
 | 
			
		||||
 
 | 
			
		||||
@@ -2,68 +2,42 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://jellyfin.org/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
       __     ____      _____     
 | 
			
		||||
      / /__  / / /_  __/ __(_)___ 
 | 
			
		||||
 __  / / _ \/ / / / / / /_/ / __ \
 | 
			
		||||
/ /_/ /  __/ / / /_/ / __/ / / / /
 | 
			
		||||
\____/\___/_/_/\__, /_/ /_/_/ /_/ 
 | 
			
		||||
              /____/              
 | 
			
		||||
 
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Jellyfin"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_tags="media"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_os="ubuntu"
 | 
			
		||||
var_version="22.04"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /usr/lib/jellyfin ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating ${APP} LXC"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get -y upgrade &>/dev/null
 | 
			
		||||
apt-get --with-new-pkgs upgrade jellyfin jellyfin-server &>/dev/null
 | 
			
		||||
msg_ok "Updated ${APP} LXC"
 | 
			
		||||
exit
 | 
			
		||||
     header_info
 | 
			
		||||
     check_container_storage
 | 
			
		||||
     check_container_resources
 | 
			
		||||
     if [[ ! -d /usr/lib/jellyfin ]]; then
 | 
			
		||||
          msg_error "No ${APP} Installation Found!"
 | 
			
		||||
          exit
 | 
			
		||||
     fi
 | 
			
		||||
     msg_info "Updating ${APP} LXC"
 | 
			
		||||
     apt-get update &>/dev/null
 | 
			
		||||
     apt-get -y upgrade &>/dev/null
 | 
			
		||||
     apt-get --with-new-pkgs upgrade jellyfin jellyfin-server &>/dev/null
 | 
			
		||||
     msg_ok "Updated ${APP} LXC"
 | 
			
		||||
     exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -71,5 +45,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
             ${BL}http://${IP}:8096${CL}\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8096${CL}"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										126
									
								
								ct/jellyseerr.sh
									
									
									
									
									
								
							
							
						
						
									
										126
									
								
								ct/jellyseerr.sh
									
									
									
									
									
								
							@@ -2,84 +2,62 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://docs.jellyseerr.dev/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
       __     ____
 | 
			
		||||
      / /__  / / /_  __________  ___  __________
 | 
			
		||||
 __  / / _ \/ / / / / / ___/ _ \/ _ \/ ___/ ___/
 | 
			
		||||
/ /_/ /  __/ / / /_/ (__  )  __/  __/ /  / /
 | 
			
		||||
\____/\___/_/_/\__, /____/\___/\___/_/  /_/
 | 
			
		||||
              /____/
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Jellyseerr"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_tags="media"
 | 
			
		||||
var_cpu="4"
 | 
			
		||||
var_ram="4096"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core 
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/jellyseerr ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
if ! command -v pnpm &> /dev/null; then
 | 
			
		||||
    msg_error "pnpm not found. Installing..."
 | 
			
		||||
    npm install -g pnpm &>/dev/null
 | 
			
		||||
else
 | 
			
		||||
    msg_ok "pnpm is already installed."
 | 
			
		||||
fi
 | 
			
		||||
msg_info "Updating $APP"
 | 
			
		||||
cd /opt/jellyseerr
 | 
			
		||||
output=$(git pull --no-rebase)
 | 
			
		||||
if echo "$output" | grep -q "Already up to date."
 | 
			
		||||
then
 | 
			
		||||
  msg_ok "$APP is already up to date."
 | 
			
		||||
  exit
 | 
			
		||||
fi
 | 
			
		||||
systemctl stop jellyseerr
 | 
			
		||||
rm -rf dist
 | 
			
		||||
rm -rf .next 
 | 
			
		||||
rm -rf node_modules 
 | 
			
		||||
export CYPRESS_INSTALL_BINARY=0 
 | 
			
		||||
pnpm install --frozen-lockfile &>/dev/null
 | 
			
		||||
export NODE_OPTIONS="--max-old-space-size=3072"
 | 
			
		||||
pnpm build &>/dev/null
 | 
			
		||||
cat <<EOF >/etc/systemd/system/jellyseerr.service
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
 | 
			
		||||
    if [[ ! -d /opt/jellyseerr ]]; then 
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    if ! command -v pnpm &> /dev/null; then
 | 
			
		||||
        msg_error "pnpm not found. Installing..."
 | 
			
		||||
        npm install -g pnpm &>/dev/null
 | 
			
		||||
    else
 | 
			
		||||
        msg_ok "pnpm is already installed."
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    msg_info "Updating $APP"
 | 
			
		||||
    cd /opt/jellyseerr
 | 
			
		||||
    output=$(git pull --no-rebase)
 | 
			
		||||
    
 | 
			
		||||
    if echo "$output" | grep -q "Already up to date."; then
 | 
			
		||||
        msg_ok "$APP is already up to date."
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    systemctl stop jellyseerr
 | 
			
		||||
    rm -rf dist .next node_modules
 | 
			
		||||
    export CYPRESS_INSTALL_BINARY=0
 | 
			
		||||
    pnpm install --frozen-lockfile &>/dev/null
 | 
			
		||||
    export NODE_OPTIONS="--max-old-space-size=3072"
 | 
			
		||||
    pnpm build &>/dev/null
 | 
			
		||||
 | 
			
		||||
    cat <<EOF >/etc/systemd/system/jellyseerr.service
 | 
			
		||||
[Unit]
 | 
			
		||||
Description=jellyseerr Service
 | 
			
		||||
After=network.target
 | 
			
		||||
@@ -94,10 +72,11 @@ ExecStart=/usr/bin/node dist/index.js
 | 
			
		||||
[Install]
 | 
			
		||||
WantedBy=multi-user.target
 | 
			
		||||
EOF
 | 
			
		||||
systemctl daemon-reload
 | 
			
		||||
systemctl start jellyseerr
 | 
			
		||||
msg_ok "Updated $APP"
 | 
			
		||||
exit
 | 
			
		||||
 | 
			
		||||
    systemctl daemon-reload
 | 
			
		||||
    systemctl start jellyseerr
 | 
			
		||||
    msg_ok "Updated $APP"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -105,5 +84,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:5055${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:5055${CL}"
 | 
			
		||||
							
								
								
									
										50
									
								
								ct/jenkins.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										50
									
								
								ct/jenkins.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,50 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 community-scripts ORG
 | 
			
		||||
# Author: kristocopani
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.jenkins.io/
 | 
			
		||||
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Jenkins"
 | 
			
		||||
var_tags="automation"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /var/lib/jenkins ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Updating $APP LXC"
 | 
			
		||||
    apt-get update &>/dev/null
 | 
			
		||||
    apt-get -y upgrade &>/dev/null
 | 
			
		||||
    msg_ok "Updated $APP LXC"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080${CL}"
 | 
			
		||||
							
								
								
									
										88
									
								
								ct/kavita.sh
									
									
									
									
									
								
							
							
						
						
									
										88
									
								
								ct/kavita.sh
									
									
									
									
									
								
							@@ -2,71 +2,46 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.kavitareader.com/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    __ __            _ __       
 | 
			
		||||
   / //_/___ __   __(_) /_____ _
 | 
			
		||||
  / ,< / __ `/ | / / / __/ __ `/
 | 
			
		||||
 / /| / /_/ /| |/ / / /_/ /_/ / 
 | 
			
		||||
/_/ |_\__,_/ |___/_/\__/\__,_/  
 | 
			
		||||
                                
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Kavita"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_tags="reader"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/Kavita ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating $APP LXC"
 | 
			
		||||
systemctl stop kavita
 | 
			
		||||
RELEASE=$(curl -s https://api.github.com/repos/Kareadita/Kavita/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
 | 
			
		||||
tar -xvzf <(curl -fsSL https://github.com/Kareadita/Kavita/releases/download/$RELEASE/kavita-linux-x64.tar.gz) --no-same-owner &>/dev/null
 | 
			
		||||
rm -rf Kavita/config
 | 
			
		||||
cp -r Kavita/* /opt/Kavita
 | 
			
		||||
rm -rf Kavita
 | 
			
		||||
systemctl start kavita
 | 
			
		||||
msg_ok "Updated $APP LXC"
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /opt/Kavita ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Updating $APP LXC"
 | 
			
		||||
    systemctl stop kavita
 | 
			
		||||
    RELEASE=$(curl -s https://api.github.com/repos/Kareadita/Kavita/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
 | 
			
		||||
    tar -xvzf <(curl -fsSL https://github.com/Kareadita/Kavita/releases/download/$RELEASE/kavita-linux-x64.tar.gz) --no-same-owner &>/dev/null
 | 
			
		||||
    rm -rf Kavita/config
 | 
			
		||||
    cp -r Kavita/* /opt/Kavita
 | 
			
		||||
    rm -rf Kavita
 | 
			
		||||
    systemctl start kavita
 | 
			
		||||
    msg_ok "Updated $APP LXC"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -74,5 +49,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:5000${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:5000${CL}"
 | 
			
		||||
							
								
								
									
										115
									
								
								ct/keycloak.sh
									
									
									
									
									
								
							
							
						
						
									
										115
									
								
								ct/keycloak.sh
									
									
									
									
									
								
							@@ -2,91 +2,61 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.keycloak.org/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    __ __                __            __  
 | 
			
		||||
   / //_/__  __  _______/ /___  ____ _/ /__
 | 
			
		||||
  / ,< / _ \/ / / / ___/ / __ \/ __  / //_/
 | 
			
		||||
 / /| /  __/ /_/ / /__/ / /_/ / /_/ / ,<   
 | 
			
		||||
/_/ |_\___/\__, /\___/_/\____/\__,_/_/|_|  
 | 
			
		||||
          /____/                           
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Keycloak"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="access-management"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /etc/systemd/system/keycloak.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating ${APP} LXC"
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -f /etc/systemd/system/keycloak.service ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  msg_info "Updating ${APP} LXC"
 | 
			
		||||
 | 
			
		||||
msg_info "Updating packages"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get -y upgrade &>/dev/null
 | 
			
		||||
  msg_info "Updating packages"
 | 
			
		||||
  apt-get update &>/dev/null
 | 
			
		||||
  apt-get -y upgrade &>/dev/null
 | 
			
		||||
 | 
			
		||||
RELEASE=$(curl -s https://api.github.com/repos/keycloak/keycloak/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
 | 
			
		||||
msg_info "Downloading Keycloak v$RELEASE"
 | 
			
		||||
cd /opt
 | 
			
		||||
wget -q https://github.com/keycloak/keycloak/releases/download/$RELEASE/keycloak-$RELEASE.tar.gz
 | 
			
		||||
$STD tar -xvf keycloak-$RELEASE.tar.gz
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/keycloak/keycloak/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
 | 
			
		||||
  msg_info "Updating Keycloak to v$RELEASE"
 | 
			
		||||
  cd /opt
 | 
			
		||||
  wget -q https://github.com/keycloak/keycloak/releases/download/$RELEASE/keycloak-$RELEASE.tar.gz
 | 
			
		||||
  mv keycloak keycloak.old
 | 
			
		||||
  tar -xzf keycloak-$RELEASE.tar.gz
 | 
			
		||||
  cp -r keycloak.old/conf keycloak-$RELEASE
 | 
			
		||||
  cp -r keycloak.old/providers keycloak-$RELEASE
 | 
			
		||||
  cp -r keycloak.old/themes keycloak-$RELEASE
 | 
			
		||||
  mv keycloak-$RELEASE keycloak
 | 
			
		||||
 | 
			
		||||
msg_info "Merging configuration files"
 | 
			
		||||
cp -r keycloak/conf keycloak-$RELEASE
 | 
			
		||||
cp -r keycloak/providers keycloak-$RELEASE
 | 
			
		||||
cp -r keycloak/themes keycloak-$RELEASE
 | 
			
		||||
  msg_info "Delete temporary installation files"
 | 
			
		||||
  rm keycloak-$RELEASE.tar.gz
 | 
			
		||||
  rm -rf keycloak.old
 | 
			
		||||
 | 
			
		||||
msg_info "Updating Keycloak"
 | 
			
		||||
mv keycloak keycloak.old
 | 
			
		||||
mv keycloak-$RELEASE keycloak
 | 
			
		||||
 | 
			
		||||
msg_info "Delete temporary installation files"
 | 
			
		||||
rm keycloak-$RELEASE.tar.gz
 | 
			
		||||
rm -rf keycloak.old
 | 
			
		||||
 | 
			
		||||
msg_info "Restating Keycloak"
 | 
			
		||||
systemctl restart keycloak
 | 
			
		||||
msg_ok "Updated Successfully"
 | 
			
		||||
exit
 | 
			
		||||
  msg_info "Restating Keycloak"
 | 
			
		||||
  systemctl restart keycloak
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -94,5 +64,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:8080/admin${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8080/admin${CL}"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										134
									
								
								ct/kimai.sh
									
									
									
									
									
								
							
							
						
						
									
										134
									
								
								ct/kimai.sh
									
									
									
									
									
								
							@@ -2,97 +2,72 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 community-scripts ORG
 | 
			
		||||
# Author: MickLesk (Canbiz)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://www.kimai.org/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    __ __ _                 _ 
 | 
			
		||||
   / //_/(_)___ ___  ____ _(_)
 | 
			
		||||
  / ,<  / / __ `__ \/ __ `/ / 
 | 
			
		||||
 / /| |/ / / / / / / /_/ / /  
 | 
			
		||||
/_/ |_/_/_/ /_/ /_/\__,_/_/   
 | 
			
		||||
                              
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Kimai"
 | 
			
		||||
var_disk="7"
 | 
			
		||||
var_tags="time-tracking"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="7"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/kimai ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
RELEASE=$(curl -s https://api.github.com/repos/kimai/kimai/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
 | 
			
		||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
  msg_info "Stopping Apache2"
 | 
			
		||||
  systemctl stop apache2
 | 
			
		||||
  msg_ok "Stopped Apache2"
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -d /opt/kimai ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/kimai/kimai/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
 | 
			
		||||
  if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
    msg_info "Stopping Apache2"
 | 
			
		||||
    systemctl stop apache2
 | 
			
		||||
    msg_ok "Stopped Apache2"
 | 
			
		||||
 | 
			
		||||
  msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
  cp /opt/kimai/.env /opt/.env
 | 
			
		||||
  rm -rf /opt/kimai
 | 
			
		||||
  wget -q "https://github.com/kimai/kimai/archive/refs/tags/${RELEASE}.zip"
 | 
			
		||||
  unzip -q ${RELEASE}.zip
 | 
			
		||||
  mv kimai-${RELEASE} /opt/kimai
 | 
			
		||||
  mv /opt/.env /opt/kimai/.env
 | 
			
		||||
  cd /opt/kimai
 | 
			
		||||
  composer install --no-dev --optimize-autoloader &>/dev/null
 | 
			
		||||
  bin/console kimai:update &>/dev/null
 | 
			
		||||
  chown -R :www-data .
 | 
			
		||||
  chmod -R g+r .
 | 
			
		||||
  chmod -R g+rw var/
 | 
			
		||||
  sudo chown -R www-data:www-data /opt/kimai
 | 
			
		||||
  sudo chmod -R 755 /opt/kimai
 | 
			
		||||
  echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
  msg_ok "Updated ${APP} to ${RELEASE}"
 | 
			
		||||
    msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
    cp /opt/kimai/.env /opt/.env
 | 
			
		||||
    rm -rf /opt/kimai
 | 
			
		||||
    wget -q "https://github.com/kimai/kimai/archive/refs/tags/${RELEASE}.zip"
 | 
			
		||||
    unzip -q ${RELEASE}.zip
 | 
			
		||||
    mv kimai-${RELEASE} /opt/kimai
 | 
			
		||||
    mv /opt/.env /opt/kimai/.env
 | 
			
		||||
    cd /opt/kimai
 | 
			
		||||
    composer install --no-dev --optimize-autoloader &>/dev/null
 | 
			
		||||
    bin/console kimai:update &>/dev/null
 | 
			
		||||
    chown -R :www-data .
 | 
			
		||||
    chmod -R g+r .
 | 
			
		||||
    chmod -R g+rw var/
 | 
			
		||||
    sudo chown -R www-data:www-data /opt/kimai
 | 
			
		||||
    sudo chmod -R 755 /opt/kimai
 | 
			
		||||
    echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
    msg_ok "Updated ${APP} to ${RELEASE}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Starting Apache2"
 | 
			
		||||
  systemctl start apache2
 | 
			
		||||
  msg_ok "Started Apache2"
 | 
			
		||||
    msg_info "Starting Apache2"
 | 
			
		||||
    systemctl start apache2
 | 
			
		||||
    msg_ok "Started Apache2"
 | 
			
		||||
 | 
			
		||||
  msg_info "Cleaning Up"
 | 
			
		||||
  rm -rf ${RELEASE}.zip
 | 
			
		||||
  msg_ok "Cleaned"
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
else
 | 
			
		||||
  msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
fi
 | 
			
		||||
exit
 | 
			
		||||
    msg_info "Cleaning Up"
 | 
			
		||||
    rm -rf ${RELEASE}.zip
 | 
			
		||||
    msg_ok "Cleaned"
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
  fi
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -100,5 +75,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} Setup should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"
 | 
			
		||||
							
								
								
									
										108
									
								
								ct/komga.sh
									
									
									
									
									
								
							
							
						
						
									
										108
									
								
								ct/komga.sh
									
									
									
									
									
								
							@@ -2,83 +2,58 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 community-scripts ORG
 | 
			
		||||
# Author: madelyn (DysfunctionalProgramming)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://komga.org/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    __ __                           
 | 
			
		||||
   / //_/___  ____ ___  ____ _____ _
 | 
			
		||||
  / ,< / __ \/ __ `__ \/ __ `/ __ `/
 | 
			
		||||
 / /| / /_/ / / / / / / /_/ / /_/ / 
 | 
			
		||||
/_/ |_\____/_/ /_/ /_/\__, /\__,_/  
 | 
			
		||||
                     /____/           
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Komga"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="media;eBook;comic"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /opt/komga/komga*.jar ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating ${APP}"
 | 
			
		||||
RELEASE=$(curl -s https://api.github.com/repos/gotson/komga/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
 | 
			
		||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
  msg_info "Stopping ${APP}"
 | 
			
		||||
  systemctl stop komga
 | 
			
		||||
  msg_ok "Stopped ${APP}"
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -f /opt/komga/komga.jar ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  msg_info "Updating ${APP}"
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/gotson/komga/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
 | 
			
		||||
  if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
    msg_info "Stopping ${APP}"
 | 
			
		||||
    systemctl stop komga
 | 
			
		||||
    msg_ok "Stopped ${APP}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
  rm -rf /opt/komga/komga*.jar
 | 
			
		||||
  wget -q "https://github.com/gotson/komga/releases/download/v${RELEASE}/komga-${RELEASE}.jar"
 | 
			
		||||
  mv -f komga-${RELEASE}.jar /opt/komga/komga.jar
 | 
			
		||||
  echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
  msg_ok "Updated ${APP} to ${RELEASE}"
 | 
			
		||||
    msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
    wget -q "https://github.com/gotson/komga/releases/download/${RELEASE}/komga-${RELEASE}.jar"
 | 
			
		||||
    rm -rf /opt/komga/komga.jar
 | 
			
		||||
    mv -f komga-${RELEASE}.jar /opt/komga/komga.jar
 | 
			
		||||
    echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
    msg_ok "Updated ${APP} to ${RELEASE}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Starting ${APP}"
 | 
			
		||||
  systemctl start komga
 | 
			
		||||
  msg_ok "Started ${APP}"
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
else
 | 
			
		||||
  msg_ok "No update required. ${APP} is already at ${RELEASE}."  
 | 
			
		||||
fi
 | 
			
		||||
exit
 | 
			
		||||
    msg_info "Starting ${APP}"
 | 
			
		||||
    systemctl start komga
 | 
			
		||||
    msg_ok "Started ${APP}"
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required. ${APP} is already at ${RELEASE}."
 | 
			
		||||
  fi
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -86,5 +61,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:25600 ${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:25600${CL}"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										100
									
								
								ct/kubo.sh
									
									
									
									
									
								
							
							
						
						
									
										100
									
								
								ct/kubo.sh
									
									
									
									
									
								
							@@ -1,77 +1,52 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# Co-Author: ulmentflam
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Author: tteck (tteckster) | Co-Author: ulmentflam
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://github.com/ipfs/kubo
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    __ __      __
 | 
			
		||||
   / //_/_  __/ /_  ____
 | 
			
		||||
  / ,< / / / / __ \/ __ \
 | 
			
		||||
 / /| / /_/ / /_/ / /_/ /
 | 
			
		||||
/_/ |_\__,_/_.___/\____/
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Kubo"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="sharing"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="4096"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /usr/local/kubo ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
RELEASE=$(wget -q https://github.com/ipfs/kubo/releases/latest -O - | grep "title>Release" | cut -d " " -f 4)
 | 
			
		||||
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
 | 
			
		||||
  msg_info "Updating $APP LXC"
 | 
			
		||||
  apt-get update &>/dev/null
 | 
			
		||||
  apt-get -y upgrade &>/dev/null
 | 
			
		||||
  wget -q "https://github.com/ipfs/kubo/releases/download/${RELEASE}/kubo_${RELEASE}_linux-amd64.tar.gz"
 | 
			
		||||
  tar -xzf "kubo_${RELEASE}_linux-amd64.tar.gz" -C /usr/local
 | 
			
		||||
  systemctl restart ipfs.service
 | 
			
		||||
  echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
  rm "kubo_${RELEASE}_linux-amd64.tar.gz"
 | 
			
		||||
  msg_ok "Updated $APP LXC"
 | 
			
		||||
else
 | 
			
		||||
  msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
fi
 | 
			
		||||
exit
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -f /usr/local/kubo ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  RELEASE=$(wget -q https://github.com/ipfs/kubo/releases/latest -O - | grep "title>Release" | cut -d " " -f 4)
 | 
			
		||||
  if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
 | 
			
		||||
    msg_info "Updating $APP LXC"
 | 
			
		||||
    apt-get update &>/dev/null
 | 
			
		||||
    apt-get -y upgrade &>/dev/null
 | 
			
		||||
    wget -q "https://github.com/ipfs/kubo/releases/download/${RELEASE}/kubo_${RELEASE}_linux-amd64.tar.gz"
 | 
			
		||||
    tar -xzf "kubo_${RELEASE}_linux-amd64.tar.gz" -C /usr/local
 | 
			
		||||
    systemctl restart ipfs.service
 | 
			
		||||
    echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
    rm "kubo_${RELEASE}_linux-amd64.tar.gz"
 | 
			
		||||
    msg_ok "Updated $APP LXC"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
  fi
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -79,5 +54,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:5001/webui ${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:5001/webui${CL}"
 | 
			
		||||
@@ -1,77 +1,51 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck
 | 
			
		||||
# Co-Author: MountyMapleSyrup (MountyMapleSyrup)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Author: tteck | Co-Author: MountyMapleSyrup (MountyMapleSyrup)
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://gitlab.com/LazyLibrarian/LazyLibrarian
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    __                      __    _ __                    _           
 | 
			
		||||
   / /   ____ _____  __  __/ /   (_) /_  _________ ______(_)___ _____ 
 | 
			
		||||
  / /   / __ `/_  / / / / / /   / / __ \/ ___/ __ `/ ___/ / __ `/ __ \
 | 
			
		||||
 / /___/ /_/ / / /_/ /_/ / /___/ / /_/ / /  / /_/ / /  / / /_/ / / / /
 | 
			
		||||
/_____/\__,_/ /___/\__, /_____/_/_.___/_/   \__,_/_/  /_/\__,_/_/ /_/ 
 | 
			
		||||
                  /____/                                                                                   
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="LazyLibrarian"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="eBook"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/LazyLibrarian/ ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Stopping LazyLibrarian"
 | 
			
		||||
systemctl stop lazylibrarian
 | 
			
		||||
msg_ok "LazyLibrarian Stopped"
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /opt/LazyLibrarian/ ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Stopping LazyLibrarian"
 | 
			
		||||
    systemctl stop lazylibrarian
 | 
			
		||||
    msg_ok "LazyLibrarian Stopped"
 | 
			
		||||
 | 
			
		||||
msg_info "Updating $APP LXC"
 | 
			
		||||
git -C /opt/LazyLibrarian pull origin master &>/dev/null
 | 
			
		||||
msg_ok "Updated $APP LXC"
 | 
			
		||||
    msg_info "Updating $APP LXC"
 | 
			
		||||
    git -C /opt/LazyLibrarian pull origin master &>/dev/null
 | 
			
		||||
    msg_ok "Updated $APP LXC"
 | 
			
		||||
 | 
			
		||||
msg_info "Starting LazyLibrarian"
 | 
			
		||||
systemctl start lazylibrarian
 | 
			
		||||
msg_ok "Started LazyLibrarian"
 | 
			
		||||
    msg_info "Starting LazyLibrarian"
 | 
			
		||||
    systemctl start lazylibrarian
 | 
			
		||||
    msg_ok "Started LazyLibrarian"
 | 
			
		||||
 | 
			
		||||
msg_ok "Updated Successfully"
 | 
			
		||||
exit
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -79,5 +53,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:5299${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:5299${CL}"
 | 
			
		||||
							
								
								
									
										78
									
								
								ct/lidarr.sh
									
									
									
									
									
								
							
							
						
						
									
										78
									
								
								ct/lidarr.sh
									
									
									
									
									
								
							@@ -2,66 +2,41 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://lidarr.audio/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    __    _     __               
 | 
			
		||||
   / /   (_)___/ /___  __________
 | 
			
		||||
  / /   / / __  / __ `/ ___/ ___/
 | 
			
		||||
 / /___/ / /_/ / /_/ / /  / /    
 | 
			
		||||
/_____/_/\__,_/\__,_/_/  /_/     
 | 
			
		||||
                                 
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Lidarr"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="arr;torrent;usenet"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /var/lib/lidarr/ ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating $APP LXC"
 | 
			
		||||
apt-get update &>/dev/null
 | 
			
		||||
apt-get -y upgrade &>/dev/null
 | 
			
		||||
msg_ok "Updated $APP LXC"
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /var/lib/lidarr/ ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Updating $APP LXC"
 | 
			
		||||
    apt-get update &>/dev/null
 | 
			
		||||
    apt-get -y upgrade &>/dev/null
 | 
			
		||||
    msg_ok "Updated $APP LXC"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -69,5 +44,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:8686${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8686${CL}"
 | 
			
		||||
							
								
								
									
										133
									
								
								ct/linkwarden.sh
									
									
									
									
									
								
							
							
						
						
									
										133
									
								
								ct/linkwarden.sh
									
									
									
									
									
								
							@@ -2,96 +2,70 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://linkwarden.app/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    __    _       __                           __
 | 
			
		||||
   / /   (_)___  / /___      ______ __________/ /__  ____
 | 
			
		||||
  / /   / / __ \/ //_/ | /| / / __ `/ ___/ __  / _ \/ __ \
 | 
			
		||||
 / /___/ / / / / ,<  | |/ |/ / /_/ / /  / /_/ /  __/ / / /
 | 
			
		||||
/_____/_/_/ /_/_/|_| |__/|__/\__,_/_/   \__,_/\___/_/ /_/
 | 
			
		||||
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Linkwarden"
 | 
			
		||||
var_disk="12"
 | 
			
		||||
var_tags="bookmark"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="12"
 | 
			
		||||
var_os="ubuntu"
 | 
			
		||||
var_version="22.04"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -d /opt/linkwarden ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
RELEASE=$(curl -s https://api.github.com/repos/linkwarden/linkwarden/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
 | 
			
		||||
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
 | 
			
		||||
  msg_info "Stopping ${APP}"
 | 
			
		||||
  systemctl stop linkwarden
 | 
			
		||||
  msg_ok "Stopped ${APP}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
  cd /opt
 | 
			
		||||
  mv /opt/linkwarden/.env /opt/.env
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -d /opt/linkwarden ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/linkwarden/linkwarden/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
 | 
			
		||||
  wget -q "https://github.com/linkwarden/linkwarden/archive/refs/tags/${RELEASE}.zip"
 | 
			
		||||
  unzip -q ${RELEASE}.zip
 | 
			
		||||
  mv linkwarden-${RELEASE:1} /opt/linkwarden
 | 
			
		||||
  cd /opt/linkwarden
 | 
			
		||||
  yarn &>/dev/null
 | 
			
		||||
  npx playwright install-deps &>/dev/null
 | 
			
		||||
  yarn playwright install &>/dev/null
 | 
			
		||||
  cp /opt/.env /opt/linkwarden/.env
 | 
			
		||||
  yarn build &>/dev/null
 | 
			
		||||
  yarn prisma migrate deploy &>/dev/null
 | 
			
		||||
  echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
  msg_ok "Updated ${APP} to ${RELEASE}"
 | 
			
		||||
  if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
 | 
			
		||||
    msg_info "Stopping ${APP}"
 | 
			
		||||
    systemctl stop linkwarden
 | 
			
		||||
    msg_ok "Stopped ${APP}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Starting ${APP}"
 | 
			
		||||
  systemctl start linkwarden
 | 
			
		||||
  msg_ok "Started ${APP}"
 | 
			
		||||
  msg_info "Cleaning up"
 | 
			
		||||
  rm -rf /opt/${RELEASE}.zip
 | 
			
		||||
  rm -rf /opt/linkwarden_bak
 | 
			
		||||
  msg_ok "Cleaned"
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
else
 | 
			
		||||
  msg_ok "No update required.  ${APP} is already at ${RELEASE}."
 | 
			
		||||
fi
 | 
			
		||||
exit
 | 
			
		||||
    msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
    cd /opt
 | 
			
		||||
    mv /opt/linkwarden/.env /opt/.env
 | 
			
		||||
    RELEASE=$(curl -s https://api.github.com/repos/linkwarden/linkwarden/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
 | 
			
		||||
    wget -q "https://github.com/linkwarden/linkwarden/archive/refs/tags/${RELEASE}.zip"
 | 
			
		||||
    unzip -q ${RELEASE}.zip
 | 
			
		||||
    mv linkwarden-${RELEASE:1} /opt/linkwarden
 | 
			
		||||
    cd /opt/linkwarden
 | 
			
		||||
    yarn &>/dev/null
 | 
			
		||||
    npx playwright install-deps &>/dev/null
 | 
			
		||||
    yarn playwright install &>/dev/null
 | 
			
		||||
    cp /opt/.env /opt/linkwarden/.env
 | 
			
		||||
    yarn build &>/dev/null
 | 
			
		||||
    yarn prisma migrate deploy &>/dev/null
 | 
			
		||||
    echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
    msg_ok "Updated ${APP} to ${RELEASE}"
 | 
			
		||||
 | 
			
		||||
    msg_info "Starting ${APP}"
 | 
			
		||||
    systemctl start linkwarden
 | 
			
		||||
    msg_ok "Started ${APP}"
 | 
			
		||||
    msg_info "Cleaning up"
 | 
			
		||||
    rm -rf /opt/${RELEASE}.zip
 | 
			
		||||
    rm -rf /opt/linkwarden_bak
 | 
			
		||||
    msg_ok "Cleaned"
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required.  ${APP} is already at ${RELEASE}."
 | 
			
		||||
  fi
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -99,5 +73,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP}${CL} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:3000${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3000${CL}"
 | 
			
		||||
							
								
								
									
										119
									
								
								ct/listmonk.sh
									
									
									
									
									
								
							
							
						
						
									
										119
									
								
								ct/listmonk.sh
									
									
									
									
									
								
							@@ -2,89 +2,69 @@
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 community-scripts ORG
 | 
			
		||||
# Author: bvdberg01
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://listmonk.app/
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ___      __                        __  
 | 
			
		||||
   / (_)____/ /_____ ___  ____  ____  / /__
 | 
			
		||||
  / / / ___/ __/ __ `__ \/ __ \/ __ \/ //_/
 | 
			
		||||
 / / (__  ) /_/ / / / / / /_/ / / / / ,<   
 | 
			
		||||
/_/_/____/\__/_/ /_/ /_/\____/_/ /_/_/|_|  
 | 
			
		||||
                                           
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="listmonk"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="newsletter"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /etc/systemd/system/listmonk.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -f /etc/systemd/system/listmonk.service ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
 | 
			
		||||
RELEASE=$(curl -s https://api.github.com/repos/knadh/listmonk/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
  msg_info "Stopping ${APP}"
 | 
			
		||||
  systemctl stop listmonk
 | 
			
		||||
  msg_ok "Stopped ${APP}"
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/knadh/listmonk/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
  if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
 | 
			
		||||
    msg_info "Stopping ${APP}"
 | 
			
		||||
    systemctl stop listmonk
 | 
			
		||||
    msg_ok "Stopped ${APP}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Updating ${APP} to v${RELEASE}"
 | 
			
		||||
  cd /opt
 | 
			
		||||
  wget -q "https://github.com/knadh/listmonk/releases/download/v${RELEASE}/listmonk_${RELEASE}_linux_amd64.tar.gz"
 | 
			
		||||
  tar -xzf "listmonk_${RELEASE}_linux_amd64.tar.gz" -C /opt/listmonk
 | 
			
		||||
  /opt/listmonk/listmonk --upgrade --yes --config /opt/listmonk/config.toml &>/dev/null
 | 
			
		||||
  echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
  msg_ok "Updated $APP to v${RELEASE}"
 | 
			
		||||
    msg_info "Updating ${APP} to v${RELEASE}"
 | 
			
		||||
    cd /opt
 | 
			
		||||
    mv /opt/listmonk/ /opt/listmonk-backup
 | 
			
		||||
    mkdir /opt/listmonk/
 | 
			
		||||
    wget -q "https://github.com/knadh/listmonk/releases/download/v${RELEASE}/listmonk_${RELEASE}_linux_amd64.tar.gz"
 | 
			
		||||
    tar -xzf "listmonk_${RELEASE}_linux_amd64.tar.gz" -C /opt/listmonk
 | 
			
		||||
    mv /opt/listmonk-backup/config.toml /opt/listmonk/config.toml
 | 
			
		||||
    mv /opt/listmonk-backup/uploads /opt/listmonk/uploads
 | 
			
		||||
    /opt/listmonk/listmonk --upgrade --yes --config /opt/listmonk/config.toml &>/dev/null
 | 
			
		||||
    echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
    msg_ok "Updated $APP to v${RELEASE}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Starting ${APP}"
 | 
			
		||||
  systemctl start listmonk
 | 
			
		||||
  msg_ok "Started ${APP}"
 | 
			
		||||
    msg_info "Starting ${APP}"
 | 
			
		||||
    systemctl start listmonk
 | 
			
		||||
    msg_ok "Started ${APP}"
 | 
			
		||||
 | 
			
		||||
  msg_info "Cleaning up"
 | 
			
		||||
  rm -rf "/opt/listmonk_${RELEASE}_linux_amd64.tar.gz"
 | 
			
		||||
  msg_ok "Cleaned"
 | 
			
		||||
    msg_info "Cleaning up"
 | 
			
		||||
    rm -rf "/opt/listmonk_${RELEASE}_linux_amd64.tar.gz"
 | 
			
		||||
    rm -rf /opt/listmonk-backup/
 | 
			
		||||
    msg_ok "Cleaned"
 | 
			
		||||
 | 
			
		||||
  msg_ok "Updated Successfully"
 | 
			
		||||
else
 | 
			
		||||
  msg_ok "No update required. ${APP} is already at v${RELEASE}"
 | 
			
		||||
fi
 | 
			
		||||
exit
 | 
			
		||||
    msg_ok "Updated Successfully"
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required. ${APP} is already at v${RELEASE}"
 | 
			
		||||
  fi
 | 
			
		||||
  exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -92,5 +72,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:9000${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:9000${CL}"
 | 
			
		||||
							
								
								
									
										82
									
								
								ct/lldap.sh
									
									
									
									
									
								
							
							
						
						
									
										82
									
								
								ct/lldap.sh
									
									
									
									
									
								
							@@ -1,69 +1,42 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2024 tteck
 | 
			
		||||
# Author: tteck (tteckster)
 | 
			
		||||
# Co-Author: remz1337
 | 
			
		||||
# License: MIT
 | 
			
		||||
# https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Author: tteck (tteckster) | Co-Author: remz1337
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://github.com/lldap/lldap
 | 
			
		||||
 | 
			
		||||
function header_info {
 | 
			
		||||
clear
 | 
			
		||||
cat <<"EOF"
 | 
			
		||||
    ____    __          
 | 
			
		||||
   / / /___/ /___ _____ 
 | 
			
		||||
  / / / __  / __ `/ __ \
 | 
			
		||||
 / / / /_/ / /_/ / /_/ /
 | 
			
		||||
/_/_/\__,_/\__,_/ .___/ 
 | 
			
		||||
               /_/      
 | 
			
		||||
 
 | 
			
		||||
EOF
 | 
			
		||||
}
 | 
			
		||||
header_info
 | 
			
		||||
echo -e "Loading..."
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="lldap"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_tags="ldap"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
header_info "$APP"
 | 
			
		||||
base_settings
 | 
			
		||||
 | 
			
		||||
# Core
 | 
			
		||||
variables
 | 
			
		||||
color
 | 
			
		||||
catch_errors
 | 
			
		||||
 | 
			
		||||
function default_settings() {
 | 
			
		||||
  CT_TYPE="1"
 | 
			
		||||
  PW=""
 | 
			
		||||
  CT_ID=$NEXTID
 | 
			
		||||
  HN=$NSAPP
 | 
			
		||||
  DISK_SIZE="$var_disk"
 | 
			
		||||
  CORE_COUNT="$var_cpu"
 | 
			
		||||
  RAM_SIZE="$var_ram"
 | 
			
		||||
  BRG="vmbr0"
 | 
			
		||||
  NET="dhcp"
 | 
			
		||||
  GATE=""
 | 
			
		||||
  APT_CACHER=""
 | 
			
		||||
  APT_CACHER_IP=""
 | 
			
		||||
  DISABLEIP6="no"
 | 
			
		||||
  MTU=""
 | 
			
		||||
  SD=""
 | 
			
		||||
  NS=""
 | 
			
		||||
  MAC=""
 | 
			
		||||
  VLAN=""
 | 
			
		||||
  SSH="no"
 | 
			
		||||
  VERB="no"
 | 
			
		||||
  echo_default
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function update_script() {
 | 
			
		||||
header_info
 | 
			
		||||
check_container_storage
 | 
			
		||||
check_container_resources
 | 
			
		||||
if [[ ! -f /etc/systemd/system/lldap.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
 | 
			
		||||
msg_info "Updating $APP"
 | 
			
		||||
apt update
 | 
			
		||||
apt upgrade -y lldap
 | 
			
		||||
msg_ok "Updated $APP"
 | 
			
		||||
exit
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -f /etc/systemd/system/lldap.service ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    msg_info "Updating $APP"
 | 
			
		||||
    apt update
 | 
			
		||||
    apt upgrade -y lldap
 | 
			
		||||
    msg_ok "Updated $APP"
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
start
 | 
			
		||||
@@ -71,5 +44,6 @@ build_container
 | 
			
		||||
description
 | 
			
		||||
 | 
			
		||||
msg_ok "Completed Successfully!\n"
 | 
			
		||||
echo -e "${APP} should be reachable by going to the following URL.
 | 
			
		||||
         ${BL}http://${IP}:17170${CL} \n"
 | 
			
		||||
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
 | 
			
		||||
echo -e "${INFO}${YW} Access it using the following URL:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:17170${CL}"
 | 
			
		||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user