mirror of
				https://github.com/community-scripts/ProxmoxVE.git
				synced 2025-11-04 10:22:50 +00:00 
			
		
		
		
	Compare commits
	
		
			513 Commits
		
	
	
		
			2025-01-14
			...
			2025-02-05
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					d941af4cf2 | ||
| 
						 | 
					cb79d7baab | ||
| 
						 | 
					fbe2fb10af | ||
| 
						 | 
					1a00ba109b | ||
| 
						 | 
					88ee57cf15 | ||
| 
						 | 
					857964653c | ||
| 
						 | 
					682674727c | ||
| 
						 | 
					5451e61484 | ||
| 
						 | 
					778b6be4e0 | ||
| 
						 | 
					c52c6ec3a3 | ||
| 
						 | 
					34837c7777 | ||
| 
						 | 
					f98124a57f | ||
| 
						 | 
					7838dd6277 | ||
| 
						 | 
					a6f656eacf | ||
| 
						 | 
					43646a8e19 | ||
| 
						 | 
					8b52639d23 | ||
| 
						 | 
					8afb439ed7 | ||
| 
						 | 
					42b175144a | ||
| 
						 | 
					cb6e2c4455 | ||
| 
						 | 
					8662be2e4e | ||
| 
						 | 
					f66f43d91a | ||
| 
						 | 
					c112edd8ac | ||
| 
						 | 
					398bae1f64 | ||
| 
						 | 
					7c2a6822b5 | ||
| 
						 | 
					3a33e006d4 | ||
| 
						 | 
					3aedafbfc6 | ||
| 
						 | 
					4587352377 | ||
| 
						 | 
					62dac32400 | ||
| 
						 | 
					401a9e1a45 | ||
| 
						 | 
					569d0ac374 | ||
| 
						 | 
					e75312007d | ||
| 
						 | 
					103a5371e6 | ||
| 
						 | 
					abfe17ce74 | ||
| 
						 | 
					86295fcf67 | ||
| 
						 | 
					c9012c54df | ||
| 
						 | 
					fd051552f3 | ||
| 
						 | 
					169076e68e | ||
| 
						 | 
					971aa5ba16 | ||
| 
						 | 
					6be54478f4 | ||
| 
						 | 
					6b225058de | ||
| 
						 | 
					78d96fdaa2 | ||
| 
						 | 
					8129e3cf39 | ||
| 
						 | 
					0e5f663df5 | ||
| 
						 | 
					de45527d45 | ||
| 
						 | 
					d7b3f33030 | ||
| 
						 | 
					88daaed113 | ||
| 
						 | 
					41744c0ab6 | ||
| 
						 | 
					c3cd5314fe | ||
| 
						 | 
					6f29ab8942 | ||
| 
						 | 
					bd5db081c1 | ||
| 
						 | 
					c5a69d6e8b | ||
| 
						 | 
					a75c0e1562 | ||
| 
						 | 
					a97d76f428 | ||
| 
						 | 
					0e0539af3f | ||
| 
						 | 
					8d46f7266e | ||
| 
						 | 
					7f5ee39b25 | ||
| 
						 | 
					85333212b0 | ||
| 
						 | 
					577a415f10 | ||
| 
						 | 
					db24bf4d02 | ||
| 
						 | 
					21e0e0df98 | ||
| 
						 | 
					83015c8cff | ||
| 
						 | 
					7ca1ed019c | ||
| 
						 | 
					fb8f911c49 | ||
| 
						 | 
					b4a0b74bfd | ||
| 
						 | 
					99556bdbd2 | ||
| 
						 | 
					ec3b70e8fd | ||
| 
						 | 
					50ffcd4734 | ||
| 
						 | 
					55c1f2f3dc | ||
| 
						 | 
					99e04e1ded | ||
| 
						 | 
					884428e113 | ||
| 
						 | 
					00f58d71d6 | ||
| 
						 | 
					fa4ab5c8a3 | ||
| 
						 | 
					1528c46f0b | ||
| 
						 | 
					c5b9e4db64 | ||
| 
						 | 
					36f2fb3e52 | ||
| 
						 | 
					e379db8baf | ||
| 
						 | 
					91ba5cd412 | ||
| 
						 | 
					745d1f9444 | ||
| 
						 | 
					76f12fc596 | ||
| 
						 | 
					995906f299 | ||
| 
						 | 
					05ec444e2d | ||
| 
						 | 
					19911f5b81 | ||
| 
						 | 
					57b37b1e16 | ||
| 
						 | 
					91a3fd10e0 | ||
| 
						 | 
					6f0ebac209 | ||
| 
						 | 
					f40e6e5453 | ||
| 
						 | 
					8a07124457 | ||
| 
						 | 
					41c32af0d6 | ||
| 
						 | 
					3cb4196fee | ||
| 
						 | 
					a33108cd4f | ||
| 
						 | 
					a0d7c5db0e | ||
| 
						 | 
					baef2a0cb9 | ||
| 
						 | 
					f9b84bf5ee | ||
| 
						 | 
					ccab9d1be5 | ||
| 
						 | 
					58a2ece7b7 | ||
| 
						 | 
					aa16f936c8 | ||
| 
						 | 
					c8829beddd | ||
| 
						 | 
					3adc22d837 | ||
| 
						 | 
					71b1288220 | ||
| 
						 | 
					3c58303a9f | ||
| 
						 | 
					b8edf0dd68 | ||
| 
						 | 
					2fa3116c9c | ||
| 
						 | 
					d416ff9cfa | ||
| 
						 | 
					2e2db6603e | ||
| 
						 | 
					72335f2c4e | ||
| 
						 | 
					a359ffc211 | ||
| 
						 | 
					cd4bcefa58 | ||
| 
						 | 
					a0eb173824 | ||
| 
						 | 
					3d42ecb152 | ||
| 
						 | 
					0642c7e2c8 | ||
| 
						 | 
					af04e933e3 | ||
| 
						 | 
					0dfc513a27 | ||
| 
						 | 
					26433efcd8 | ||
| 
						 | 
					343de50ef8 | ||
| 
						 | 
					a38e9070ef | ||
| 
						 | 
					e2b548a7c3 | ||
| 
						 | 
					737b18dea5 | ||
| 
						 | 
					6b777a03c0 | ||
| 
						 | 
					d9b4778360 | ||
| 
						 | 
					7299b77359 | ||
| 
						 | 
					d3882b6818 | ||
| 
						 | 
					2ef0cd0f89 | ||
| 
						 | 
					f2eb24d527 | ||
| 
						 | 
					f520607d85 | ||
| 
						 | 
					1270d87bf8 | ||
| 
						 | 
					7f2481ea12 | ||
| 
						 | 
					05f114ed64 | ||
| 
						 | 
					6924a6fea4 | ||
| 
						 | 
					bb553ae48c | ||
| 
						 | 
					cbb18668dd | ||
| 
						 | 
					c7418171b4 | ||
| 
						 | 
					ed2ead9ef2 | ||
| 
						 | 
					e51c121af2 | ||
| 
						 | 
					8c4e97d6cb | ||
| 
						 | 
					1093fef23c | ||
| 
						 | 
					6fa540f0da | ||
| 
						 | 
					ca7fb9b929 | ||
| 
						 | 
					139f84a934 | ||
| 
						 | 
					8bc50f4d71 | ||
| 
						 | 
					3fa4cf6e07 | ||
| 
						 | 
					63e3619b68 | ||
| 
						 | 
					054b569e33 | ||
| 
						 | 
					cd740e52f4 | ||
| 
						 | 
					37c7205978 | ||
| 
						 | 
					eb9633215c | ||
| 
						 | 
					85a6819760 | ||
| 
						 | 
					20d6162ac1 | ||
| 
						 | 
					0dff2b3363 | ||
| 
						 | 
					c799e67ea5 | ||
| 
						 | 
					645972077e | ||
| 
						 | 
					24dfa9590e | ||
| 
						 | 
					cecf179b34 | ||
| 
						 | 
					1f39208c1c | ||
| 
						 | 
					63061942b9 | ||
| 
						 | 
					87a987ba35 | ||
| 
						 | 
					0680fbfac7 | ||
| 
						 | 
					41a836f990 | ||
| 
						 | 
					ad14b1b1d6 | ||
| 
						 | 
					94d60a79d6 | ||
| 
						 | 
					f10e625e41 | ||
| 
						 | 
					dae705056c | ||
| 
						 | 
					b973ca9d8d | ||
| 
						 | 
					1cf8f80c71 | ||
| 
						 | 
					97002e7047 | ||
| 
						 | 
					d366d24dea | ||
| 
						 | 
					05e46a07cd | ||
| 
						 | 
					af166e3346 | ||
| 
						 | 
					8221614cab | ||
| 
						 | 
					b70cd00764 | ||
| 
						 | 
					31473b2170 | ||
| 
						 | 
					690d6d42d4 | ||
| 
						 | 
					3be6824844 | ||
| 
						 | 
					f903cfd97a | ||
| 
						 | 
					901db73d78 | ||
| 
						 | 
					67b80306a1 | ||
| 
						 | 
					7dc446c8ac | ||
| 
						 | 
					9435b9d046 | ||
| 
						 | 
					2b1b517f20 | ||
| 
						 | 
					7c297d3dac | ||
| 
						 | 
					dbb9b66355 | ||
| 
						 | 
					ff06d417b5 | ||
| 
						 | 
					84b982ffa8 | ||
| 
						 | 
					53c7ab19f8 | ||
| 
						 | 
					d13c1e5722 | ||
| 
						 | 
					be92f947cd | ||
| 
						 | 
					452012529c | ||
| 
						 | 
					661654987d | ||
| 
						 | 
					c3a21069d2 | ||
| 
						 | 
					4de8c1c358 | ||
| 
						 | 
					cd86921467 | ||
| 
						 | 
					38a540b87a | ||
| 
						 | 
					8cd3669edb | ||
| 
						 | 
					adfbff63bc | ||
| 
						 | 
					47bf8e6f86 | ||
| 
						 | 
					43f05b3aba | ||
| 
						 | 
					b17befec88 | ||
| 
						 | 
					719da560d1 | ||
| 
						 | 
					ac25b5a702 | ||
| 
						 | 
					ce1a38eb50 | ||
| 
						 | 
					030174f508 | ||
| 
						 | 
					7e1fb858d7 | ||
| 
						 | 
					5dc1a7d219 | ||
| 
						 | 
					14247ac5a9 | ||
| 
						 | 
					4911a7918a | ||
| 
						 | 
					b06ad8bde8 | ||
| 
						 | 
					8a6364902e | ||
| 
						 | 
					dfd56aebf2 | ||
| 
						 | 
					78e6e12c8a | ||
| 
						 | 
					88c3f56157 | ||
| 
						 | 
					92057c4ea7 | ||
| 
						 | 
					0af7a5adbf | ||
| 
						 | 
					ba6edcdcaf | ||
| 
						 | 
					de80e95d69 | ||
| 
						 | 
					796275d175 | ||
| 
						 | 
					9ff56caafd | ||
| 
						 | 
					d596f4a3e0 | ||
| 
						 | 
					b9cdfc26d0 | ||
| 
						 | 
					ae726129b1 | ||
| 
						 | 
					bd3f823b86 | ||
| 
						 | 
					eddacd786d | ||
| 
						 | 
					c2e0a1a180 | ||
| 
						 | 
					b01331480c | ||
| 
						 | 
					198c5caeaa | ||
| 
						 | 
					b4f2594cef | ||
| 
						 | 
					2db7cb1fdb | ||
| 
						 | 
					7ff44c562b | ||
| 
						 | 
					7723269bbc | ||
| 
						 | 
					7c3ad9cfcf | ||
| 
						 | 
					dbb138317d | ||
| 
						 | 
					75f90409eb | ||
| 
						 | 
					17745c344b | ||
| 
						 | 
					4e8317d30c | ||
| 
						 | 
					0313de615a | ||
| 
						 | 
					5415bfd21a | ||
| 
						 | 
					3d99b49a99 | ||
| 
						 | 
					d852e7b098 | ||
| 
						 | 
					f23da27ba2 | ||
| 
						 | 
					1c008a1742 | ||
| 
						 | 
					3cea72cf51 | ||
| 
						 | 
					1c90c131b7 | ||
| 
						 | 
					8c6af4db1f | ||
| 
						 | 
					f29cbe5b46 | ||
| 
						 | 
					a7ee0705e2 | ||
| 
						 | 
					bf618f04e4 | ||
| 
						 | 
					8241fa1dd4 | ||
| 
						 | 
					ab6244c1fe | ||
| 
						 | 
					e6d032eac3 | ||
| 
						 | 
					b402026b84 | ||
| 
						 | 
					ebb7f73e8f | ||
| 
						 | 
					39ff3486e9 | ||
| 
						 | 
					f1109388f4 | ||
| 
						 | 
					c4532f538b | ||
| 
						 | 
					63061ea06f | ||
| 
						 | 
					f78cb0319e | ||
| 
						 | 
					607318b197 | ||
| 
						 | 
					928eabc202 | ||
| 
						 | 
					38b692aaa3 | ||
| 
						 | 
					dc03df6f8a | ||
| 
						 | 
					81be2a49c0 | ||
| 
						 | 
					d4aedc6702 | ||
| 
						 | 
					16be69e3a3 | ||
| 
						 | 
					0e12ea3fd0 | ||
| 
						 | 
					8f87ec37d2 | ||
| 
						 | 
					90d769bbbb | ||
| 
						 | 
					93289d6ff7 | ||
| 
						 | 
					489a1fb560 | ||
| 
						 | 
					3ee076e7ab | ||
| 
						 | 
					51005a6b52 | ||
| 
						 | 
					5e1ad69e08 | ||
| 
						 | 
					1b5b3e11d0 | ||
| 
						 | 
					45f9d7460c | ||
| 
						 | 
					ac49e1eca2 | ||
| 
						 | 
					37d16e43e7 | ||
| 
						 | 
					818dbed71d | ||
| 
						 | 
					8dc2e416a4 | ||
| 
						 | 
					250e77cff7 | ||
| 
						 | 
					69d9b4f439 | ||
| 
						 | 
					08ab210f12 | ||
| 
						 | 
					a3979001fe | ||
| 
						 | 
					9f3a1c8531 | ||
| 
						 | 
					a025fd948e | ||
| 
						 | 
					86ac765d80 | ||
| 
						 | 
					c54180e8fb | ||
| 
						 | 
					6d88f1a796 | ||
| 
						 | 
					9b9b02d9a7 | ||
| 
						 | 
					078fc0e138 | ||
| 
						 | 
					ef60152ae0 | ||
| 
						 | 
					9d46bd8f78 | ||
| 
						 | 
					3993f8d21f | ||
| 
						 | 
					ad2ea710a4 | ||
| 
						 | 
					7fb7ac3bfb | ||
| 
						 | 
					ae791bcb16 | ||
| 
						 | 
					891e97a93c | ||
| 
						 | 
					4e6471e6a6 | ||
| 
						 | 
					a59f1cce8f | ||
| 
						 | 
					405b844c37 | ||
| 
						 | 
					c7a0009d9a | ||
| 
						 | 
					9f29a66bb7 | ||
| 
						 | 
					70ef075ccd | ||
| 
						 | 
					f1f1a7fa68 | ||
| 
						 | 
					704f2f3d9b | ||
| 
						 | 
					022288ef8e | ||
| 
						 | 
					3c68db9b3a | ||
| 
						 | 
					2ba35bbee5 | ||
| 
						 | 
					3b14ea76ad | ||
| 
						 | 
					74d745441c | ||
| 
						 | 
					afc66ebac5 | ||
| 
						 | 
					18baa31178 | ||
| 
						 | 
					ede5efb91b | ||
| 
						 | 
					6b17c1a4a1 | ||
| 
						 | 
					87256a39ce | ||
| 
						 | 
					4c9a4e28a7 | ||
| 
						 | 
					9e9838867a | ||
| 
						 | 
					41514c1eb8 | ||
| 
						 | 
					c8fe3c363b | ||
| 
						 | 
					81c5f51a96 | ||
| 
						 | 
					c5df1bbcea | ||
| 
						 | 
					8303f61647 | ||
| 
						 | 
					eefbbdf4df | ||
| 
						 | 
					77c15f5a24 | ||
| 
						 | 
					e2c329b9c7 | ||
| 
						 | 
					223eecdd8e | ||
| 
						 | 
					cf2942da9a | ||
| 
						 | 
					7a66f9b42f | ||
| 
						 | 
					6ecef0ef94 | ||
| 
						 | 
					0e19ad2859 | ||
| 
						 | 
					b93d7bd632 | ||
| 
						 | 
					4b292c3b2a | ||
| 
						 | 
					4340ccc15d | ||
| 
						 | 
					621416698a | ||
| 
						 | 
					e6404a9a4e | ||
| 
						 | 
					83aff658c5 | ||
| 
						 | 
					db061db17e | ||
| 
						 | 
					e051e414a8 | ||
| 
						 | 
					0a7d541261 | ||
| 
						 | 
					ed8edcbf2d | ||
| 
						 | 
					c3acbf09ed | ||
| 
						 | 
					9c415ca3f4 | ||
| 
						 | 
					c1b3d14068 | ||
| 
						 | 
					2f2d1eeec3 | ||
| 
						 | 
					e76e5ec4a0 | ||
| 
						 | 
					7df2297be0 | ||
| 
						 | 
					35a66c5f1f | ||
| 
						 | 
					e7af6f31ad | ||
| 
						 | 
					8337ca06fa | ||
| 
						 | 
					dd0cdf5d25 | ||
| 
						 | 
					3b37f6a5b7 | ||
| 
						 | 
					5a93af33ba | ||
| 
						 | 
					d73f8f224a | ||
| 
						 | 
					0e04db089e | ||
| 
						 | 
					b1b3d5b80a | ||
| 
						 | 
					3bbeaa8a9d | ||
| 
						 | 
					c5ba9493f8 | ||
| 
						 | 
					6e0527dc19 | ||
| 
						 | 
					f1e6e0ae56 | ||
| 
						 | 
					804ea32190 | ||
| 
						 | 
					038947416d | ||
| 
						 | 
					4cf043675e | ||
| 
						 | 
					9fd9ab00ff | ||
| 
						 | 
					50b5a7d1cf | ||
| 
						 | 
					58ba921fec | ||
| 
						 | 
					1c8a0a53d2 | ||
| 
						 | 
					46c7c0e9ca | ||
| 
						 | 
					33d6f8b860 | ||
| 
						 | 
					64e14fe982 | ||
| 
						 | 
					a8f8ca65a0 | ||
| 
						 | 
					c6c026e221 | ||
| 
						 | 
					4dcf0dc0b8 | ||
| 
						 | 
					81c327c317 | ||
| 
						 | 
					c9eb13a20c | ||
| 
						 | 
					c42438be11 | ||
| 
						 | 
					dfc006271c | ||
| 
						 | 
					e64ecb9773 | ||
| 
						 | 
					85109ecf11 | ||
| 
						 | 
					fb67025f3b | ||
| 
						 | 
					f545c8ae5b | ||
| 
						 | 
					70d75bf53e | ||
| 
						 | 
					783e9b160d | ||
| 
						 | 
					bdb2816e87 | ||
| 
						 | 
					d9a4586eec | ||
| 
						 | 
					3904fb1981 | ||
| 
						 | 
					b8ed5e3987 | ||
| 
						 | 
					723b8e8e0b | ||
| 
						 | 
					e0d0bcd409 | ||
| 
						 | 
					69f19ca652 | ||
| 
						 | 
					76742e7910 | ||
| 
						 | 
					17d06a51ae | ||
| 
						 | 
					e8cd6497ef | ||
| 
						 | 
					08131f881c | ||
| 
						 | 
					b789d982d9 | ||
| 
						 | 
					41d45eb4ec | ||
| 
						 | 
					665014379e | ||
| 
						 | 
					5a2a5b3885 | ||
| 
						 | 
					4c5df518c7 | ||
| 
						 | 
					d89ad6d293 | ||
| 
						 | 
					0a00eb74f2 | ||
| 
						 | 
					5dcfdc9607 | ||
| 
						 | 
					b409c3ac72 | ||
| 
						 | 
					6031f99b58 | ||
| 
						 | 
					2a74f53b14 | ||
| 
						 | 
					f2935e9f60 | ||
| 
						 | 
					fe5f88f140 | ||
| 
						 | 
					5d32260568 | ||
| 
						 | 
					81e17c2137 | ||
| 
						 | 
					5db657a668 | ||
| 
						 | 
					bc135d70ab | ||
| 
						 | 
					2173728316 | ||
| 
						 | 
					76362f4ede | ||
| 
						 | 
					0daca3a6ee | ||
| 
						 | 
					029b57ea9e | ||
| 
						 | 
					a94e28c5df | ||
| 
						 | 
					3078d1a11a | ||
| 
						 | 
					b9187d771a | ||
| 
						 | 
					1d26b208ff | ||
| 
						 | 
					7df8273654 | ||
| 
						 | 
					dc0b432b69 | ||
| 
						 | 
					79dfb7c001 | ||
| 
						 | 
					5d69a62b47 | ||
| 
						 | 
					ed0b16bf17 | ||
| 
						 | 
					9843b46a94 | ||
| 
						 | 
					c4580100a8 | ||
| 
						 | 
					f8f166e26f | ||
| 
						 | 
					b97d40bf5a | ||
| 
						 | 
					0e443536cc | ||
| 
						 | 
					0b73d9f689 | ||
| 
						 | 
					5c11b67507 | ||
| 
						 | 
					2f20db8a42 | ||
| 
						 | 
					b04dc0261b | ||
| 
						 | 
					81b271a9ef | ||
| 
						 | 
					75590a8ff8 | ||
| 
						 | 
					d1f5556ce3 | ||
| 
						 | 
					e683fd900f | ||
| 
						 | 
					643e0f5ac8 | ||
| 
						 | 
					bd301942c5 | ||
| 
						 | 
					8cb63aa07c | ||
| 
						 | 
					ce7bb6612d | ||
| 
						 | 
					a6bd47e0c7 | ||
| 
						 | 
					ed9c083dda | ||
| 
						 | 
					63b5024bf2 | ||
| 
						 | 
					1049558407 | ||
| 
						 | 
					b93b1021a3 | ||
| 
						 | 
					7bb0cc32d2 | ||
| 
						 | 
					779721cea5 | ||
| 
						 | 
					22b7155203 | ||
| 
						 | 
					1bb911e531 | ||
| 
						 | 
					023c3fc52d | ||
| 
						 | 
					258b1bd9fd | ||
| 
						 | 
					6d4eb9c3ee | ||
| 
						 | 
					15faa76b69 | ||
| 
						 | 
					393f6d74c9 | ||
| 
						 | 
					f51762420a | ||
| 
						 | 
					f8c10ca80b | ||
| 
						 | 
					3fca76dbbc | ||
| 
						 | 
					b57689ec50 | ||
| 
						 | 
					1f8f593116 | ||
| 
						 | 
					330315c615 | ||
| 
						 | 
					504d47d246 | ||
| 
						 | 
					ab206530e0 | ||
| 
						 | 
					f5b78d5dcc | ||
| 
						 | 
					3f9863ebf9 | ||
| 
						 | 
					786e8963b9 | ||
| 
						 | 
					6cc4244f70 | ||
| 
						 | 
					f5a260a399 | ||
| 
						 | 
					f1f8f78420 | ||
| 
						 | 
					6c42b5c21a | ||
| 
						 | 
					24d24421d1 | ||
| 
						 | 
					9e4c627323 | ||
| 
						 | 
					2551bf6f9f | ||
| 
						 | 
					8533380813 | ||
| 
						 | 
					f65abd9ac8 | ||
| 
						 | 
					85387563f0 | ||
| 
						 | 
					5977f8f936 | ||
| 
						 | 
					a15a59e615 | ||
| 
						 | 
					14dfaa9bde | ||
| 
						 | 
					75778976d0 | ||
| 
						 | 
					c45085a51d | ||
| 
						 | 
					959a7b4b14 | ||
| 
						 | 
					5da06e75e7 | ||
| 
						 | 
					2aed45fa61 | ||
| 
						 | 
					7614034784 | ||
| 
						 | 
					0f06725fdc | ||
| 
						 | 
					5c16955a8e | ||
| 
						 | 
					2c8aab24d0 | ||
| 
						 | 
					9cc07cc6e1 | ||
| 
						 | 
					047667c428 | ||
| 
						 | 
					147ba0e78d | ||
| 
						 | 
					d3b0becfe6 | ||
| 
						 | 
					d20d0428dc | ||
| 
						 | 
					0368ce36d1 | ||
| 
						 | 
					757b5bd267 | ||
| 
						 | 
					4d0632fea0 | ||
| 
						 | 
					69288b197f | ||
| 
						 | 
					12a61a1d71 | ||
| 
						 | 
					d186557488 | ||
| 
						 | 
					db6390f791 | ||
| 
						 | 
					41c4b11575 | ||
| 
						 | 
					bf89a037bd | ||
| 
						 | 
					e503ce3806 | ||
| 
						 | 
					c934085b16 | ||
| 
						 | 
					c57f0be737 | ||
| 
						 | 
					e6530e14dd | ||
| 
						 | 
					9174536e95 | ||
| 
						 | 
					aa3a3997f0 | ||
| 
						 | 
					37da2e5e1c | ||
| 
						 | 
					18538897ba | ||
| 
						 | 
					dbfb72807a | ||
| 
						 | 
					e756c49e50 | ||
| 
						 | 
					4ae131e102 | ||
| 
						 | 
					f498f349f3 | ||
| 
						 | 
					8e525611bd | ||
| 
						 | 
					910f3bb6f4 | ||
| 
						 | 
					c8319f044c | ||
| 
						 | 
					ac61a925cc | 
							
								
								
									
										3
									
								
								.github/CONTRIBUTING.md
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								.github/CONTRIBUTING.md
									
									
									
									
										vendored
									
									
								
							@@ -2,6 +2,7 @@
 | 
			
		||||
# Community Scripts Contribution Guide
 | 
			
		||||
 | 
			
		||||
## **Welcome to the communty-scripts Repository!** 
 | 
			
		||||
 | 
			
		||||
📜 These documents outline the essential coding standards for all our scripts and JSON files. Adhering to these standards ensures that our codebase remains consistent, readable, and maintainable. By following these guidelines, we can improve collaboration, reduce errors, and enhance the overall quality of our project.
 | 
			
		||||
 | 
			
		||||
### Why Coding Standards Matter
 | 
			
		||||
@@ -79,7 +80,7 @@ git switch -c your-feature-branch
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
### 4. Change paths in build.func install.func and AppName.sh
 | 
			
		||||
To be able to develop from your own branch you need to change `https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main` to `https://raw.githubusercontent.com/[USER]/[REPOSITORY]/refs/head/[BRANCH]`. You need to make this change atleast in misc/build.func misc/install.func and in your ct/AppName.sh. This change is only for testing. Before opening a Pull Request you should change this line change all this back to point to `https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main`.
 | 
			
		||||
To be able to develop from your own branch you need to change `https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main` to `https://raw.githubusercontent.com/[USER]/[REPOSITORY]/refs/heads/[BRANCH]`. You need to make this change atleast in misc/build.func misc/install.func and in your ct/AppName.sh. This change is only for testing. Before opening a Pull Request you should change this line change all this back to point to `https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main`.
 | 
			
		||||
 | 
			
		||||
### 4. Commit changes (without build.func and install.func!)
 | 
			
		||||
```bash
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										7
									
								
								.github/CONTRIBUTOR_GUIDE/ct/AppName.md
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										7
									
								
								.github/CONTRIBUTOR_GUIDE/ct/AppName.md
									
									
									
									
										vendored
									
									
								
							@@ -40,8 +40,8 @@
 | 
			
		||||
- Import the build.func file.
 | 
			
		||||
- When developing your own script, change the URL to your own repository.
 | 
			
		||||
 | 
			
		||||
> [!CAUTION]
 | 
			
		||||
> Before opening a Pull Request, change the URL to point to the community-scripts repo.
 | 
			
		||||
> [!IMPORTANT] 
 | 
			
		||||
> You also need to change all apperances of this URL in `misc/build.func` and `misc/install.func`
 | 
			
		||||
 | 
			
		||||
Example for development:
 | 
			
		||||
 | 
			
		||||
@@ -55,6 +55,9 @@ Final script:
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
> [!CAUTION]
 | 
			
		||||
> Before opening a Pull Request, change the URLs to point to the community-scripts repo.
 | 
			
		||||
 | 
			
		||||
### 1.3 **Metadata**
 | 
			
		||||
 | 
			
		||||
- Add clear comments for script metadata, including author, copyright, and license information.
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										3
									
								
								.github/CONTRIBUTOR_GUIDE/ct/AppName.sh
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								.github/CONTRIBUTOR_GUIDE/ct/AppName.sh
									
									
									
									
										vendored
									
									
								
							@@ -1,6 +1,6 @@
 | 
			
		||||
#!/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
 | 
			
		||||
# Copyright (c) 2021-2025 community-scripts ORG
 | 
			
		||||
# Author: [YourUserName]
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: [SOURCE_URL]
 | 
			
		||||
@@ -66,7 +66,6 @@ function update_script() {
 | 
			
		||||
        # Starting Services
 | 
			
		||||
        msg_info "Starting $APP"
 | 
			
		||||
        systemctl start [SERVICE_NAME]
 | 
			
		||||
        sleep 2
 | 
			
		||||
        msg_ok "Started $APP"
 | 
			
		||||
 | 
			
		||||
        # Cleaning up
 | 
			
		||||
 
 | 
			
		||||
@@ -1,8 +1,8 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
 | 
			
		||||
# Copyright (c) 2021-2024 community-scripts ORG
 | 
			
		||||
# Copyright (c) 2021-2025 community-scripts ORG
 | 
			
		||||
# Author: [YourUserName]
 | 
			
		||||
# License: MIT
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: [SOURCE_URL]
 | 
			
		||||
 | 
			
		||||
# Import Functions und Setup
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										1
									
								
								.github/FUNDING.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								.github/FUNDING.yml
									
									
									
									
										vendored
									
									
								
							@@ -1 +1,2 @@
 | 
			
		||||
ko_fi: community_scripts
 | 
			
		||||
github: community_scripts
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										4
									
								
								.github/ISSUE_TEMPLATE/bug_report.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								.github/ISSUE_TEMPLATE/bug_report.yml
									
									
									
									
										vendored
									
									
								
							@@ -8,13 +8,13 @@ body:
 | 
			
		||||
        # 🐞 **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**  
 | 
			
		||||
        ## ⚠️ **IMPORTANT - READ FIRST**  
 | 
			
		||||
        - 🔍 **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:
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										4
									
								
								.github/autolabeler-config.json
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										4
									
								
								.github/autolabeler-config.json
									
									
									
									
										vendored
									
									
								
							@@ -50,7 +50,7 @@
 | 
			
		||||
  "maintenance": [
 | 
			
		||||
    {
 | 
			
		||||
      "fileStatus": null,
 | 
			
		||||
      "includeGlobs": ["*.md", ".github/**"],
 | 
			
		||||
      "includeGlobs": ["*.md", ".github/**", "misc/*.func", "ct/create_lxc.sh"],
 | 
			
		||||
      "excludeGlobs": []
 | 
			
		||||
    }
 | 
			
		||||
  ],
 | 
			
		||||
@@ -61,4 +61,4 @@
 | 
			
		||||
      "excludeGlobs": []
 | 
			
		||||
    }
 | 
			
		||||
  ]
 | 
			
		||||
}
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										39
									
								
								.github/pull_request_template.md
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										39
									
								
								.github/pull_request_template.md
									
									
									
									
										vendored
									
									
								
							@@ -1,39 +1,28 @@
 | 
			
		||||
> **🛠️ 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
 | 
			
		||||
Provide a summary of the changes made and/or reference the issue being addressed.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
 | 
			
		||||
- - -
 | 
			
		||||
**_Please remove unneeded lines!_**
 | 
			
		||||
- Related Issue: # (issue number, if applicable)  
 | 
			
		||||
- Related PR: # (if applicable)  
 | 
			
		||||
- Related Discussion: []()(if applicable)  
 | 
			
		||||
- Related Issue: #
 | 
			
		||||
- Related PR: #
 | 
			
		||||
- Related Discussion: #
 | 
			
		||||
- - - 
 | 
			
		||||
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
## 🛠️ 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)
 | 
			
		||||
- [] 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.)
 | 
			
		||||
 | 
			
		||||
## 🛠️ 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)  
 | 
			
		||||
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
## 📋 Additional Information (optional)
 | 
			
		||||
Provide any extra context or screenshots about the feature or fix here.  
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										87
									
								
								.github/workflows/auto-update-app-headers.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										87
									
								
								.github/workflows/auto-update-app-headers.yml
									
									
									
									
										vendored
									
									
								
							@@ -1,4 +1,4 @@
 | 
			
		||||
name: Auto Update .app-headers
 | 
			
		||||
name: Auto Update .app-files
 | 
			
		||||
 | 
			
		||||
on:
 | 
			
		||||
  push:
 | 
			
		||||
@@ -6,10 +6,10 @@ on:
 | 
			
		||||
      - main
 | 
			
		||||
    paths:
 | 
			
		||||
      - 'ct/**.sh'
 | 
			
		||||
  workflow_dispatch:  # Ermöglicht das manuelle Ausführen der Action
 | 
			
		||||
  workflow_dispatch: 
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  update-app-headers:
 | 
			
		||||
  update-app-files:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
 | 
			
		||||
    permissions:
 | 
			
		||||
@@ -21,62 +21,79 @@ jobs:
 | 
			
		||||
      - name: Checkout repository
 | 
			
		||||
        uses: actions/checkout@v2
 | 
			
		||||
 | 
			
		||||
      # Step 2: Set up Git user for committing changes
 | 
			
		||||
      # Step 2: Disable file mode changes detection
 | 
			
		||||
      - name: Disable file mode changes
 | 
			
		||||
        run: git config core.fileMode false
 | 
			
		||||
 | 
			
		||||
      # Step 3: Set up Git user for committing changes
 | 
			
		||||
      - name: Set up Git
 | 
			
		||||
        run: |
 | 
			
		||||
          git config --global user.name "GitHub Actions"
 | 
			
		||||
          git config --global user.email "actions@github.com"
 | 
			
		||||
          git config --global user.email "github-actions[bot]@users.noreply.github.com"
 | 
			
		||||
 | 
			
		||||
      # Step 3: Install figlet
 | 
			
		||||
      # Step 4: Install figlet
 | 
			
		||||
      - name: Install figlet
 | 
			
		||||
        run: sudo apt-get install -y figlet
 | 
			
		||||
 | 
			
		||||
      # Step 4: Run the generate-app-headers.sh script to update .app-headers
 | 
			
		||||
      - name: Run generate-app-headers.sh to update .app-headers
 | 
			
		||||
      # Step 5: Run the updated generate-app-files.sh script
 | 
			
		||||
      - name: Run generate-app-files.sh
 | 
			
		||||
        run: |
 | 
			
		||||
          chmod +x .github/workflows/generate-app-headers.sh
 | 
			
		||||
          .github/workflows/generate-app-headers.sh
 | 
			
		||||
          chmod +x .github/workflows/scripts/generate-app-headers.sh
 | 
			
		||||
          .github/workflows/scripts/generate-app-headers.sh
 | 
			
		||||
        env:
 | 
			
		||||
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
 | 
			
		||||
 | 
			
		||||
      # Step 5: Check if there are any changes
 | 
			
		||||
      # Step 6: Check if there are any changes
 | 
			
		||||
      - name: Check if there are any changes
 | 
			
		||||
        id: verify-diff
 | 
			
		||||
        run: |
 | 
			
		||||
          git diff --quiet . || echo "changed=true" >> $GITHUB_OUTPUT
 | 
			
		||||
          echo "Checking for changes..."
 | 
			
		||||
          git add -A  # Untracked Dateien aufnehmen
 | 
			
		||||
          git status
 | 
			
		||||
          if git diff --cached --quiet; then
 | 
			
		||||
            echo "No changes detected."
 | 
			
		||||
            echo "changed=false" >> "$GITHUB_ENV"
 | 
			
		||||
          else
 | 
			
		||||
            echo "Changes detected:"
 | 
			
		||||
            git diff --stat --cached
 | 
			
		||||
            echo "changed=true" >> "$GITHUB_ENV"
 | 
			
		||||
          fi
 | 
			
		||||
 | 
			
		||||
      # Step 6: Commit changes (if any) and create a PR
 | 
			
		||||
      # Step 7: Commit and create PR if changes exist
 | 
			
		||||
      - name: Commit and create PR if changes exist
 | 
			
		||||
        if: steps.verify-diff.outputs.changed == 'true'
 | 
			
		||||
        if: env.changed == 'true'
 | 
			
		||||
        run: |
 | 
			
		||||
          git config --global user.name "github-actions[bot]"
 | 
			
		||||
          git config --global user.email "github-actions[bot]@users.noreply.github.com"
 | 
			
		||||
          git add ./misc/.app-headers
 | 
			
		||||
          git commit -m "Update .app-headers file"
 | 
			
		||||
          # Create a temporary branch for the PR
 | 
			
		||||
          git checkout -b pr-update-app-headers
 | 
			
		||||
          git push origin pr-update-app-headers --force
 | 
			
		||||
          
 | 
			
		||||
          # Create PR against main
 | 
			
		||||
          gh pr create --title "[core] update .app-headers file" \
 | 
			
		||||
                       --body "This PR is auto-generated by a Github Action to update the .app-headers file." \
 | 
			
		||||
                       --head pr-update-app-headers \
 | 
			
		||||
          git commit -m "Update .app files"
 | 
			
		||||
          git checkout -b pr-update-app-files
 | 
			
		||||
          git push origin pr-update-app-files --force
 | 
			
		||||
          gh pr create --title "[core] update .app files" \
 | 
			
		||||
                       --body "This PR is auto-generated by a GitHub Action to update the .app files." \
 | 
			
		||||
                       --head pr-update-app-files \
 | 
			
		||||
                       --base main \
 | 
			
		||||
                       --label "automated pr"
 | 
			
		||||
        env:
 | 
			
		||||
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
 | 
			
		||||
 | 
			
		||||
      
 | 
			
		||||
      - name: Approve pull request
 | 
			
		||||
        if: steps.verify-diff.outputs.changed == 'true'
 | 
			
		||||
        env:
 | 
			
		||||
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
 | 
			
		||||
        run: |
 | 
			
		||||
          PR_NUMBER=$(gh pr list --head "pr-update-app-files" --json number --jq '.[].number')
 | 
			
		||||
          if [ -n "$PR_NUMBER" ]; then
 | 
			
		||||
            gh pr review $PR_NUMBER --approve
 | 
			
		||||
          fi
 | 
			
		||||
          
 | 
			
		||||
      - name: Re-approve pull request after update
 | 
			
		||||
        if: steps.verify-diff.outputs.changed == 'true'
 | 
			
		||||
        env:
 | 
			
		||||
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
 | 
			
		||||
        run: |
 | 
			
		||||
          PR_NUMBER=$(gh pr list --head "pr-update-app-headers" --json number --jq '.[].number')
 | 
			
		||||
          # Check if the PR was created by the bot (skip review if so)
 | 
			
		||||
          PR_AUTHOR=$(gh pr view "$PR_NUMBER" --json author --jq '.author.login')
 | 
			
		||||
          if [ "$PR_AUTHOR" != "github-actions[bot]" ]; then
 | 
			
		||||
            gh pr review "$PR_NUMBER" --approve
 | 
			
		||||
          else
 | 
			
		||||
            echo "PR was created by the bot, skipping review."
 | 
			
		||||
          PR_NUMBER=$(gh pr list --head "pr-update-app-files" --json number --jq '.[].number')
 | 
			
		||||
          if [ -n "$PR_NUMBER" ]; then
 | 
			
		||||
            gh pr review $PR_NUMBER --approve
 | 
			
		||||
          fi
 | 
			
		||||
 | 
			
		||||
      # Step 8: Output success message when no changes
 | 
			
		||||
      - name: No changes detected
 | 
			
		||||
        if: env.changed == 'false'
 | 
			
		||||
        run: echo "No changes to commit. Workflow completed successfully."
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										60
									
								
								.github/workflows/backup/check_and_update_json_date.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								.github/workflows/backup/check_and_update_json_date.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,60 @@
 | 
			
		||||
name: Update date_created in JSON files
 | 
			
		||||
 | 
			
		||||
on:
 | 
			
		||||
  # Dieser Trigger wird für das Öffnen von PRs sowie für das Aktualisieren von offenen PRs verwendet
 | 
			
		||||
  pull_request:
 | 
			
		||||
    types: [opened, synchronize]
 | 
			
		||||
  schedule:
 | 
			
		||||
    # Dieser Trigger wird 4x am Tag ausgelöst, um sicherzustellen, dass das Datum aktualisiert wird
 | 
			
		||||
    - cron: "0 0,6,12,18 * * *"  # Führt alle 6 Stunden aus
 | 
			
		||||
  workflow_dispatch: # Manuelle Ausführung des Workflows möglich
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  update-date:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
 | 
			
		||||
    steps:
 | 
			
		||||
      - name: Checkout repository
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
 | 
			
		||||
      - name: Install yq
 | 
			
		||||
        run: |
 | 
			
		||||
          sudo apt-get update
 | 
			
		||||
          sudo apt-get install -y yq
 | 
			
		||||
 | 
			
		||||
      - name: Set the current date
 | 
			
		||||
        id: set_date
 | 
			
		||||
        run: echo "TODAY=$(date -u +%Y-%m-%d)" >> $GITHUB_ENV
 | 
			
		||||
 | 
			
		||||
      - name: Check for changes in PR
 | 
			
		||||
        run: |
 | 
			
		||||
          # Hole den PR-Branch
 | 
			
		||||
          PR_BRANCH="refs/pull/${{ github.event.pull_request.number }}/merge"
 | 
			
		||||
          git fetch origin $PR_BRANCH
 | 
			
		||||
 | 
			
		||||
          # Liste alle JSON-Dateien im PR auf, die geändert wurden
 | 
			
		||||
          CHANGED_JSON_FILES=$(git diff --name-only origin/main...$PR_BRANCH | grep '.json')
 | 
			
		||||
 | 
			
		||||
          if [ -z "$CHANGED_JSON_FILES" ]; then
 | 
			
		||||
            echo "No JSON files changed in this PR."
 | 
			
		||||
            exit 0
 | 
			
		||||
          fi
 | 
			
		||||
 | 
			
		||||
          # Gehe alle geänderten JSON-Dateien durch und aktualisiere das Datum
 | 
			
		||||
          for file in $CHANGED_JSON_FILES; do
 | 
			
		||||
            echo "Updating date_created in $file"
 | 
			
		||||
            # Setze das aktuelle Datum
 | 
			
		||||
            yq eval ".date_created = \"${{ env.TODAY }}\"" -i "$file"
 | 
			
		||||
            git add "$file"
 | 
			
		||||
          done
 | 
			
		||||
 | 
			
		||||
      - name: Commit and push changes
 | 
			
		||||
        run: |
 | 
			
		||||
          # Prüfe, ob es Änderungen gibt und committe sie
 | 
			
		||||
          git config user.name "json-updater-bot"
 | 
			
		||||
          git config user.email "github-actions[bot]@users.noreply.github.com"
 | 
			
		||||
 | 
			
		||||
          git commit -m "Update date_created to ${{ env.TODAY }}" || echo "No changes to commit"
 | 
			
		||||
 | 
			
		||||
          # Push zurück in den PR-Branch
 | 
			
		||||
          git push origin $PR_BRANCH
 | 
			
		||||
							
								
								
									
										45
									
								
								.github/workflows/check_and_update_json_date.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										45
									
								
								.github/workflows/check_and_update_json_date.yml
									
									
									
									
										vendored
									
									
								
							@@ -1,45 +0,0 @@
 | 
			
		||||
name: Check and Update JSON Date
 | 
			
		||||
 | 
			
		||||
on:
 | 
			
		||||
  pull_request:
 | 
			
		||||
    types: [synchronize, opened, reopened, edited]
 | 
			
		||||
    paths:
 | 
			
		||||
    - "json/*.json"
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  update-date:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
 | 
			
		||||
    steps:
 | 
			
		||||
      - name: Checkout code
 | 
			
		||||
        uses: actions/checkout@v3
 | 
			
		||||
 | 
			
		||||
      - name: Set up Python
 | 
			
		||||
        uses: actions/setup-python@v4
 | 
			
		||||
        with:
 | 
			
		||||
          python-version: 3.12
 | 
			
		||||
 | 
			
		||||
      - name: Install dependencies
 | 
			
		||||
        run: pip install jq
 | 
			
		||||
 | 
			
		||||
      - name: Find and Update JSON files in /json folder
 | 
			
		||||
        run: |
 | 
			
		||||
          TODAY=$(date +%Y-%m-%d)
 | 
			
		||||
          for file in $(git diff --diff-filter=A --name-only HEAD | grep '^json/.*\.json$'); do
 | 
			
		||||
            if jq -e '.date_created' $file > /dev/null 2>&1; then
 | 
			
		||||
              echo "Updating date_created in $file"
 | 
			
		||||
              jq --arg date "$TODAY" '.date_created = $date' $file > temp.json && mv temp.json $file
 | 
			
		||||
              git add $file
 | 
			
		||||
            fi
 | 
			
		||||
          done
 | 
			
		||||
 | 
			
		||||
      - name: Commit changes
 | 
			
		||||
        run: |
 | 
			
		||||
          git config user.name "GitHub Action"
 | 
			
		||||
          git config user.email "action@github.com"
 | 
			
		||||
          git commit -m "Update date_created in new JSON files" || echo "No changes to commit"
 | 
			
		||||
 | 
			
		||||
      - name: Push changes
 | 
			
		||||
        uses: ad-m/github-push-action@v0.6.0
 | 
			
		||||
        with:
 | 
			
		||||
          github_token: ${{ secrets.GITHUB_TOKEN }}
 | 
			
		||||
							
								
								
									
										33
									
								
								.github/workflows/generate-app-headers.sh
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										33
									
								
								.github/workflows/generate-app-headers.sh
									
									
									
									
										vendored
									
									
								
							@@ -1,33 +0,0 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
 | 
			
		||||
output_file="./misc/.app-headers"
 | 
			
		||||
> "$output_file"  # Clear or create the file
 | 
			
		||||
 | 
			
		||||
current_date=$(date +"%m-%d-%Y")
 | 
			
		||||
# Header with date
 | 
			
		||||
{
 | 
			
		||||
  echo "### Generated on $current_date"
 | 
			
		||||
  echo "##################################################"
 | 
			
		||||
  echo
 | 
			
		||||
} >> "$output_file"  
 | 
			
		||||
 | 
			
		||||
# Find only regular .sh files in ./ct, sort them alphabetically
 | 
			
		||||
find ./ct -type f -name "*.sh" | sort | while read -r script; do
 | 
			
		||||
  # Extract the APP name from the APP line
 | 
			
		||||
  app_name=$(grep -oP '^APP="\K[^"]+' "$script" 2>/dev/null)
 | 
			
		||||
 | 
			
		||||
  if [[ -n "$app_name" ]]; then
 | 
			
		||||
    # Generate figlet output
 | 
			
		||||
    figlet_output=$(figlet -f slant "$app_name")
 | 
			
		||||
    {
 | 
			
		||||
      echo "### $(basename "$script")"
 | 
			
		||||
      echo "APP=$app_name"
 | 
			
		||||
      echo "$figlet_output"
 | 
			
		||||
      echo
 | 
			
		||||
    } >> "$output_file"  
 | 
			
		||||
  else
 | 
			
		||||
    echo "No APP name found in $script, skipping."
 | 
			
		||||
  fi
 | 
			
		||||
done
 | 
			
		||||
 | 
			
		||||
echo "Generated combined file at $output_file"
 | 
			
		||||
							
								
								
									
										34
									
								
								.github/workflows/scripts/generate-app-headers.sh
									
									
									
									
										vendored
									
									
										Executable file
									
								
							
							
						
						
									
										34
									
								
								.github/workflows/scripts/generate-app-headers.sh
									
									
									
									
										vendored
									
									
										Executable file
									
								
							@@ -0,0 +1,34 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
 | 
			
		||||
# Base directory for headers
 | 
			
		||||
headers_dir="./ct/headers"
 | 
			
		||||
 | 
			
		||||
# Ensure the headers directory exists and clear it
 | 
			
		||||
mkdir -p "$headers_dir"
 | 
			
		||||
rm -f "$headers_dir"/*
 | 
			
		||||
 | 
			
		||||
# Find all .sh files in ./ct directory, sorted alphabetically
 | 
			
		||||
find ./ct -type f -name "*.sh" | sort | while read -r script; do
 | 
			
		||||
  # Extract the APP name from the APP line
 | 
			
		||||
  app_name=$(grep -oP '^APP="\K[^"]+' "$script" 2>/dev/null)
 | 
			
		||||
 | 
			
		||||
  if [[ -n "$app_name" ]]; then
 | 
			
		||||
    # Define the output file name in the headers directory
 | 
			
		||||
    output_file="${headers_dir}/$(basename "${script%.*}")"
 | 
			
		||||
 | 
			
		||||
    # Generate figlet output
 | 
			
		||||
    figlet_output=$(figlet -w 500 -f slant "$app_name")
 | 
			
		||||
 | 
			
		||||
    # Check if figlet output is not empty
 | 
			
		||||
    if [[ -n "$figlet_output" ]]; then
 | 
			
		||||
      echo "$figlet_output" > "$output_file"
 | 
			
		||||
      echo "Generated: $output_file"
 | 
			
		||||
    else
 | 
			
		||||
      echo "Figlet failed for $app_name in $script"
 | 
			
		||||
    fi
 | 
			
		||||
  else
 | 
			
		||||
    echo "No APP name found in $script, skipping."
 | 
			
		||||
  fi
 | 
			
		||||
done
 | 
			
		||||
 | 
			
		||||
echo "Completed processing .sh files."
 | 
			
		||||
							
								
								
									
										23
									
								
								.github/workflows/scripts/update_json_date.sh
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								.github/workflows/scripts/update_json_date.sh
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,23 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
 | 
			
		||||
# Verzeichnis, das die JSON-Dateien enthält
 | 
			
		||||
json_dir="./json/*.json"
 | 
			
		||||
 | 
			
		||||
current_date=$(date +"%Y-%m-%d")
 | 
			
		||||
 | 
			
		||||
for json_file in $json_dir; do
 | 
			
		||||
  if [[ -f "$json_file" ]]; then
 | 
			
		||||
    current_json_date=$(jq -r '.date_created' "$json_file")
 | 
			
		||||
 | 
			
		||||
    if [[ "$current_json_date" != "$current_date" ]]; then
 | 
			
		||||
      echo "Updating $json_file with date $current_date"
 | 
			
		||||
      jq --arg date "$current_date" '.date_created = $date' "$json_file" > temp.json && mv temp.json "$json_file"
 | 
			
		||||
      
 | 
			
		||||
      git add "$json_file"
 | 
			
		||||
      git commit -m "Update date_created to $current_date in $json_file"
 | 
			
		||||
    else
 | 
			
		||||
      echo "Date in $json_file is already up to date."
 | 
			
		||||
    fi
 | 
			
		||||
  fi
 | 
			
		||||
done
 | 
			
		||||
git push origin HEAD
 | 
			
		||||
							
								
								
									
										48
									
								
								.github/workflows/update_json_date.yml.bak
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										48
									
								
								.github/workflows/update_json_date.yml.bak
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,48 @@
 | 
			
		||||
name: Update JSON Date
 | 
			
		||||
on:
 | 
			
		||||
  pull_request:
 | 
			
		||||
    types: [opened, synchronize, reopened]
 | 
			
		||||
        
 | 
			
		||||
jobs:
 | 
			
		||||
  list-files:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    steps:
 | 
			
		||||
    - name: Checkout PR Branch
 | 
			
		||||
      uses: actions/checkout@v4
 | 
			
		||||
      with:
 | 
			
		||||
        ref: ${{ github.event.pull_request.head.ref }}
 | 
			
		||||
 | 
			
		||||
    - name: Fetch PR changes
 | 
			
		||||
      run: |
 | 
			
		||||
          git remote add fork https://github.com/${{ github.event.pull_request.head.repo.full_name }}.git
 | 
			
		||||
          git fetch fork ${{ github.event.pull_request.head.ref }}:pullreq
 | 
			
		||||
          git checkout pullreq
 | 
			
		||||
 | 
			
		||||
    - name: Update JSON
 | 
			
		||||
      id: changed-files
 | 
			
		||||
      run: |
 | 
			
		||||
          FILES=$(gh api repos/${{ github.repository }}/pulls/${{ github.event.pull_request.number }}/files --jq '.[].filename' | tr '\n' ' ')
 | 
			
		||||
          echo "changed_files=${FILES}"
 | 
			
		||||
          for FILE in $FILES; do
 | 
			
		||||
            if [[ "$FILE" =~ /(.*)\.json ]]; then
 | 
			
		||||
              NAME="${BASH_REMATCH[1]}"
 | 
			
		||||
            else
 | 
			
		||||
              echo "no new JSON in ${FILES}"
 | 
			
		||||
              continue
 | 
			
		||||
            fi
 | 
			
		||||
          
 | 
			
		||||
            JSON_FILE="json/${NAME}.json"
 | 
			
		||||
            if [[ -f "$JSON_FILE" ]]; then
 | 
			
		||||
              echo "Updating date_created in $JSON_FILE"
 | 
			
		||||
              jq --arg date "$(date +%Y-%m-%d)" '.date_created = $date' "$JSON_FILE" > tmp.json && mv tmp.json "$JSON_FILE"
 | 
			
		||||
            else
 | 
			
		||||
              echo "JSON file $FILES not found"
 | 
			
		||||
            fi
 | 
			
		||||
          done
 | 
			
		||||
             
 | 
			
		||||
          git config --global user.name "github-actions[bot]"
 | 
			
		||||
          git config --global user.email "github-actions[bot]@users.noreply.github.com"
 | 
			
		||||
          git diff --exit-code || git commit -am "Updating Dates in affected JSON files."
 | 
			
		||||
          git push 
 | 
			
		||||
      env:
 | 
			
		||||
          GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
 | 
			
		||||
							
								
								
									
										6
									
								
								.github/workflows/validate-filenames.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										6
									
								
								.github/workflows/validate-filenames.yml
									
									
									
									
										vendored
									
									
								
							@@ -50,9 +50,13 @@ jobs:
 | 
			
		||||
 | 
			
		||||
          NON_COMPLIANT_FILES=""
 | 
			
		||||
          for FILE in $CHANGED_FILES; do
 | 
			
		||||
            # Datei "ct/create_lxc.sh" explizit überspringen
 | 
			
		||||
            if [[ "$FILE" == "ct/create_lxc.sh" ]]; then
 | 
			
		||||
              continue
 | 
			
		||||
            fi
 | 
			
		||||
            BASENAME=$(echo "$(basename "${FILE%.*}")")
 | 
			
		||||
            if [[ ! "$BASENAME" =~ ^[a-z0-9-]+$ ]]; then
 | 
			
		||||
                    NON_COMPLIANT_FILES="$NON_COMPLIANT_FILES $FILE"
 | 
			
		||||
              NON_COMPLIANT_FILES="$NON_COMPLIANT_FILES $FILE"
 | 
			
		||||
            fi
 | 
			
		||||
          done
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										5
									
								
								.vscode/settings.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								.vscode/settings.json
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
			
		||||
{
 | 
			
		||||
    "files.associations": {
 | 
			
		||||
        "*.func": "shellscript"
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										413
									
								
								CHANGELOG.md
									
									
									
									
									
								
							
							
						
						
									
										413
									
								
								CHANGELOG.md
									
									
									
									
									
								
							@@ -16,6 +16,419 @@ 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
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
## 2025-02-05
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- New Script: Zerotier Controller [@tremor021](https://github.com/tremor021) ([#1928](https://github.com/community-scripts/ProxmoxVE/pull/1928))
 | 
			
		||||
- New Script: Radicale [@tremor021](https://github.com/tremor021) ([#1941](https://github.com/community-scripts/ProxmoxVE/pull/1941))
 | 
			
		||||
- New Script: seelf [@tremor021](https://github.com/tremor021) ([#2023](https://github.com/community-scripts/ProxmoxVE/pull/2023))
 | 
			
		||||
- New Script: Crafty-Controller [@CrazyWolf13](https://github.com/CrazyWolf13) ([#1926](https://github.com/community-scripts/ProxmoxVE/pull/1926))
 | 
			
		||||
- New script: Koillection [@bvdberg01](https://github.com/bvdberg01) ([#2031](https://github.com/community-scripts/ProxmoxVE/pull/2031))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Bugfix: Jellyseerr pnpm Version [@vidonnus](https://github.com/vidonnus) ([#2033](https://github.com/community-scripts/ProxmoxVE/pull/2033))
 | 
			
		||||
- Radicale: Fixed missing htpasswd flag [@tremor021](https://github.com/tremor021) ([#2065](https://github.com/community-scripts/ProxmoxVE/pull/2065))
 | 
			
		||||
- [API] Update build.func / Improve error messages #2 [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#2050](https://github.com/community-scripts/ProxmoxVE/pull/2050))
 | 
			
		||||
- [API] Update create-lxc.sh / Improve error messages #1 [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#2049](https://github.com/community-scripts/ProxmoxVE/pull/2049))
 | 
			
		||||
- Feature: Element Synapse: add option to enter server name during LXC installation [@tremor021](https://github.com/tremor021) ([#2038](https://github.com/community-scripts/ProxmoxVE/pull/2038))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Paperless NGX: Mark it as updateable [@andygrunwald](https://github.com/andygrunwald) ([#2070](https://github.com/community-scripts/ProxmoxVE/pull/2070))
 | 
			
		||||
- Bump vitest from 2.1.6 to 2.1.9 in /frontend [@dependabot[bot]](https://github.com/dependabot[bot]) ([#2042](https://github.com/community-scripts/ProxmoxVE/pull/2042))
 | 
			
		||||
 | 
			
		||||
### 🧰 Maintenance
 | 
			
		||||
 | 
			
		||||
- [API] Add API backend code [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#2040](https://github.com/community-scripts/ProxmoxVE/pull/2040))
 | 
			
		||||
- Update auto-update-app-headers.yml: Enable auto approval [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#2057](https://github.com/community-scripts/ProxmoxVE/pull/2057))
 | 
			
		||||
 | 
			
		||||
## 2025-02-04
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 💥 Breaking Changes
 | 
			
		||||
 | 
			
		||||
- Rename & Optimize: Proxmox Backup Server (Renaming & Update fix) [@thost96](https://github.com/thost96) ([#2012](https://github.com/community-scripts/ProxmoxVE/pull/2012))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Fix: Authentik - Remove deprecated GO-Remove in Footer [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#2020](https://github.com/community-scripts/ProxmoxVE/pull/2020))
 | 
			
		||||
- Fix: Authentik Fix wrong HDD Size [@thost96](https://github.com/thost96) ([#2001](https://github.com/community-scripts/ProxmoxVE/pull/2001))
 | 
			
		||||
- Fix: Tandoor - node Version [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#2010](https://github.com/community-scripts/ProxmoxVE/pull/2010))
 | 
			
		||||
- Fix actual update - missing hidden files, downloaded release cleanup [@maciejmatczak](https://github.com/maciejmatczak) ([#2027](https://github.com/community-scripts/ProxmoxVE/pull/2027))
 | 
			
		||||
- Fix Script: post-pmg-install.sh [@thost96](https://github.com/thost96) ([#2022](https://github.com/community-scripts/ProxmoxVE/pull/2022))
 | 
			
		||||
- Fix Tianji: Add heap-space value for nodejs [@MickLesk](https://github.com/MickLesk) ([#2011](https://github.com/community-scripts/ProxmoxVE/pull/2011))
 | 
			
		||||
- Fix: Ghost LXC - Use Node20 [@MickLesk](https://github.com/MickLesk) ([#2006](https://github.com/community-scripts/ProxmoxVE/pull/2006))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- [API] Massive update to api (remove many, optimize website for users) [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1990](https://github.com/community-scripts/ProxmoxVE/pull/1990))
 | 
			
		||||
 | 
			
		||||
### 🧰 Maintenance
 | 
			
		||||
 | 
			
		||||
- Fix header comments on contributor templates [@tremor021](https://github.com/tremor021) ([#2029](https://github.com/community-scripts/ProxmoxVE/pull/2029))
 | 
			
		||||
- [Fix]: Headername of Proxmox-Datacenter-Manager not in CamelCase [@MickLesk](https://github.com/MickLesk) ([#2017](https://github.com/community-scripts/ProxmoxVE/pull/2017))
 | 
			
		||||
- [Fix] Header breaks at long title - add width for figlet github action [@MickLesk](https://github.com/MickLesk) ([#2015](https://github.com/community-scripts/ProxmoxVE/pull/2015))
 | 
			
		||||
 | 
			
		||||
## 2025-02-03
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- New Script: Element Synapse [@tremor021](https://github.com/tremor021) ([#1955](https://github.com/community-scripts/ProxmoxVE/pull/1955))
 | 
			
		||||
- New Script: Privatebin [@opastorello](https://github.com/opastorello) ([#1925](https://github.com/community-scripts/ProxmoxVE/pull/1925))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Fix: Monica Install with nodejs [@MickLesk](https://github.com/MickLesk) ([#1996](https://github.com/community-scripts/ProxmoxVE/pull/1996))
 | 
			
		||||
- Element Synapse sed fix [@tremor021](https://github.com/tremor021) ([#1994](https://github.com/community-scripts/ProxmoxVE/pull/1994))
 | 
			
		||||
- Fix Hoarder corepack install/update error [@vhsdream](https://github.com/vhsdream) ([#1957](https://github.com/community-scripts/ProxmoxVE/pull/1957))
 | 
			
		||||
- [Security & Maintenance] Update NodeJS Repo to 22 for new Installs [@MickLesk](https://github.com/MickLesk) ([#1984](https://github.com/community-scripts/ProxmoxVE/pull/1984))
 | 
			
		||||
- [Standardization]: Same Setup for GoLang on all LXC's & Clear Tarball [@MickLesk](https://github.com/MickLesk) ([#1977](https://github.com/community-scripts/ProxmoxVE/pull/1977))
 | 
			
		||||
- Feature: urbackupserver Include fuse&nesting features during install [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1968](https://github.com/community-scripts/ProxmoxVE/pull/1968))
 | 
			
		||||
- Fix: MSSQL-Server: Better gpg handling [@MickLesk](https://github.com/MickLesk) ([#1962](https://github.com/community-scripts/ProxmoxVE/pull/1962))
 | 
			
		||||
- Fix: Grist ran into a heap space during the update [@MickLesk](https://github.com/MickLesk) ([#1964](https://github.com/community-scripts/ProxmoxVE/pull/1964))
 | 
			
		||||
- Fix: FS-Trim Cancel / Error-Button [@MickLesk](https://github.com/MickLesk) ([#1965](https://github.com/community-scripts/ProxmoxVE/pull/1965))
 | 
			
		||||
- Fix: Increase HDD Space for Hoarder [@MickLesk](https://github.com/MickLesk) ([#1970](https://github.com/community-scripts/ProxmoxVE/pull/1970))
 | 
			
		||||
- Feature: Clean Orphan LVM without CEPH [@MickLesk](https://github.com/MickLesk) ([#1974](https://github.com/community-scripts/ProxmoxVE/pull/1974))
 | 
			
		||||
- [Standardization] Fix Spelling for "Setup Python3"  [@MickLesk](https://github.com/MickLesk) ([#1975](https://github.com/community-scripts/ProxmoxVE/pull/1975))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- [Website] update data/page.tsx [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1969](https://github.com/community-scripts/ProxmoxVE/pull/1969))
 | 
			
		||||
- Prometheus Proxmox VE Exporter: Set correct website slug [@andygrunwald](https://github.com/andygrunwald) ([#1961](https://github.com/community-scripts/ProxmoxVE/pull/1961))
 | 
			
		||||
 | 
			
		||||
### 🧰 Maintenance
 | 
			
		||||
 | 
			
		||||
- [API] Remove Hostname, Verbose, SSH and TAGS [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1967](https://github.com/community-scripts/ProxmoxVE/pull/1967))
 | 
			
		||||
 | 
			
		||||
## 2025-02-02
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Prometheus PVE Exporter: Add `--default-timeout=300` to pip install commands [@andygrunwald](https://github.com/andygrunwald) ([#1950](https://github.com/community-scripts/ProxmoxVE/pull/1950))
 | 
			
		||||
- fix z2m update function to 2.1.0 [@MickLesk](https://github.com/MickLesk) ([#1938](https://github.com/community-scripts/ProxmoxVE/pull/1938))
 | 
			
		||||
 | 
			
		||||
### 🧰 Maintenance
 | 
			
		||||
 | 
			
		||||
- VSCode: Add Shellscript Syntax highlighting for *.func files [@andygrunwald](https://github.com/andygrunwald) ([#1948](https://github.com/community-scripts/ProxmoxVE/pull/1948))
 | 
			
		||||
 | 
			
		||||
## 2025-02-01
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 💥 Breaking Changes
 | 
			
		||||
 | 
			
		||||
- [DCMA] Delete scripts 5etools and pf2etools - Copyright abuse [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1922](https://github.com/community-scripts/ProxmoxVE/pull/1922))
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- New script: Baïkal [@bvdberg01](https://github.com/bvdberg01) ([#1913](https://github.com/community-scripts/ProxmoxVE/pull/1913))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Bug fix: Paymenter [@opastorello](https://github.com/opastorello) ([#1917](https://github.com/community-scripts/ProxmoxVE/pull/1917))
 | 
			
		||||
 | 
			
		||||
## 2025-01-31
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- New Script: Paymenter [@opastorello](https://github.com/opastorello) ([#1827](https://github.com/community-scripts/ProxmoxVE/pull/1827))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- [Fix] Alpine-IT-Tools, add missing ssh package for root ssh access [@CrazyWolf13](https://github.com/CrazyWolf13) ([#1891](https://github.com/community-scripts/ProxmoxVE/pull/1891))
 | 
			
		||||
- [Fix] Change Download of Trilium after there change the tag/release logic [@MickLesk](https://github.com/MickLesk) ([#1892](https://github.com/community-scripts/ProxmoxVE/pull/1892))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- [Website] Enhance DataFetcher with better UI components and add reactive data fetching intervals [@BramSuurdje](https://github.com/BramSuurdje) ([#1902](https://github.com/community-scripts/ProxmoxVE/pull/1902))
 | 
			
		||||
- [Website] Update /data/page.tsx [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1900](https://github.com/community-scripts/ProxmoxVE/pull/1900))
 | 
			
		||||
 | 
			
		||||
## 2025-01-30
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- New Script: IT-Tools [@nicedevil007](https://github.com/nicedevil007) ([#1862](https://github.com/community-scripts/ProxmoxVE/pull/1862))
 | 
			
		||||
- New Script: Mattermost [@Dracentis](https://github.com/Dracentis) ([#1856](https://github.com/community-scripts/ProxmoxVE/pull/1856))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Optimize PVE Manager Version-Check [@MickLesk](https://github.com/MickLesk) ([#1866](https://github.com/community-scripts/ProxmoxVE/pull/1866))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- [API] Update build.func to set the status message correct [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1878](https://github.com/community-scripts/ProxmoxVE/pull/1878))
 | 
			
		||||
- [Website] Update /data/page.tsx [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1876](https://github.com/community-scripts/ProxmoxVE/pull/1876))
 | 
			
		||||
- Fix IT-Tools Website Entry (Default | Alpine)  [@MickLesk](https://github.com/MickLesk) ([#1869](https://github.com/community-scripts/ProxmoxVE/pull/1869))
 | 
			
		||||
- fix: remove rounded styles from command primitive [@steveiliop56](https://github.com/steveiliop56) ([#1840](https://github.com/community-scripts/ProxmoxVE/pull/1840))
 | 
			
		||||
 | 
			
		||||
### 🧰 Maintenance
 | 
			
		||||
 | 
			
		||||
- [API] Update build.func: add function to see if a script failed or not [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1874](https://github.com/community-scripts/ProxmoxVE/pull/1874))
 | 
			
		||||
 | 
			
		||||
## 2025-01-29
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- New Script: Prometheus Proxmox VE Exporter [@andygrunwald](https://github.com/andygrunwald) ([#1805](https://github.com/community-scripts/ProxmoxVE/pull/1805))
 | 
			
		||||
- New Script: Clean Orphaned LVM [@MickLesk](https://github.com/MickLesk) ([#1838](https://github.com/community-scripts/ProxmoxVE/pull/1838))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Patch http Url to https in build.func and /data/page.tsx [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1849](https://github.com/community-scripts/ProxmoxVE/pull/1849))
 | 
			
		||||
- [Frontend] Add /data to show API results [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1841](https://github.com/community-scripts/ProxmoxVE/pull/1841))
 | 
			
		||||
- Update clean-orphaned-lvm.json [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1843](https://github.com/community-scripts/ProxmoxVE/pull/1843))
 | 
			
		||||
 | 
			
		||||
### 🧰 Maintenance
 | 
			
		||||
 | 
			
		||||
- Update build.func [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1851](https://github.com/community-scripts/ProxmoxVE/pull/1851))
 | 
			
		||||
- [Diagnostic] Introduced optional lxc install diagnostics via API call [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1801](https://github.com/community-scripts/ProxmoxVE/pull/1801))
 | 
			
		||||
 | 
			
		||||
## 2025-01-28
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 💥 Breaking Changes
 | 
			
		||||
 | 
			
		||||
- Breaking Change: Homarr v1 (Read Guide) [@MickLesk](https://github.com/MickLesk) ([#1825](https://github.com/community-scripts/ProxmoxVE/pull/1825))
 | 
			
		||||
- Update PingVin: Fix problem with update und switch to new method of getting files. [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1819](https://github.com/community-scripts/ProxmoxVE/pull/1819))
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- New script: Monica LXC [@bvdberg01](https://github.com/bvdberg01) ([#1813](https://github.com/community-scripts/ProxmoxVE/pull/1813))
 | 
			
		||||
- New Script: NodeBB [@MickLesk](https://github.com/MickLesk) ([#1811](https://github.com/community-scripts/ProxmoxVE/pull/1811))
 | 
			
		||||
- New Script: Pocket ID [@Snarkenfaugister](https://github.com/Snarkenfaugister) ([#1779](https://github.com/community-scripts/ProxmoxVE/pull/1779))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Update all Alpine LXC's to 3.21 (Docker, Grafana, Nextcloud, Vaultwarden, Zigbee2Mqtt, Alpine) [@MickLesk](https://github.com/MickLesk) ([#1803](https://github.com/community-scripts/ProxmoxVE/pull/1803))
 | 
			
		||||
- [Standardization] Fix Spelling for "Setup Python3" [@MickLesk](https://github.com/MickLesk) ([#1810](https://github.com/community-scripts/ProxmoxVE/pull/1810))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Filter out duplicate scripts in LatestScripts component and sort by creation date [@BramSuurdje](https://github.com/BramSuurdje) ([#1828](https://github.com/community-scripts/ProxmoxVE/pull/1828))
 | 
			
		||||
 | 
			
		||||
### 🧰 Maintenance
 | 
			
		||||
 | 
			
		||||
- [core]: Remove Figlet | Get Headers by Repo & Store Local [@MickLesk](https://github.com/MickLesk) ([#1802](https://github.com/community-scripts/ProxmoxVE/pull/1802))
 | 
			
		||||
- [docs] Update AppName.md: Make it clear where to change the URLs [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1809](https://github.com/community-scripts/ProxmoxVE/pull/1809))
 | 
			
		||||
 | 
			
		||||
## 2025-01-27
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- New Script: Arch Linux VM [@MickLesk](https://github.com/MickLesk) ([#1780](https://github.com/community-scripts/ProxmoxVE/pull/1780))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Increase alpine-vaultwarden default var_disk size [@nayzm](https://github.com/nayzm) ([#1788](https://github.com/community-scripts/ProxmoxVE/pull/1788))
 | 
			
		||||
- Added change of the mobile GUI to disable nag request [@GarryG](https://github.com/GarryG) ([#1785](https://github.com/community-scripts/ProxmoxVE/pull/1785))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Update frontend alpine-vaultwarden hdd size and OS version [@nayzm](https://github.com/nayzm) ([#1789](https://github.com/community-scripts/ProxmoxVE/pull/1789))
 | 
			
		||||
- Website: Add Description for Metadata Categories [@MickLesk](https://github.com/MickLesk) ([#1783](https://github.com/community-scripts/ProxmoxVE/pull/1783))
 | 
			
		||||
- [Fix] Double "VM" on website (Arch Linux) [@lasharor](https://github.com/lasharor) ([#1782](https://github.com/community-scripts/ProxmoxVE/pull/1782))
 | 
			
		||||
 | 
			
		||||
## 2025-01-26
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Fix jellyfin update command [@jcisio](https://github.com/jcisio) ([#1771](https://github.com/community-scripts/ProxmoxVE/pull/1771))
 | 
			
		||||
- openHAB - Use https and include doc url [@moodyblue](https://github.com/moodyblue) ([#1766](https://github.com/community-scripts/ProxmoxVE/pull/1766))
 | 
			
		||||
- Jellyfin: Fix default logging level [@tremor021](https://github.com/tremor021) ([#1768](https://github.com/community-scripts/ProxmoxVE/pull/1768))
 | 
			
		||||
- Calibre-Web: added installation of calibre binaries [@tremor021](https://github.com/tremor021) ([#1763](https://github.com/community-scripts/ProxmoxVE/pull/1763))
 | 
			
		||||
- Added environment variable to accept EULA for SQLServer2022 [@tremor021](https://github.com/tremor021) ([#1755](https://github.com/community-scripts/ProxmoxVE/pull/1755))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- The Lounge: Fix the command to create new users [@tremor021](https://github.com/tremor021) ([#1762](https://github.com/community-scripts/ProxmoxVE/pull/1762))
 | 
			
		||||
 | 
			
		||||
## 2025-01-24
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- New Script: Ubuntu 24.10 VM [@MickLesk](https://github.com/MickLesk) ([#1711](https://github.com/community-scripts/ProxmoxVE/pull/1711))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- openHAB - Update to Zulu21 [@moodyblue](https://github.com/moodyblue) ([#1734](https://github.com/community-scripts/ProxmoxVE/pull/1734))
 | 
			
		||||
- Feature: Filebrowser Script > Redesign | Update Logic | Remove Logic [@MickLesk](https://github.com/MickLesk) ([#1716](https://github.com/community-scripts/ProxmoxVE/pull/1716))
 | 
			
		||||
- Feature: Ubuntu 22.04 VM > Redesign | Optional HDD-Size Prompt [@MickLesk](https://github.com/MickLesk) ([#1712](https://github.com/community-scripts/ProxmoxVE/pull/1712))
 | 
			
		||||
- Feature: Ubuntu 24.04 VM > Redesign | Optional HDD-Size Prompt | cifs support [@MickLesk](https://github.com/MickLesk) ([#1714](https://github.com/community-scripts/ProxmoxVE/pull/1714))
 | 
			
		||||
 | 
			
		||||
### 🧰 Maintenance
 | 
			
		||||
 | 
			
		||||
- [Core] Better Creation of App Headers for next feature [@MickLesk](https://github.com/MickLesk) ([#1719](https://github.com/community-scripts/ProxmoxVE/pull/1719))
 | 
			
		||||
 | 
			
		||||
## 2025-01-23
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Feature: Add Debian Disk Size / Redesign / Increase Disk [@MickLesk](https://github.com/MickLesk) ([#1695](https://github.com/community-scripts/ProxmoxVE/pull/1695))
 | 
			
		||||
- Fix: Paperless Service Timings & Optimization: Ghostscript Installation [@MickLesk](https://github.com/MickLesk) ([#1688](https://github.com/community-scripts/ProxmoxVE/pull/1688))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Refactor ScriptInfoBlocks and siteConfig to properly show the most populair scripts [@BramSuurdje](https://github.com/BramSuurdje) ([#1697](https://github.com/community-scripts/ProxmoxVE/pull/1697))
 | 
			
		||||
 | 
			
		||||
### 🧰 Maintenance
 | 
			
		||||
 | 
			
		||||
- Update build.func: Ubuntu advanced settings version [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1701](https://github.com/community-scripts/ProxmoxVE/pull/1701))
 | 
			
		||||
 | 
			
		||||
## 2025-01-22
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Tweak: LubeLogger Script Upcoming Changes 1.4.3 [@JcMinarro](https://github.com/JcMinarro) ([#1656](https://github.com/community-scripts/ProxmoxVE/pull/1656))
 | 
			
		||||
- Fix: SQL Server 2022 Install [@MickLesk](https://github.com/MickLesk) ([#1669](https://github.com/community-scripts/ProxmoxVE/pull/1669))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Refactor Sidebar component to display unique scripts count [@BramSuurdje](https://github.com/BramSuurdje) ([#1681](https://github.com/community-scripts/ProxmoxVE/pull/1681))
 | 
			
		||||
- Refactor various components and configuration for mobile responsiveness. [@BramSuurdje](https://github.com/BramSuurdje) ([#1679](https://github.com/community-scripts/ProxmoxVE/pull/1679))
 | 
			
		||||
- Add Docker-VM to Containers & Docker Category [@thost96](https://github.com/thost96) ([#1667](https://github.com/community-scripts/ProxmoxVE/pull/1667))
 | 
			
		||||
- Moving SQL Server 2022 to database category [@CamronBorealis](https://github.com/CamronBorealis) ([#1659](https://github.com/community-scripts/ProxmoxVE/pull/1659))
 | 
			
		||||
 | 
			
		||||
## 2025-01-21
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- Add new Script: LXC Delete (Proxmox) [@MickLesk](https://github.com/MickLesk) ([#1636](https://github.com/community-scripts/ProxmoxVE/pull/1636))
 | 
			
		||||
- New script: ProjectSend [@bvdberg01](https://github.com/bvdberg01) ([#1616](https://github.com/community-scripts/ProxmoxVE/pull/1616))
 | 
			
		||||
- New Script: Beszel [@Sinofage](https://github.com/Sinofage) ([#1619](https://github.com/community-scripts/ProxmoxVE/pull/1619))
 | 
			
		||||
- New Script: Docker VM [@thost96](https://github.com/thost96) ([#1608](https://github.com/community-scripts/ProxmoxVE/pull/1608))
 | 
			
		||||
- New script: SQL Server 2022 [@kris701](https://github.com/kris701) ([#1482](https://github.com/community-scripts/ProxmoxVE/pull/1482))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Fix: Teddycloud Script (install, clean up & update) [@MickLesk](https://github.com/MickLesk) ([#1652](https://github.com/community-scripts/ProxmoxVE/pull/1652))
 | 
			
		||||
- Fix: Docker VM deprecated gpg [@MickLesk](https://github.com/MickLesk) ([#1649](https://github.com/community-scripts/ProxmoxVE/pull/1649))
 | 
			
		||||
- ActualBudget: Fix Update-Function, Fix Wget Crawling, Add Versionscheck [@MickLesk](https://github.com/MickLesk) ([#1643](https://github.com/community-scripts/ProxmoxVE/pull/1643))
 | 
			
		||||
- Fix Photoprism missing folder & environments  [@MickLesk](https://github.com/MickLesk) ([#1639](https://github.com/community-scripts/ProxmoxVE/pull/1639))
 | 
			
		||||
- Update MOTD: Add Dynamic IP with profile.d by @JcMinarro [@MickLesk](https://github.com/MickLesk) ([#1633](https://github.com/community-scripts/ProxmoxVE/pull/1633))
 | 
			
		||||
- PBS.sh: Fix wrong URL after Setup [@thost96](https://github.com/thost96) ([#1629](https://github.com/community-scripts/ProxmoxVE/pull/1629))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Bump vite from 6.0.1 to 6.0.11 in /frontend [@dependabot[bot]](https://github.com/dependabot[bot]) ([#1653](https://github.com/community-scripts/ProxmoxVE/pull/1653))
 | 
			
		||||
- Update glpi.json [@opastorello](https://github.com/opastorello) ([#1641](https://github.com/community-scripts/ProxmoxVE/pull/1641))
 | 
			
		||||
- Fix Docker-VM name on website [@Sinofage](https://github.com/Sinofage) ([#1630](https://github.com/community-scripts/ProxmoxVE/pull/1630))
 | 
			
		||||
 | 
			
		||||
## 2025-01-20
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- New Script: UrBackup Server [@kris701](https://github.com/kris701) ([#1569](https://github.com/community-scripts/ProxmoxVE/pull/1569))
 | 
			
		||||
- New Script: Proxmox Mail Gateway Post Installer [@thost96](https://github.com/thost96) ([#1559](https://github.com/community-scripts/ProxmoxVE/pull/1559))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Update Kimai Dependency: Use PHP 8.3 [@MickLesk](https://github.com/MickLesk) ([#1609](https://github.com/community-scripts/ProxmoxVE/pull/1609))
 | 
			
		||||
- Feature: Add xCaddy for external Modules on Caddy-LXC [@MickLesk](https://github.com/MickLesk) ([#1613](https://github.com/community-scripts/ProxmoxVE/pull/1613))
 | 
			
		||||
- Fix Pocketbase URL after install [@MickLesk](https://github.com/MickLesk) ([#1597](https://github.com/community-scripts/ProxmoxVE/pull/1597))
 | 
			
		||||
- Unifi.sh fix wrong URL after Install [@thost96](https://github.com/thost96) ([#1601](https://github.com/community-scripts/ProxmoxVE/pull/1601))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Update Website | Add new Categories [@MickLesk](https://github.com/MickLesk) ([#1606](https://github.com/community-scripts/ProxmoxVE/pull/1606))
 | 
			
		||||
- Grafana: Mark container as updateable [@andygrunwald](https://github.com/andygrunwald) ([#1603](https://github.com/community-scripts/ProxmoxVE/pull/1603))
 | 
			
		||||
 | 
			
		||||
### 🧰 Maintenance
 | 
			
		||||
 | 
			
		||||
- [core] Update build.func: Add defaults to Advanced mode [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1548](https://github.com/community-scripts/ProxmoxVE/pull/1548))
 | 
			
		||||
- Update build.func: Fix Advanced Tags (Remove all if empty / overwrite if default cleared) [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1612](https://github.com/community-scripts/ProxmoxVE/pull/1612))
 | 
			
		||||
- Add new Check for LXC MaxKeys by @cricalix [@MickLesk](https://github.com/MickLesk) ([#1602](https://github.com/community-scripts/ProxmoxVE/pull/1602))
 | 
			
		||||
 | 
			
		||||
## 2025-01-19
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Update Opengist.sh: Fix broken backup function [@bvdberg01](https://github.com/bvdberg01) ([#1572](https://github.com/community-scripts/ProxmoxVE/pull/1572))
 | 
			
		||||
 | 
			
		||||
## 2025-01-18
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 💥 Breaking Changes
 | 
			
		||||
 | 
			
		||||
- **READ GUIDE FIRST** breaking change: Homeassistant-Core upgrade os and python3 [@MickLesk](https://github.com/MickLesk) ([#1550](https://github.com/community-scripts/ProxmoxVE/pull/1550))
 | 
			
		||||
- Update Openwrt: Delete lines that do WAN input and forward accept [@chackl1990](https://github.com/chackl1990) ([#1540](https://github.com/community-scripts/ProxmoxVE/pull/1540))
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- added cifs support in ubuntu2404-vm.sh [@plonxyz](https://github.com/plonxyz) ([#1461](https://github.com/community-scripts/ProxmoxVE/pull/1461))
 | 
			
		||||
- Fix linkwarden update [@burgerga](https://github.com/burgerga) ([#1565](https://github.com/community-scripts/ProxmoxVE/pull/1565))
 | 
			
		||||
- [jellyseerr] Update nodejs if not up-to-date [@makstech](https://github.com/makstech) ([#1563](https://github.com/community-scripts/ProxmoxVE/pull/1563))
 | 
			
		||||
- Update VM Tags [@oOStroudyOo](https://github.com/oOStroudyOo) ([#1562](https://github.com/community-scripts/ProxmoxVE/pull/1562))
 | 
			
		||||
- Update apt-cacher-ng.sh: Typo/Missing $ [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1545](https://github.com/community-scripts/ProxmoxVE/pull/1545))
 | 
			
		||||
 | 
			
		||||
## 2025-01-16
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 💥 Breaking Changes
 | 
			
		||||
 | 
			
		||||
- Update jellyseerr-install.sh to use Node 22 as required by latest Jellyseerr version [@pedrovieira](https://github.com/pedrovieira) ([#1535](https://github.com/community-scripts/ProxmoxVE/pull/1535))
 | 
			
		||||
 | 
			
		||||
### ✨ New Scripts
 | 
			
		||||
 | 
			
		||||
- New script: Dotnet ASP.NET Web Server [@kris701](https://github.com/kris701) ([#1501](https://github.com/community-scripts/ProxmoxVE/pull/1501))
 | 
			
		||||
- New script: phpIPAM [@bvdberg01](https://github.com/bvdberg01) ([#1503](https://github.com/community-scripts/ProxmoxVE/pull/1503))
 | 
			
		||||
 | 
			
		||||
### 🌐 Website
 | 
			
		||||
 | 
			
		||||
- Add Mobile check for empty icon-url on website [@MickLesk](https://github.com/MickLesk) ([#1532](https://github.com/community-scripts/ProxmoxVE/pull/1532))
 | 
			
		||||
 | 
			
		||||
### 🧰 Maintenance
 | 
			
		||||
 | 
			
		||||
- [Workflow]Update autolabeler-config.json [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1525](https://github.com/community-scripts/ProxmoxVE/pull/1525))
 | 
			
		||||
- [core]Update update_json_date.yml [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1526](https://github.com/community-scripts/ProxmoxVE/pull/1526))
 | 
			
		||||
- [core] Recreate Update JSON Workflow [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1523](https://github.com/community-scripts/ProxmoxVE/pull/1523))
 | 
			
		||||
 | 
			
		||||
## 2025-01-15
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 | 
			
		||||
### 🚀 Updated Scripts
 | 
			
		||||
 | 
			
		||||
- Fix: Add FFMPEG for OpenWebUI [@MickLesk](https://github.com/MickLesk) ([#1497](https://github.com/community-scripts/ProxmoxVE/pull/1497))
 | 
			
		||||
 | 
			
		||||
### 🧰 Maintenance
 | 
			
		||||
 | 
			
		||||
- [core] build.func&install.func: Fix ssh keynot added error [@dsiebel](https://github.com/dsiebel) ([#1502](https://github.com/community-scripts/ProxmoxVE/pull/1502))
 | 
			
		||||
 | 
			
		||||
## 2025-01-14
 | 
			
		||||
 | 
			
		||||
### Changed
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										162
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										162
									
								
								README.md
									
									
									
									
									
								
							@@ -7,106 +7,98 @@
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
<div style="border: 2px solid #d1d5db; padding: 20px; border-radius: 8px; background-color: #f9fafb;">
 | 
			
		||||
  <h2 align="center">Proxmox VE Helper-Scripts: A Community Legacy</h2>
 | 
			
		||||
  <p>Dear Community,</p>
 | 
			
		||||
  <p>In agreement with <a href="https://github.com/tteck">tteck</a> and <a href="https://github.com/community-scripts">Community-Scripts</a>, this project has now transitioned into a community-driven effort. We aim to continue his work, building on the foundation he laid to support Proxmox users worldwide. Tteck sadly <a href="https://github.com/community-scripts/ProxmoxVE/discussions/237">passed away in early November 2024</a>. This project will be a memorial for his incredible contribution to the community.</p>
 | 
			
		||||
 | 
			
		||||
<p align="center">
 | 
			
		||||
  <a href="https://helper-scripts.com">
 | 
			
		||||
    <img src="https://img.shields.io/badge/Website-4c9b3f?style=for-the-badge&logo=github&logoColor=white" alt="Website" />
 | 
			
		||||
  </a> 
 | 
			
		||||
  <a href="https://github.com/community-scripts/ProxmoxVE/blob/main/.github/CONTRIBUTING.md">
 | 
			
		||||
    <img src="https://img.shields.io/badge/Contribute-ff4785?style=for-the-badge&logo=git&logoColor=white" alt="Contribute" />
 | 
			
		||||
  </a> 
 | 
			
		||||
  <a href="https://github.com/community-scripts/ProxmoxVE/blob/main/USER_SUBMITTED_GUIDES.md">
 | 
			
		||||
    <img src="https://img.shields.io/badge/Guides-0077b5?style=for-the-badge&logo=read-the-docs&logoColor=white" alt="Guides" />
 | 
			
		||||
  </a> 
 | 
			
		||||
  <a href="https://discord.gg/UHrpNWGwkH">
 | 
			
		||||
    <img src="https://img.shields.io/badge/Discord-7289da?style=for-the-badge&logo=discord&logoColor=white" alt="Discord" />
 | 
			
		||||
  </a> 
 | 
			
		||||
  <a href="https://github.com/community-scripts/ProxmoxVE/blob/main/CHANGELOG.md">
 | 
			
		||||
    <img src="https://img.shields.io/badge/Changelog-6c5ce7?style=for-the-badge&logo=git&logoColor=white" alt="Changelog" />
 | 
			
		||||
  </a>
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
<hr>
 | 
			
		||||
 | 
			
		||||
## 🚀  Introduction
 | 
			
		||||
 | 
			
		||||
**Proxmox VE Helper-Scripts** is a community-driven initiative that simplifies the setup of Proxmox Virtual Environment (VE). Originally created by [tteck](https://github.com/tteck), these scripts automate and streamline the process of creating and configuring Linux containers (LXC) and virtual machines (VMs) on Proxmox VE.
 | 
			
		||||
  <h2 align="center">Proxmox VE Helper-Scripts</h2>
 | 
			
		||||
  <p align="center">A Community Legacy in Memory of @tteck</p>
 | 
			
		||||
  <p align="center">
 | 
			
		||||
    <a href="https://helper-scripts.com">
 | 
			
		||||
      <img src="https://img.shields.io/badge/Website-4c9b3f?style=for-the-badge&logo=github&logoColor=white" alt="Website" />
 | 
			
		||||
    </a>
 | 
			
		||||
    <a href="https://discord.gg/UHrpNWGwkH">
 | 
			
		||||
      <img src="https://img.shields.io/badge/Discord-7289da?style=for-the-badge&logo=discord&logoColor=white" alt="Discord" />
 | 
			
		||||
    </a> 
 | 
			
		||||
    <a href="https://ko-fi.com/community_scripts">
 | 
			
		||||
      <img src="https://img.shields.io/badge/Support-FF5F5F?style=for-the-badge&logo=ko-fi&logoColor=white" alt="Donate" />
 | 
			
		||||
    </a>
 | 
			
		||||
    <a href="https://github.com/community-scripts/ProxmoxVE/blob/main/.github/CONTRIBUTING.md">
 | 
			
		||||
      <img src="https://img.shields.io/badge/Contribute-ff4785?style=for-the-badge&logo=git&logoColor=white" alt="Contribute" />
 | 
			
		||||
    </a> 
 | 
			
		||||
    <a href="https://github.com/community-scripts/ProxmoxVE/blob/main/USER_SUBMITTED_GUIDES.md">
 | 
			
		||||
      <img src="https://img.shields.io/badge/Guides-0077b5?style=for-the-badge&logo=read-the-docs&logoColor=white" alt="Guides" />
 | 
			
		||||
    </a> 
 | 
			
		||||
    <a href="https://github.com/community-scripts/ProxmoxVE/blob/main/CHANGELOG.md">
 | 
			
		||||
      <img src="https://img.shields.io/badge/Changelog-6c5ce7?style=for-the-badge&logo=git&logoColor=white" alt="Changelog" />
 | 
			
		||||
    </a>
 | 
			
		||||
  </p>
 | 
			
		||||
</div>
 | 
			
		||||
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
## 📦  Features
 | 
			
		||||
## 🚀 Project Overview
 | 
			
		||||
 | 
			
		||||
- **Interactive Setup**: Select simple or advanced options for your VM or LXC container configurations.
 | 
			
		||||
- **Customizable Configuration**: Advanced setup allows you to fine-tune your environment.
 | 
			
		||||
- **Ease of Use**: Scripts automatically validate inputs to generate the final configuration.
 | 
			
		||||
- **Proxmox Integration**: Seamlessly integrates with Proxmox VE to provide a user-friendly experience.
 | 
			
		||||
- **Community-Driven**: This project is actively maintained and improved by the community.
 | 
			
		||||
 | 
			
		||||
<hr>
 | 
			
		||||
 | 
			
		||||
## 🚀  Installation
 | 
			
		||||
 | 
			
		||||
To install the Proxmox Helper Scripts, simply follow these steps:
 | 
			
		||||
 | 
			
		||||
1. Open the [Website](https://helper-scripts.com/)
 | 
			
		||||
2. Search for the desired script, e.g. **"Home Assistant OS VM"**.
 | 
			
		||||
3. In the **"How To Install"** section, copy the provided **Bash command**.
 | 
			
		||||
4. Open the Proxmox shell on your **main node**.
 | 
			
		||||
5. Paste the command into the console, hit enter, and you are away! 🚀
 | 
			
		||||
 | 
			
		||||
For detailed instructions, check out our [official guides](https://github.com/community-scripts/ProxmoxVE/blob/main/USER_SUBMITTED_GUIDES.md).
 | 
			
		||||
**Proxmox VE Helper-Scripts** is a collection of tools to simplify the setup and management of Proxmox Virtual Environment (VE). Originally created by [tteck](https://github.com/tteck), these scripts are now continued by the community. Our goal is to preserve and expand upon tteck's work, providing an ongoing resource for Proxmox users worldwide.
 | 
			
		||||
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
## ❤️  Community and Contributions
 | 
			
		||||
## 📦 Features
 | 
			
		||||
 | 
			
		||||
The Proxmox Helper Scripts project is community-driven, and we highly appreciate any contributions — whether it's through reporting bugs, suggesting features, improving documentation, or spreading the word. We are committed to maintaining transparency and sustainability in this open-source effort.
 | 
			
		||||
- **Interactive Setup**: Choose between simple and advanced options for configuring VMs and LXC containers.
 | 
			
		||||
- **Customizable Configurations**: Advanced setup for fine-tuning your environment.
 | 
			
		||||
- **Seamless Integration**: Works seamlessly with Proxmox VE for a smooth experience.
 | 
			
		||||
- **Community-driven**: Actively maintained and improved by the Proxmox community.
 | 
			
		||||
 | 
			
		||||
### 💖  Donate to Support the Project
 | 
			
		||||
---
 | 
			
		||||
## ✅ Requirements
 | 
			
		||||
 | 
			
		||||
We offer two donation options to help maintain and grow this project:
 | 
			
		||||
 | 
			
		||||
- **Ko-Fi for tteck**: [Donate to tteck's wife](https://ko-fi.com/proxmoxhelperscripts) - All donations will go directly to Angie, wife of the founder of this project [who passed away in early November 2024](https://github.com/community-scripts/ProxmoxVE/discussions/237).
 | 
			
		||||
- **Ko-Fi for Community Edition**: [Donate to this project](https://ko-fi.com/community_scripts) -  All funds will go towards script maintenance infrastructure and server costs. **Our most immediate need is funding testing infrastructure**.  Your contributions help keep the project running. To honor tteck's legacy this project will also raise money for charity (cancer research, hospice care). Of the money donated to this project, 30% will be donated to charity. Income, expenditure and charitable donations will be disclosed annually in a transparent manner. 
 | 
			
		||||
 | 
			
		||||
<hr>
 | 
			
		||||
 | 
			
		||||
## 💬  Get Help
 | 
			
		||||
 | 
			
		||||
Have a question or ran into an issue? Join the conversation and get help from fellow community members:
 | 
			
		||||
 | 
			
		||||
- **Discord**: Join our [Proxmox Helper Scripts Discord server](https://discord.gg/UHrpNWGwkH) to chat with other users and get support.
 | 
			
		||||
- **GitHub Discussions**: [Ask questions or report issues](https://github.com/community-scripts/ProxmoxVE/discussions).
 | 
			
		||||
 | 
			
		||||
<hr>
 | 
			
		||||
 | 
			
		||||
## 🤝  Found a bug or missing feature?
 | 
			
		||||
 | 
			
		||||
If you’ve encountered an issue or identified an area for improvement, please file a new issue on our [GitHub issues page](https://github.com/community-scripts/ProxmoxVE/issues). If you’ve already found a solution or improvement, feel free to submit a pull request! We’d love to review and merge your contributions.
 | 
			
		||||
 | 
			
		||||
<hr>
 | 
			
		||||
 | 
			
		||||
## ✅  Requirements
 | 
			
		||||
 | 
			
		||||
To use the Proxmox VE Helper-Scripts, your system should meet the following requirements:
 | 
			
		||||
Ensure your system meets the following prerequisites:
 | 
			
		||||
 | 
			
		||||
- **Proxmox VE version**: 8.x or higher
 | 
			
		||||
- **Linux**: Compatible with most distributions
 | 
			
		||||
- **Dependencies**: Ensure that your system has bash and curl installed.
 | 
			
		||||
 | 
			
		||||
<hr>
 | 
			
		||||
 | 
			
		||||
## 📜  License
 | 
			
		||||
 | 
			
		||||
This project is licensed under the terms of the [MIT License](LICENSE).
 | 
			
		||||
- **Dependencies**: bash and curl should be installed.
 | 
			
		||||
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
## 📢  Acknowledgments
 | 
			
		||||
## 🚀 Installation
 | 
			
		||||
 | 
			
		||||
To install the Proxmox Helper Scripts, follow these steps:
 | 
			
		||||
 | 
			
		||||
1. Visit the [Website](https://helper-scripts.com/).
 | 
			
		||||
2. Search for the desired script, e.g., **"Home Assistant OS VM"**.
 | 
			
		||||
3. Copy the provided **Bash command** from the **"How To Install"** section.
 | 
			
		||||
4. Open the Proxmox shell on your **main node** and paste the command.
 | 
			
		||||
5. Press enter to start the installation! 🚀
 | 
			
		||||
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
## ❤️ Community and Contributions
 | 
			
		||||
 | 
			
		||||
We appreciate any contributions to the project—whether it's bug reports, feature requests, documentation improvements, or spreading the word. Your involvement helps keep the project alive and sustainable.
 | 
			
		||||
 | 
			
		||||
## 💖 Donate to Support the Project
 | 
			
		||||
- **Ko-Fi for Community Edition**: [Donate to support this project](https://ko-fi.com/community_scripts) – Donations go towards maintaining the project, testing infrastructure, and charity (cancer research, hospice care). 30% of the funds will be donated to charity.
 | 
			
		||||
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
## 💬 Get Help
 | 
			
		||||
 | 
			
		||||
Join our community for support:
 | 
			
		||||
 | 
			
		||||
- **Discord**: Join our [Proxmox Helper Scripts Discord server](https://discord.gg/UHrpNWGwkH) for real-time support.
 | 
			
		||||
- **GitHub Discussions**: [Ask questions or report issues](https://github.com/community-scripts/ProxmoxVE/discussions).
 | 
			
		||||
 | 
			
		||||
## 🤝 Report a Bug or Feature Request
 | 
			
		||||
 | 
			
		||||
If you encounter any issues or have suggestions for improvement, file a new issue on our [GitHub issues page](https://github.com/community-scripts/ProxmoxVE/issues). You can also submit pull requests with solutions or enhancements!
 | 
			
		||||
 | 
			
		||||
---
 | 
			
		||||
 | 
			
		||||
## 📜 License
 | 
			
		||||
 | 
			
		||||
This project is licensed under the [MIT License](LICENSE).
 | 
			
		||||
 | 
			
		||||
</br>
 | 
			
		||||
</br>
 | 
			
		||||
<p align="center">
 | 
			
		||||
  <i style="font-size: smaller;"><b>Proxmox</b>® is a registered trademark of <a href="https://www.proxmox.com/en/about/company">Proxmox Server Solutions GmbH</a>.</i>
 | 
			
		||||
</p>
 | 
			
		||||
 | 
			
		||||
This community project is a memorial to the memory of [tteck](https://github.com/tteck). His foundational work created a thriving Proxmox community. Tteck worked on this project right until the end, even while in hospice. We are dedicated to keeping his vision alive and expanding upon it with the continued support of this vibrant community.
 | 
			
		||||
 | 
			
		||||
Proxmox® is a registered trademark of [Proxmox Server Solutions GmbH](https://www.proxmox.com/en/about/company).
 | 
			
		||||
							
								
								
									
										5
									
								
								api/.env.example
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								api/.env.example
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
			
		||||
MONGO_USER=
 | 
			
		||||
MONGO_PASSWORD=
 | 
			
		||||
MONGO_IP=
 | 
			
		||||
MONGO_PORT=
 | 
			
		||||
MONGO_DATABASE=
 | 
			
		||||
							
								
								
									
										32
									
								
								api/go.mod
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								api/go.mod
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,32 @@
 | 
			
		||||
module proxmox-api
 | 
			
		||||
 | 
			
		||||
go 1.23.2
 | 
			
		||||
 | 
			
		||||
require go.mongodb.org/mongo-driver v1.17.2
 | 
			
		||||
 | 
			
		||||
require (
 | 
			
		||||
	filippo.io/edwards25519 v1.1.0 // indirect
 | 
			
		||||
	github.com/go-sql-driver/mysql v1.8.1 // indirect
 | 
			
		||||
	github.com/golang/snappy v0.0.4 // indirect
 | 
			
		||||
	github.com/gorilla/mux v1.8.1 // indirect
 | 
			
		||||
	github.com/jackc/pgpassfile v1.0.0 // indirect
 | 
			
		||||
	github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761 // indirect
 | 
			
		||||
	github.com/jackc/pgx/v5 v5.7.2 // indirect
 | 
			
		||||
	github.com/jackc/puddle/v2 v2.2.2 // indirect
 | 
			
		||||
	github.com/jinzhu/inflection v1.0.0 // indirect
 | 
			
		||||
	github.com/jinzhu/now v1.1.5 // indirect
 | 
			
		||||
	github.com/joho/godotenv v1.5.1 // indirect
 | 
			
		||||
	github.com/klauspost/compress v1.16.7 // indirect
 | 
			
		||||
	github.com/montanaflynn/stats v0.7.1 // indirect
 | 
			
		||||
	github.com/rs/cors v1.11.1 // indirect
 | 
			
		||||
	github.com/xdg-go/pbkdf2 v1.0.0 // indirect
 | 
			
		||||
	github.com/xdg-go/scram v1.1.2 // indirect
 | 
			
		||||
	github.com/xdg-go/stringprep v1.0.4 // indirect
 | 
			
		||||
	github.com/youmark/pkcs8 v0.0.0-20240726163527-a2c0da244d78 // indirect
 | 
			
		||||
	golang.org/x/crypto v0.32.0 // indirect
 | 
			
		||||
	golang.org/x/sync v0.10.0 // indirect
 | 
			
		||||
	golang.org/x/text v0.21.0 // indirect
 | 
			
		||||
	gorm.io/driver/mysql v1.5.7 // indirect
 | 
			
		||||
	gorm.io/driver/postgres v1.5.11 // indirect
 | 
			
		||||
	gorm.io/gorm v1.25.12 // indirect
 | 
			
		||||
)
 | 
			
		||||
							
								
								
									
										83
									
								
								api/go.sum
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										83
									
								
								api/go.sum
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,83 @@
 | 
			
		||||
filippo.io/edwards25519 v1.1.0 h1:FNf4tywRC1HmFuKW5xopWpigGjJKiJSV0Cqo0cJWDaA=
 | 
			
		||||
filippo.io/edwards25519 v1.1.0/go.mod h1:BxyFTGdWcka3PhytdK4V28tE5sGfRvvvRV7EaN4VDT4=
 | 
			
		||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
 | 
			
		||||
github.com/go-sql-driver/mysql v1.7.0/go.mod h1:OXbVy3sEdcQ2Doequ6Z5BW6fXNQTmx+9S1MCJN5yJMI=
 | 
			
		||||
github.com/go-sql-driver/mysql v1.8.1 h1:LedoTUt/eveggdHS9qUFC1EFSa8bU2+1pZjSRpvNJ1Y=
 | 
			
		||||
github.com/go-sql-driver/mysql v1.8.1/go.mod h1:wEBSXgmK//2ZFJyE+qWnIsVGmvmEKlqwuVSjsCm7DZg=
 | 
			
		||||
github.com/golang/snappy v0.0.4 h1:yAGX7huGHXlcLOEtBnF4w7FQwA26wojNCwOYAEhLjQM=
 | 
			
		||||
github.com/golang/snappy v0.0.4/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
 | 
			
		||||
github.com/gorilla/mux v1.8.1 h1:TuBL49tXwgrFYWhqrNgrUNEY92u81SPhu7sTdzQEiWY=
 | 
			
		||||
github.com/gorilla/mux v1.8.1/go.mod h1:AKf9I4AEqPTmMytcMc0KkNouC66V3BtZ4qD5fmWSiMQ=
 | 
			
		||||
github.com/jackc/pgpassfile v1.0.0 h1:/6Hmqy13Ss2zCq62VdNG8tM1wchn8zjSGOBJ6icpsIM=
 | 
			
		||||
github.com/jackc/pgpassfile v1.0.0/go.mod h1:CEx0iS5ambNFdcRtxPj5JhEz+xB6uRky5eyVu/W2HEg=
 | 
			
		||||
github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761 h1:iCEnooe7UlwOQYpKFhBabPMi4aNAfoODPEFNiAnClxo=
 | 
			
		||||
github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761/go.mod h1:5TJZWKEWniPve33vlWYSoGYefn3gLQRzjfDlhSJ9ZKM=
 | 
			
		||||
github.com/jackc/pgx/v5 v5.7.2 h1:mLoDLV6sonKlvjIEsV56SkWNCnuNv531l94GaIzO+XI=
 | 
			
		||||
github.com/jackc/pgx/v5 v5.7.2/go.mod h1:ncY89UGWxg82EykZUwSpUKEfccBGGYq1xjrOpsbsfGQ=
 | 
			
		||||
github.com/jackc/puddle/v2 v2.2.2 h1:PR8nw+E/1w0GLuRFSmiioY6UooMp6KJv0/61nB7icHo=
 | 
			
		||||
github.com/jackc/puddle/v2 v2.2.2/go.mod h1:vriiEXHvEE654aYKXXjOvZM39qJ0q+azkZFrfEOc3H4=
 | 
			
		||||
github.com/jinzhu/inflection v1.0.0 h1:K317FqzuhWc8YvSVlFMCCUb36O/S9MCKRDI7QkRKD/E=
 | 
			
		||||
github.com/jinzhu/inflection v1.0.0/go.mod h1:h+uFLlag+Qp1Va5pdKtLDYj+kHp5pxUVkryuEj+Srlc=
 | 
			
		||||
github.com/jinzhu/now v1.1.5 h1:/o9tlHleP7gOFmsnYNz3RGnqzefHA47wQpKrrdTIwXQ=
 | 
			
		||||
github.com/jinzhu/now v1.1.5/go.mod h1:d3SSVoowX0Lcu0IBviAWJpolVfI5UJVZZ7cO71lE/z8=
 | 
			
		||||
github.com/joho/godotenv v1.5.1 h1:7eLL/+HRGLY0ldzfGMeQkb7vMd0as4CfYvUVzLqw0N0=
 | 
			
		||||
github.com/joho/godotenv v1.5.1/go.mod h1:f4LDr5Voq0i2e/R5DDNOoa2zzDfwtkZa6DnEwAbqwq4=
 | 
			
		||||
github.com/klauspost/compress v1.16.7 h1:2mk3MPGNzKyxErAw8YaohYh69+pa4sIQSC0fPGCFR9I=
 | 
			
		||||
github.com/klauspost/compress v1.16.7/go.mod h1:ntbaceVETuRiXiv4DpjP66DpAtAGkEQskQzEyD//IeE=
 | 
			
		||||
github.com/montanaflynn/stats v0.7.1 h1:etflOAAHORrCC44V+aR6Ftzort912ZU+YLiSTuV8eaE=
 | 
			
		||||
github.com/montanaflynn/stats v0.7.1/go.mod h1:etXPPgVO6n31NxCd9KQUMvCM+ve0ruNzt6R8Bnaayow=
 | 
			
		||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
 | 
			
		||||
github.com/rs/cors v1.11.1 h1:eU3gRzXLRK57F5rKMGMZURNdIG4EoAmX8k94r9wXWHA=
 | 
			
		||||
github.com/rs/cors v1.11.1/go.mod h1:XyqrcTp5zjWr1wsJ8PIRZssZ8b/WMcMf71DJnit4EMU=
 | 
			
		||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
 | 
			
		||||
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
 | 
			
		||||
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
 | 
			
		||||
github.com/xdg-go/pbkdf2 v1.0.0 h1:Su7DPu48wXMwC3bs7MCNG+z4FhcyEuz5dlvchbq0B0c=
 | 
			
		||||
github.com/xdg-go/pbkdf2 v1.0.0/go.mod h1:jrpuAogTd400dnrH08LKmI/xc1MbPOebTwRqcT5RDeI=
 | 
			
		||||
github.com/xdg-go/scram v1.1.2 h1:FHX5I5B4i4hKRVRBCFRxq1iQRej7WO3hhBuJf+UUySY=
 | 
			
		||||
github.com/xdg-go/scram v1.1.2/go.mod h1:RT/sEzTbU5y00aCK8UOx6R7YryM0iF1N2MOmC3kKLN4=
 | 
			
		||||
github.com/xdg-go/stringprep v1.0.4 h1:XLI/Ng3O1Atzq0oBs3TWm+5ZVgkq2aqdlvP9JtoZ6c8=
 | 
			
		||||
github.com/xdg-go/stringprep v1.0.4/go.mod h1:mPGuuIYwz7CmR2bT9j4GbQqutWS1zV24gijq1dTyGkM=
 | 
			
		||||
github.com/youmark/pkcs8 v0.0.0-20240726163527-a2c0da244d78 h1:ilQV1hzziu+LLM3zUTJ0trRztfwgjqKnBWNtSRkbmwM=
 | 
			
		||||
github.com/youmark/pkcs8 v0.0.0-20240726163527-a2c0da244d78/go.mod h1:aL8wCCfTfSfmXjznFBSZNN13rSJjlIOI1fUNAtF7rmI=
 | 
			
		||||
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
 | 
			
		||||
go.mongodb.org/mongo-driver v1.17.2 h1:gvZyk8352qSfzyZ2UMWcpDpMSGEr1eqE4T793SqyhzM=
 | 
			
		||||
go.mongodb.org/mongo-driver v1.17.2/go.mod h1:Hy04i7O2kC4RS06ZrhPRqj/u4DTYkFDAAccj+rVKqgQ=
 | 
			
		||||
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
 | 
			
		||||
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
 | 
			
		||||
golang.org/x/crypto v0.32.0 h1:euUpcYgM8WcP71gNpTqQCn6rC2t6ULUPiOzfWaXVVfc=
 | 
			
		||||
golang.org/x/crypto v0.32.0/go.mod h1:ZnnJkOaASj8g0AjIduWNlq2NRxL0PlBrbKVyZ6V/Ugc=
 | 
			
		||||
golang.org/x/mod v0.6.0-dev.0.20220419223038-86c51ed26bb4/go.mod h1:jJ57K6gSWd91VN4djpZkiMVwK6gcyfeH4XE8wZrZaV4=
 | 
			
		||||
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
 | 
			
		||||
golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg=
 | 
			
		||||
golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c=
 | 
			
		||||
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 | 
			
		||||
golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
 | 
			
		||||
golang.org/x/sync v0.10.0 h1:3NQrjDixjgGwUOCaF8w2+VYHv0Ve/vGYSbdkTa98gmQ=
 | 
			
		||||
golang.org/x/sync v0.10.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk=
 | 
			
		||||
golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
 | 
			
		||||
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
 | 
			
		||||
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
 | 
			
		||||
golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
 | 
			
		||||
golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
 | 
			
		||||
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
 | 
			
		||||
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
 | 
			
		||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
 | 
			
		||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
 | 
			
		||||
golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
 | 
			
		||||
golang.org/x/text v0.3.8/go.mod h1:E6s5w1FMmriuDzIBO73fBruAKo1PCIq6d2Q6DHfQ8WQ=
 | 
			
		||||
golang.org/x/text v0.21.0 h1:zyQAAkrwaneQ066sspRyJaG9VNi/YJ1NfzcGB3hZ/qo=
 | 
			
		||||
golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ=
 | 
			
		||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
 | 
			
		||||
golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
 | 
			
		||||
golang.org/x/tools v0.1.12/go.mod h1:hNGJHUnrk76NpqgfD5Aqm5Crs+Hm0VOH/i9J2+nxYbc=
 | 
			
		||||
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
 | 
			
		||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
 | 
			
		||||
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
 | 
			
		||||
gorm.io/driver/mysql v1.5.7 h1:MndhOPYOfEp2rHKgkZIhJ16eVUIRf2HmzgoPmh7FCWo=
 | 
			
		||||
gorm.io/driver/mysql v1.5.7/go.mod h1:sEtPWMiqiN1N1cMXoXmBbd8C6/l+TESwriotuRRpkDM=
 | 
			
		||||
gorm.io/driver/postgres v1.5.11 h1:ubBVAfbKEUld/twyKZ0IYn9rSQh448EdelLYk9Mv314=
 | 
			
		||||
gorm.io/driver/postgres v1.5.11/go.mod h1:DX3GReXH+3FPWGrrgffdvCk3DQ1dwDPdmbenSkweRGI=
 | 
			
		||||
gorm.io/gorm v1.25.7/go.mod h1:hbnx/Oo0ChWMn1BIhpy1oYozzpM15i4YPuHDmfYtwg8=
 | 
			
		||||
gorm.io/gorm v1.25.12 h1:I0u8i2hWQItBq1WfE0o2+WuL9+8L21K9e2HHSTE/0f8=
 | 
			
		||||
gorm.io/gorm v1.25.12/go.mod h1:xh7N7RHfYlNc5EmcI/El95gXusucDrQnHXe0+CgWcLQ=
 | 
			
		||||
							
								
								
									
										167
									
								
								api/main.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										167
									
								
								api/main.go
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,167 @@
 | 
			
		||||
// Copyright (c) 2021-2025 community-scripts ORG
 | 
			
		||||
// Author: Michel Roegl-Brunner (michelroegl-brunner)
 | 
			
		||||
// License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
 | 
			
		||||
package main
 | 
			
		||||
 | 
			
		||||
import (
 | 
			
		||||
	"context"
 | 
			
		||||
	"encoding/json"
 | 
			
		||||
	"fmt"
 | 
			
		||||
	"log"
 | 
			
		||||
	"net/http"
 | 
			
		||||
	"os"
 | 
			
		||||
	"time"
 | 
			
		||||
 | 
			
		||||
	"github.com/gorilla/mux"
 | 
			
		||||
	"github.com/joho/godotenv"
 | 
			
		||||
	"github.com/rs/cors"
 | 
			
		||||
	"go.mongodb.org/mongo-driver/bson"
 | 
			
		||||
	"go.mongodb.org/mongo-driver/bson/primitive"
 | 
			
		||||
	"go.mongodb.org/mongo-driver/mongo"
 | 
			
		||||
	"go.mongodb.org/mongo-driver/mongo/options"
 | 
			
		||||
)
 | 
			
		||||
 | 
			
		||||
var client *mongo.Client
 | 
			
		||||
var collection *mongo.Collection
 | 
			
		||||
 | 
			
		||||
func loadEnv() {
 | 
			
		||||
	if err := godotenv.Load(); err != nil {
 | 
			
		||||
		log.Fatal("Error loading .env file")
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type DataModel struct {
 | 
			
		||||
	ID         primitive.ObjectID `json:"id" bson:"_id,omitempty"`
 | 
			
		||||
	CT_TYPE    uint               `json:"ct_type" bson:"ct_type"`
 | 
			
		||||
	DISK_SIZE  float32            `json:"disk_size" bson:"disk_size"`
 | 
			
		||||
	CORE_COUNT uint               `json:"core_count" bson:"core_count"`
 | 
			
		||||
	RAM_SIZE   uint               `json:"ram_size" bson:"ram_size"`
 | 
			
		||||
	OS_TYPE    string             `json:"os_type" bson:"os_type"`
 | 
			
		||||
	OS_VERSION string             `json:"os_version" bson:"os_version"`
 | 
			
		||||
	DISABLEIP6 string             `json:"disableip6" bson:"disableip6"`
 | 
			
		||||
	NSAPP      string             `json:"nsapp" bson:"nsapp"`
 | 
			
		||||
	METHOD     string             `json:"method" bson:"method"`
 | 
			
		||||
	CreatedAt  time.Time          `json:"created_at" bson:"created_at"`
 | 
			
		||||
	PVEVERSION string             `json:"pve_version" bson:"pve_version"`
 | 
			
		||||
	STATUS     string             `json:"status" bson:"status"`
 | 
			
		||||
	RANDOM_ID  string             `json:"random_id" bson:"random_id"`
 | 
			
		||||
	TYPE       string             `json:"type" bson:"type"`
 | 
			
		||||
	ERROR      string             `json:"error" bson:"error"`
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
type StatusModel struct {
 | 
			
		||||
	RANDOM_ID string `json:"random_id" bson:"random_id"`
 | 
			
		||||
	ERROR     string `json:"error" bson:"error"`
 | 
			
		||||
	STATUS    string `json:"status" bson:"status"`
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func ConnectDatabase() {
 | 
			
		||||
	loadEnv()
 | 
			
		||||
 | 
			
		||||
	mongoURI := fmt.Sprintf("mongodb://%s:%s@%s:%s",
 | 
			
		||||
		os.Getenv("MONGO_USER"),
 | 
			
		||||
		os.Getenv("MONGO_PASSWORD"),
 | 
			
		||||
		os.Getenv("MONGO_IP"),
 | 
			
		||||
		os.Getenv("MONGO_PORT"))
 | 
			
		||||
 | 
			
		||||
	database := os.Getenv("MONGO_DATABASE")
 | 
			
		||||
	ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
 | 
			
		||||
	defer cancel()
 | 
			
		||||
 | 
			
		||||
	var err error
 | 
			
		||||
	client, err = mongo.Connect(ctx, options.Client().ApplyURI(mongoURI))
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		log.Fatal("Failed to connect to MongoDB!", err)
 | 
			
		||||
	}
 | 
			
		||||
	collection = client.Database(database).Collection("data_models")
 | 
			
		||||
	fmt.Println("Connected to MongoDB on 10.10.10.18")
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func UploadJSON(w http.ResponseWriter, r *http.Request) {
 | 
			
		||||
	var input DataModel
 | 
			
		||||
 | 
			
		||||
	if err := json.NewDecoder(r.Body).Decode(&input); err != nil {
 | 
			
		||||
		http.Error(w, err.Error(), http.StatusBadRequest)
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	input.CreatedAt = time.Now()
 | 
			
		||||
 | 
			
		||||
	_, err := collection.InsertOne(context.Background(), input)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		http.Error(w, err.Error(), http.StatusInternalServerError)
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	log.Println("Received data:", input)
 | 
			
		||||
	w.WriteHeader(http.StatusCreated)
 | 
			
		||||
	json.NewEncoder(w).Encode(map[string]string{"message": "Data saved successfully"})
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func UpdateStatus(w http.ResponseWriter, r *http.Request) {
 | 
			
		||||
	var input StatusModel
 | 
			
		||||
 | 
			
		||||
	if err := json.NewDecoder(r.Body).Decode(&input); err != nil {
 | 
			
		||||
		http.Error(w, err.Error(), http.StatusBadRequest)
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	filter := bson.M{"random_id": input.RANDOM_ID}
 | 
			
		||||
	update := bson.M{"$set": bson.M{"status": input.STATUS, "error": input.ERROR}}
 | 
			
		||||
 | 
			
		||||
	_, err := collection.UpdateOne(context.Background(), filter, update)
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		http.Error(w, err.Error(), http.StatusInternalServerError)
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	log.Println("Updated data:", input)
 | 
			
		||||
	w.WriteHeader(http.StatusOK)
 | 
			
		||||
	json.NewEncoder(w).Encode(map[string]string{"message": "Record updated successfully"})
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func GetDataJSON(w http.ResponseWriter, r *http.Request) {
 | 
			
		||||
	var records []DataModel
 | 
			
		||||
	ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
 | 
			
		||||
	defer cancel()
 | 
			
		||||
 | 
			
		||||
	cursor, err := collection.Find(ctx, bson.M{})
 | 
			
		||||
	if err != nil {
 | 
			
		||||
		http.Error(w, err.Error(), http.StatusInternalServerError)
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	defer cursor.Close(ctx)
 | 
			
		||||
 | 
			
		||||
	for cursor.Next(ctx) {
 | 
			
		||||
		var record DataModel
 | 
			
		||||
		if err := cursor.Decode(&record); err != nil {
 | 
			
		||||
			http.Error(w, err.Error(), http.StatusInternalServerError)
 | 
			
		||||
			return
 | 
			
		||||
		}
 | 
			
		||||
		records = append(records, record)
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	w.Header().Set("Content-Type", "application/json")
 | 
			
		||||
	json.NewEncoder(w).Encode(records)
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
func main() {
 | 
			
		||||
	ConnectDatabase()
 | 
			
		||||
 | 
			
		||||
	router := mux.NewRouter()
 | 
			
		||||
	router.HandleFunc("/upload", UploadJSON).Methods("POST")
 | 
			
		||||
	router.HandleFunc("/upload/updatestatus", UpdateStatus).Methods("POST")
 | 
			
		||||
	router.HandleFunc("/data/json", GetDataJSON).Methods("GET")
 | 
			
		||||
 | 
			
		||||
	c := cors.New(cors.Options{
 | 
			
		||||
		AllowedOrigins:   []string{"*"},
 | 
			
		||||
		AllowedMethods:   []string{"GET", "POST"},
 | 
			
		||||
		AllowedHeaders:   []string{"Content-Type", "Authorization"},
 | 
			
		||||
		AllowCredentials: true,
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	handler := c.Handler(router)
 | 
			
		||||
 | 
			
		||||
	fmt.Println("Server running on port 8080")
 | 
			
		||||
	log.Fatal(http.ListenAndServe(":8080", handler))
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										113
									
								
								ct/5etools.sh
									
									
									
									
									
								
							
							
						
						
									
										113
									
								
								ct/5etools.sh
									
									
									
									
									
								
							@@ -1,113 +0,0 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2025 community-scripts ORG
 | 
			
		||||
# Author: TheRealVira
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://5e.tools/
 | 
			
		||||
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="5etools"
 | 
			
		||||
var_tags="wiki"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="13"
 | 
			
		||||
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/${APP}" ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    RELEASE=$(curl -s https://api.github.com/repos/5etools-mirror-3/5etools-src/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
 | 
			
		||||
        # Crawling the new version and checking whether an update is required
 | 
			
		||||
        msg_info "Updating System"
 | 
			
		||||
        apt-get update &>/dev/null
 | 
			
		||||
        apt-get -y upgrade &>/dev/null
 | 
			
		||||
        msg_ok "Updated System"
 | 
			
		||||
 | 
			
		||||
        # Execute Update
 | 
			
		||||
        msg_info "Updating base 5etools"
 | 
			
		||||
        cd /opt
 | 
			
		||||
        wget -q "https://github.com/5etools-mirror-3/5etools-src/archive/refs/tags/${RELEASE}.zip"
 | 
			
		||||
        unzip -q "${RELEASE}.zip"
 | 
			
		||||
        mv "/opt/${APP}/img" "/opt/img-backup"
 | 
			
		||||
        rm -rf "/opt/${APP}"
 | 
			
		||||
        mv "${APP}-src-${RELEASE:1}" "/opt/${APP}"
 | 
			
		||||
        mv "/opt/img-backup" "/opt/${APP}/img"
 | 
			
		||||
        cd /opt/5etools
 | 
			
		||||
        $STD npm install
 | 
			
		||||
        $STD npm run build
 | 
			
		||||
        cd ~
 | 
			
		||||
        echo "${RELEASE}" >"/opt/${APP}_version.txt"
 | 
			
		||||
        chown -R www-data: "/opt/${APP}"
 | 
			
		||||
        chmod -R 755 "/opt/${APP}"
 | 
			
		||||
        msg_ok "Updated base 5etools"
 | 
			
		||||
        # Cleaning up
 | 
			
		||||
        msg_info "Cleaning Up"
 | 
			
		||||
        rm -rf /opt/${RELEASE}.zip
 | 
			
		||||
        $STD apt-get -y autoremove
 | 
			
		||||
        $STD apt-get -y autoclean
 | 
			
		||||
        msg_ok "Cleanup Completed"
 | 
			
		||||
    else
 | 
			
		||||
        msg_ok "No update required. Base ${APP} is already at ${RELEASE}"
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    IMG_RELEASE=$(curl -s https://api.github.com/repos/5etools-mirror-2/5etools-img/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
 | 
			
		||||
    if [[ "${IMG_RELEASE}" != "$(cat /opt/${APP}_IMG_version.txt)" ]] || [[ ! -f "/opt/${APP}_IMG_version.txt" ]]; then
 | 
			
		||||
        # Crawling the new version and checking whether an update is required
 | 
			
		||||
        msg_info "Updating System"
 | 
			
		||||
        apt-get update &>/dev/null
 | 
			
		||||
        apt-get -y upgrade &>/dev/null
 | 
			
		||||
        msg_ok "Updated System"
 | 
			
		||||
 | 
			
		||||
        # Execute Update
 | 
			
		||||
        msg_info "Updating 5etools images"
 | 
			
		||||
        curl -sSL "https://github.com/5etools-mirror-2/5etools-img/archive/refs/tags/${IMG_RELEASE}.zip" > "${IMG_RELEASE}.zip"
 | 
			
		||||
        unzip -q "${IMG_RELEASE}.zip"
 | 
			
		||||
        rm -rf "/opt/${APP}/img"
 | 
			
		||||
        mv "${APP}-img-${IMG_RELEASE:1}" "/opt/${APP}/img"
 | 
			
		||||
        echo "${IMG_RELEASE}" >"/opt/${APP}_IMG_version.txt"
 | 
			
		||||
        chown -R www-data: "/opt/${APP}"
 | 
			
		||||
        chmod -R 755 "/opt/${APP}"
 | 
			
		||||
 | 
			
		||||
        msg_ok "Updating 5etools images"
 | 
			
		||||
 | 
			
		||||
        # Cleaning up
 | 
			
		||||
        msg_info "Cleaning Up"
 | 
			
		||||
        rm -rf /opt/${RELEASE}.zip
 | 
			
		||||
        rm -rf ${IMG_RELEASE}.zip
 | 
			
		||||
        $STD apt-get -y autoremove
 | 
			
		||||
        $STD apt-get -y autoclean
 | 
			
		||||
        msg_ok "Cleanup Completed"
 | 
			
		||||
    else
 | 
			
		||||
        msg_ok "No update required. ${APP} images are already at ${IMG_RELEASE}"
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
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}${CL}"
 | 
			
		||||
@@ -28,33 +28,44 @@ function update_script() {
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
 | 
			
		||||
    if [[ ! -d /opt/actualbudget ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    if ! command -v jq >/dev/null 2>&1; then
 | 
			
		||||
      echo "Installing jq..."
 | 
			
		||||
      apt-get install -y jq >/dev/null 2>&1
 | 
			
		||||
      echo "Installed jq..."
 | 
			
		||||
    
 | 
			
		||||
    RELEASE=$(curl -s https://api.github.com/repos/actualbudget/actual/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
 | 
			
		||||
    if [[ ! -f /opt/actualbudget_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/actualbudget_version.txt)" ]]; then
 | 
			
		||||
        msg_info "Stopping ${APP}"
 | 
			
		||||
        systemctl stop actualbudget
 | 
			
		||||
        msg_ok "${APP} Stopped"
 | 
			
		||||
        
 | 
			
		||||
        msg_info "Updating ${APP} to ${RELEASE}"
 | 
			
		||||
        cd /tmp
 | 
			
		||||
        wget -q https://github.com/actualbudget/actual-server/archive/refs/tags/v${RELEASE}.tar.gz
 | 
			
		||||
        mv /opt/actualbudget /opt/actualbudget_bak
 | 
			
		||||
        tar -xzf v${RELEASE}.tar.gz >/dev/null 2>&1
 | 
			
		||||
        mv *ctual-server-* /opt/actualbudget
 | 
			
		||||
        rm -rf /opt/actualbudget/.env
 | 
			
		||||
        mv /opt/actualbudget_bak/.env /opt/actualbudget
 | 
			
		||||
        mv /opt/actualbudget_bak/server-files /opt/actualbudget/server-files
 | 
			
		||||
        cd /opt/actualbudget
 | 
			
		||||
        yarn install &>/dev/null
 | 
			
		||||
        echo "${RELEASE}" >/opt/actualbudget_version.txt
 | 
			
		||||
        msg_ok "Updated ${APP}"
 | 
			
		||||
        
 | 
			
		||||
        msg_info "Starting ${APP}"
 | 
			
		||||
        systemctl start actualbudget
 | 
			
		||||
        msg_ok "Started ${APP}"
 | 
			
		||||
        
 | 
			
		||||
        msg_info "Cleaning Up"
 | 
			
		||||
        rm -rf /opt/actualbudget_bak
 | 
			
		||||
        rm -rf /tmp/v${RELEASE}.tar.gz
 | 
			
		||||
        msg_ok "Cleaned"
 | 
			
		||||
        msg_ok "Updated Successfully"
 | 
			
		||||
    else
 | 
			
		||||
        msg_ok "No update required. ${APP} is already at ${RELEASE}"
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    msg_info "Updating ${APP}"
 | 
			
		||||
    systemctl stop actualbudget
 | 
			
		||||
    RELEASE=$(curl -s https://api.github.com/repos/actualbudget/actual-server/tags | jq --raw-output '.[0].name')
 | 
			
		||||
    TEMPD="$(mktemp -d)"
 | 
			
		||||
    cd "${TEMPD}"
 | 
			
		||||
    wget -q https://codeload.github.com/actualbudget/actual-server/legacy.tar.gz/refs/tags/${RELEASE} -O - | tar -xz
 | 
			
		||||
    mv /opt/actualbudget /opt/actualbudget_bak
 | 
			
		||||
    mkdir -p /opt/actualbudget/
 | 
			
		||||
    mv actualbudget-actual-server-*/* /opt/actualbudget/
 | 
			
		||||
    mv /opt/actualbudget_bak/.env /opt/actualbudget
 | 
			
		||||
    mv /opt/actualbudget_bak/server-files /opt/actualbudget/server-files
 | 
			
		||||
    cd /opt/actualbudget
 | 
			
		||||
    yarn install &>/dev/null
 | 
			
		||||
    systemctl start actualbudget
 | 
			
		||||
    msg_ok "Successfully Updated ${APP} to ${RELEASE}"
 | 
			
		||||
    rm -rf "${TEMPD}"
 | 
			
		||||
    rm -rf /opt/actualbudget_bak
 | 
			
		||||
    exit
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -11,7 +11,7 @@ var_cpu="1"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="alpine"
 | 
			
		||||
var_version="3.20"
 | 
			
		||||
var_version="3.21"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
 
 | 
			
		||||
@@ -11,7 +11,7 @@ var_cpu="1"
 | 
			
		||||
var_ram="256"
 | 
			
		||||
var_disk="1"
 | 
			
		||||
var_os="alpine"
 | 
			
		||||
var_version="3.20"
 | 
			
		||||
var_version="3.21"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										62
									
								
								ct/alpine-it-tools.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										62
									
								
								ct/alpine-it-tools.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,62 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2025 community-scripts ORG
 | 
			
		||||
# Author: nicedevil007 (NiceDevil)
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Alpine-IT-Tools"
 | 
			
		||||
var_tags="alpine;development"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="256"
 | 
			
		||||
var_disk="0.2"
 | 
			
		||||
var_os="alpine"
 | 
			
		||||
var_version="3.21"
 | 
			
		||||
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 /usr/share/nginx/html ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    RELEASE=$(curl -s https://api.github.com/repos/CorentinTh/it-tools/releases/latest | grep '"tag_name":' | cut -d '"' -f4)
 | 
			
		||||
    if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
 | 
			
		||||
        DOWNLOAD_URL="https://github.com/CorentinTh/it-tools/releases/download/${RELEASE}/it-tools-${RELEASE#v}.zip"
 | 
			
		||||
        msg_info "Updating ${APP} LXC"
 | 
			
		||||
        curl -fsSL -o it-tools.zip "$DOWNLOAD_URL"
 | 
			
		||||
        mkdir -p /usr/share/nginx/html
 | 
			
		||||
        rm -rf /usr/share/nginx/html/*
 | 
			
		||||
        unzip -q it-tools.zip -d /tmp/it-tools
 | 
			
		||||
        cp -r /tmp/it-tools/dist/* /usr/share/nginx/html
 | 
			
		||||
        rm -rf /tmp/it-tools
 | 
			
		||||
        rm -f it-tools.zip
 | 
			
		||||
        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 IP:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}${CL}"
 | 
			
		||||
@@ -11,7 +11,7 @@ var_cpu="2"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_os="alpine"
 | 
			
		||||
var_version="3.20"
 | 
			
		||||
var_version="3.21"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
 
 | 
			
		||||
@@ -9,9 +9,9 @@ APP="Alpine-Vaultwarden"
 | 
			
		||||
var_tags="alpine;vault"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="256"
 | 
			
		||||
var_disk="0.3"
 | 
			
		||||
var_disk="0.5"
 | 
			
		||||
var_os="alpine"
 | 
			
		||||
var_version="3.20"
 | 
			
		||||
var_version="3.21"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
 
 | 
			
		||||
@@ -11,7 +11,7 @@ var_disk="0.3"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="256"
 | 
			
		||||
var_os="alpine"
 | 
			
		||||
var_version="3.20"
 | 
			
		||||
var_version="3.21"
 | 
			
		||||
var_unprivileged="0"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
 
 | 
			
		||||
@@ -11,7 +11,7 @@ var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="0.1"
 | 
			
		||||
var_os="alpine"
 | 
			
		||||
var_version="3.20"
 | 
			
		||||
var_version="3.21"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 | 
			
		||||
# App Output & Base Settings
 | 
			
		||||
 
 | 
			
		||||
@@ -46,4 +46,4 @@ 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}:3142/acng-report.html{CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:3142/acng-report.html${CL}"
 | 
			
		||||
 
 | 
			
		||||
@@ -8,7 +8,7 @@ source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/m
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Authentik"
 | 
			
		||||
var_tags="identity-provider"
 | 
			
		||||
var_disk="15"
 | 
			
		||||
var_disk="12"
 | 
			
		||||
var_cpu="6"
 | 
			
		||||
var_ram="8192"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										75
									
								
								ct/baikal.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										75
									
								
								ct/baikal.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,75 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2025 community-scripts ORG
 | 
			
		||||
# Author: bvdberg01
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://sabre.io/baikal/
 | 
			
		||||
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Baikal"
 | 
			
		||||
var_tags="Dav"
 | 
			
		||||
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 update_script() {
 | 
			
		||||
  header_info
 | 
			
		||||
  check_container_storage
 | 
			
		||||
  check_container_resources
 | 
			
		||||
  if [[ ! -d /opt/baikal ]]; then
 | 
			
		||||
    msg_error "No ${APP} Installation Found!"
 | 
			
		||||
    exit
 | 
			
		||||
  fi
 | 
			
		||||
  RELEASE=$(curl -s https://api.github.com/repos/sabre-io/Baikal/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 Service"
 | 
			
		||||
    systemctl stop apache2
 | 
			
		||||
    msg_ok "Stopped Service"
 | 
			
		||||
 | 
			
		||||
    msg_info "Updating ${APP} to v${RELEASE}"
 | 
			
		||||
    cd /opt
 | 
			
		||||
    wget -q "https://github.com/sabre-io/baikal/releases/download/${RELEASE}/baikal-${RELEASE}.zip"
 | 
			
		||||
    mv /opt/baikal /opt/baikal-backup
 | 
			
		||||
    unzip -o -q "baikal-${RELEASE}.zip"
 | 
			
		||||
    cp -r /opt/baikal-backup/config/baikal.yaml /opt/baikal/config/
 | 
			
		||||
    cp -r /opt/baikal-backup/Specific/ /opt/baikal/
 | 
			
		||||
    chown -R www-data:www-data /opt/baikal/
 | 
			
		||||
    chmod -R 755 /opt/baikal/
 | 
			
		||||
    echo "${RELEASE}" >/opt/${APP}_version.txt
 | 
			
		||||
    msg_ok "Updated $APP to v${RELEASE}"
 | 
			
		||||
 | 
			
		||||
    msg_info "Starting Service"
 | 
			
		||||
    systemctl start apache2
 | 
			
		||||
    msg_ok "Started Service"
 | 
			
		||||
 | 
			
		||||
    msg_info "Cleaning up"
 | 
			
		||||
    rm -rf "/opt/baikal-${RELEASE}.zip"
 | 
			
		||||
    rm -rf /opt/baikal-backup
 | 
			
		||||
    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}${CL}"
 | 
			
		||||
							
								
								
									
										47
									
								
								ct/beszel.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										47
									
								
								ct/beszel.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,47 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) community-scripts ORG
 | 
			
		||||
# Author: Michelle Zitzerman (Sinofage)
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://beszel.dev/
 | 
			
		||||
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Beszel"
 | 
			
		||||
var_tags="monitoring"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
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 update_script() {
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /opt/beszel ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
    /opt/beszel/beszel update
 | 
			
		||||
    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 IP:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8090${CL}"
 | 
			
		||||
@@ -10,7 +10,7 @@ APP="Caddy"
 | 
			
		||||
var_tags="webserver"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="512"
 | 
			
		||||
var_disk="2"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
@@ -46,4 +46,4 @@ 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}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:80${CL}"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										90
									
								
								ct/crafty-controller.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										90
									
								
								ct/crafty-controller.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-2025 community-scripts
 | 
			
		||||
# Author: CrazyWolf13
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Crafty-Controller"
 | 
			
		||||
var_tags="gaming"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="4096"
 | 
			
		||||
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 update_script() {
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /opt/crafty-controller ]]; then
 | 
			
		||||
        msg_error "No ${APP} Installation Found!"
 | 
			
		||||
        exit
 | 
			
		||||
    fi
 | 
			
		||||
   
 | 
			
		||||
    RELEASE=$(curl -s "https://gitlab.com/api/v4/projects/20430749/releases" | grep -o '"tag_name":"v[^"]*"' | head -n 1 | sed 's/"tag_name":"v//;s/"//')
 | 
			
		||||
    if [[ ! -f /opt/crafty-controller_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/crafty-controller_version.txt)" ]]; then
 | 
			
		||||
      
 | 
			
		||||
      msg_info "Stopping Crafty-Controller"
 | 
			
		||||
      systemctl stop crafty-controller
 | 
			
		||||
      msg_ok "Stopped Crafty-Controller"
 | 
			
		||||
 | 
			
		||||
      msg_info "Creating Backup of config"
 | 
			
		||||
      cp -a /opt/crafty-controller/crafty/crafty-4/app/config/. /opt/crafty-controller/backup
 | 
			
		||||
      rm /opt/crafty-controller/backup/version.json
 | 
			
		||||
      rm /opt/crafty-controller/backup/credits.json
 | 
			
		||||
      rm /opt/crafty-controller/backup/logging.json
 | 
			
		||||
      rm /opt/crafty-controller/backup/default.json.example
 | 
			
		||||
      rm /opt/crafty-controller/backup/motd_format.json
 | 
			
		||||
      msg_ok "Backup Created"
 | 
			
		||||
      
 | 
			
		||||
      msg_info "Updating Crafty-Controller to v${RELEASE}"
 | 
			
		||||
      wget -q "https://gitlab.com/crafty-controller/crafty-4/-/archive/v${RELEASE}/crafty-4-v${RELEASE}.zip"
 | 
			
		||||
      unzip -q crafty-4-v${RELEASE}.zip
 | 
			
		||||
      cp -a crafty-4-v${RELEASE}/. /opt/crafty-controller/crafty/crafty-4/
 | 
			
		||||
      rm -rf crafty-4-v${RELEASE}
 | 
			
		||||
      cd /opt/crafty-controller/crafty/crafty-4
 | 
			
		||||
      sudo -u crafty bash -c '
 | 
			
		||||
        source /opt/crafty-controller/crafty/.venv/bin/activate
 | 
			
		||||
        pip3 install --no-cache-dir -r requirements.txt
 | 
			
		||||
      ' &>/dev/null
 | 
			
		||||
      echo "${RELEASE}" >"/opt/crafty-controller_version.txt"
 | 
			
		||||
      msg_ok "Updated Crafty-Controller to v${RELEASE}"
 | 
			
		||||
 | 
			
		||||
      msg_info "Restoring Backup of config"
 | 
			
		||||
      cp -a /opt/crafty-controller/backup/. /opt/crafty-controller/crafty/crafty-4/app/config
 | 
			
		||||
      rm -rf /opt/crafty-controller/backup
 | 
			
		||||
      chown -R crafty:crafty /opt/crafty-controller/
 | 
			
		||||
      msg_ok "Backup Restored"
 | 
			
		||||
 | 
			
		||||
      msg_info "Starting Crafty-Controller"
 | 
			
		||||
      systemctl start crafty-controller
 | 
			
		||||
      msg_ok "Started Crafty-Controller"
 | 
			
		||||
 | 
			
		||||
      msg_ok "Updated Successfully"
 | 
			
		||||
      exit
 | 
			
		||||
  else
 | 
			
		||||
    msg_ok "No update required. Crafty-Controller is already at v${RELEASE}."
 | 
			
		||||
  fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
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}https://${IP}:8443${CL}"
 | 
			
		||||
@@ -43,6 +43,7 @@ function error_handler() {
 | 
			
		||||
  local command="$2"
 | 
			
		||||
  local error_message="${RD}[ERROR]${CL} in line ${RD}$line_number${CL}: exit code ${RD}$exit_code${CL}: while executing command ${YW}$command${CL}"
 | 
			
		||||
  echo -e "\n$error_message\n"
 | 
			
		||||
  exit 200
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
# This function displays a spinner.
 | 
			
		||||
@@ -112,7 +113,7 @@ function select_storage() {
 | 
			
		||||
    CONTENT='vztmpl'
 | 
			
		||||
    CONTENT_LABEL='Container template'
 | 
			
		||||
    ;;
 | 
			
		||||
  *) false || exit "Invalid storage class." ;;
 | 
			
		||||
  *) false || { msg_error "Invalid storage class."; exit 201; };
 | 
			
		||||
  esac
 | 
			
		||||
  
 | 
			
		||||
  # This Queries all storage locations
 | 
			
		||||
@@ -138,7 +139,7 @@ function select_storage() {
 | 
			
		||||
      STORAGE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "Storage Pools" --radiolist \
 | 
			
		||||
      "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."
 | 
			
		||||
      "${MENU[@]}" 3>&1 1>&2 2>&3) || { msg_error "Menu aborted."; exit 202; }
 | 
			
		||||
      if [ $? -ne 0 ]; then
 | 
			
		||||
        echo -e "${CROSS}${RD} Menu aborted by user.${CL}"
 | 
			
		||||
        exit 0 
 | 
			
		||||
@@ -148,17 +149,18 @@ function select_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."
 | 
			
		||||
[[ "${CTID:-}" ]] || { msg_error "You need to set 'CTID' variable."; exit 203; }
 | 
			
		||||
[[ "${PCT_OSTYPE:-}" ]] || { msg_error "You need to set 'PCT_OSTYPE' variable."; exit 204; }
 | 
			
		||||
 | 
			
		||||
# Test if ID is valid
 | 
			
		||||
[ "$CTID" -ge "100" ] || exit "ID cannot be less than 100."
 | 
			
		||||
[ "$CTID" -ge "100" ] || { msg_error "ID cannot be less than 100."; exit 205; }
 | 
			
		||||
 | 
			
		||||
# Test if ID is in use
 | 
			
		||||
if pct status $CTID &>/dev/null; then
 | 
			
		||||
  echo -e "ID '$CTID' is already in use."
 | 
			
		||||
  unset CTID
 | 
			
		||||
  exit "Cannot use ID that is already in use."
 | 
			
		||||
  msg_error "Cannot use ID that is already in use."
 | 
			
		||||
  exit 206
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
# Get template storage
 | 
			
		||||
@@ -177,14 +179,15 @@ msg_ok "Updated LXC Template List"
 | 
			
		||||
# Get LXC template string
 | 
			
		||||
TEMPLATE_SEARCH=${PCT_OSTYPE}-${PCT_OSVERSION:-}
 | 
			
		||||
mapfile -t TEMPLATES < <(pveam available -section system | sed -n "s/.*\($TEMPLATE_SEARCH.*\)/\1/p" | sort -t - -k 2 -V)
 | 
			
		||||
[ ${#TEMPLATES[@]} -gt 0 ] || exit "Unable to find a template when searching for '$TEMPLATE_SEARCH'."
 | 
			
		||||
[ ${#TEMPLATES[@]} -gt 0 ] || { msg_error "Unable to find a template when searching for '$TEMPLATE_SEARCH'."; exit 207; }
 | 
			
		||||
TEMPLATE="${TEMPLATES[-1]}"
 | 
			
		||||
 | 
			
		||||
# Download LXC template if needed
 | 
			
		||||
if ! pveam list $TEMPLATE_STORAGE | grep -q $TEMPLATE; then
 | 
			
		||||
  msg_info "Downloading LXC Template"
 | 
			
		||||
  pveam download $TEMPLATE_STORAGE $TEMPLATE >/dev/null ||
 | 
			
		||||
    exit "A problem occured while downloading the LXC template."
 | 
			
		||||
    msg_error "A problem occured while downloading the LXC template."
 | 
			
		||||
    exit 208
 | 
			
		||||
  msg_ok "Downloaded LXC Template"
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
@@ -197,6 +200,6 @@ PCT_OPTIONS=(${PCT_OPTIONS[@]:-${DEFAULT_PCT_OPTIONS[@]}})
 | 
			
		||||
 | 
			
		||||
# Create container
 | 
			
		||||
msg_info "Creating LXC Container"
 | 
			
		||||
pct create $CTID ${TEMPLATE_STORAGE}:vztmpl/${TEMPLATE} ${PCT_OPTIONS[@]} >/dev/null ||
 | 
			
		||||
  exit "A problem occured while trying to create container."
 | 
			
		||||
pct create $CTID ${TEMPLATE_STORAGE}:vztmpl/${TEMPLATE} ${PCT_OPTIONS[@]} >/dev/null || { msg_error "A problem occured while trying to create container.";  exit 200; }
 | 
			
		||||
msg_ok "LXC Container ${BL}$CTID${CL} ${GN}was successfully created."
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -73,7 +73,7 @@ function update_script() {
 | 
			
		||||
    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
 | 
			
		||||
    echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_22.x nodistro main" >/etc/apt/sources.list.d/nodesource.list
 | 
			
		||||
    msg_ok "Set up Node.js Repository"
 | 
			
		||||
 | 
			
		||||
    msg_info "Installing Node.js"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										49
									
								
								ct/dotnetaspwebapi.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										49
									
								
								ct/dotnetaspwebapi.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,49 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2025 community-scripts ORG
 | 
			
		||||
# Author: Kristian Skov
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://learn.microsoft.com/en-us/aspnet/core/host-and-deploy/linux-nginx?view=aspnetcore-9.0&tabs=linux-ubuntu
 | 
			
		||||
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Dotnet ASP Web API"
 | 
			
		||||
var_tags="web"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="1024"
 | 
			
		||||
var_disk="8"
 | 
			
		||||
var_os="ubuntu"
 | 
			
		||||
var_version="24.04"
 | 
			
		||||
var_unprivileged="0"
 | 
			
		||||
 | 
			
		||||
# 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/www ]]; 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
 | 
			
		||||
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 IP:${CL}"
 | 
			
		||||
echo -e "${TAB}${GATEWAY}${BGN}${IP}:80${CL}"
 | 
			
		||||
							
								
								
									
										49
									
								
								ct/elementsynapse.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										49
									
								
								ct/elementsynapse.sh
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,49 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
 | 
			
		||||
# Copyright (c) 2021-2025 community-scripts ORG
 | 
			
		||||
# Author: tremor021
 | 
			
		||||
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
 | 
			
		||||
# Source: https://github.com/element-hq/synapse
 | 
			
		||||
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Element Synapse"
 | 
			
		||||
var_tags="server"
 | 
			
		||||
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 update_script() {
 | 
			
		||||
    header_info
 | 
			
		||||
    check_container_storage
 | 
			
		||||
    check_container_resources
 | 
			
		||||
    if [[ ! -d /etc/matrix-synapse ]]; 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}:8008${CL}"
 | 
			
		||||
@@ -5,9 +5,9 @@ source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/m
 | 
			
		||||
# App Default Values
 | 
			
		||||
APP="Grist"
 | 
			
		||||
var_tags="database;spreadsheet"
 | 
			
		||||
var_cpu="1"
 | 
			
		||||
var_ram="2048"
 | 
			
		||||
var_disk="4"
 | 
			
		||||
var_cpu="2"
 | 
			
		||||
var_ram="3072"
 | 
			
		||||
var_disk="6"
 | 
			
		||||
var_os="debian"
 | 
			
		||||
var_version="12"
 | 
			
		||||
var_unprivileged="1"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/2fauth
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/2fauth
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
   ___   _________         __  __  
 | 
			
		||||
  |__ \ / ____/   | __  __/ /_/ /_ 
 | 
			
		||||
  __/ // /_  / /| |/ / / / __/ __ \
 | 
			
		||||
 / __// __/ / ___ / /_/ / /_/ / / /
 | 
			
		||||
/____/_/   /_/  |_\__,_/\__/_/ /_/ 
 | 
			
		||||
                                   
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/actualbudget
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/actualbudget
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ___        __              __   ____            __           __ 
 | 
			
		||||
   /   | _____/ /___  ______ _/ /  / __ )__  ______/ /___ ____  / /_
 | 
			
		||||
  / /| |/ ___/ __/ / / / __ `/ /  / __  / / / / __  / __ `/ _ \/ __/
 | 
			
		||||
 / ___ / /__/ /_/ /_/ / /_/ / /  / /_/ / /_/ / /_/ / /_/ /  __/ /_  
 | 
			
		||||
/_/  |_\___/\__/\__,_/\__,_/_/  /_____/\__,_/\__,_/\__, /\___/\__/  
 | 
			
		||||
                                                  /____/            
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/adguard
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/adguard
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ___       __                           __
 | 
			
		||||
   /   | ____/ /___ ___  ______ __________/ /
 | 
			
		||||
  / /| |/ __  / __ `/ / / / __ `/ ___/ __  / 
 | 
			
		||||
 / ___ / /_/ / /_/ / /_/ / /_/ / /  / /_/ /  
 | 
			
		||||
/_/  |_\__,_/\__, /\__,_/\__,_/_/   \__,_/   
 | 
			
		||||
            /____/                           
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/adventurelog
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/adventurelog
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ___       __                 __                  __               
 | 
			
		||||
   /   | ____/ /   _____  ____  / /___  __________  / /   ____  ____ _
 | 
			
		||||
  / /| |/ __  / | / / _ \/ __ \/ __/ / / / ___/ _ \/ /   / __ \/ __ `/
 | 
			
		||||
 / ___ / /_/ /| |/ /  __/ / / / /_/ /_/ / /  /  __/ /___/ /_/ / /_/ / 
 | 
			
		||||
/_/  |_\__,_/ |___/\___/_/ /_/\__/\__,_/_/   \___/_____/\____/\__, /  
 | 
			
		||||
                                                             /____/   
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/agentdvr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/agentdvr
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ___                    __  ____ _    ______ 
 | 
			
		||||
   /   | ____ ____  ____  / /_/ __ \ |  / / __ \
 | 
			
		||||
  / /| |/ __ `/ _ \/ __ \/ __/ / / / | / / /_/ /
 | 
			
		||||
 / ___ / /_/ /  __/ / / / /_/ /_/ /| |/ / _, _/ 
 | 
			
		||||
/_/  |_\__, /\___/_/ /_/\__/_____/ |___/_/ |_|  
 | 
			
		||||
      /____/                                    
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/alpine
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/alpine
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ___    __      _          
 | 
			
		||||
   /   |  / /___  (_)___  ___ 
 | 
			
		||||
  / /| | / / __ \/ / __ \/ _ \
 | 
			
		||||
 / ___ |/ / /_/ / / / / /  __/
 | 
			
		||||
/_/  |_/_/ .___/_/_/ /_/\___/ 
 | 
			
		||||
        /_/                   
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/alpine-docker
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/alpine-docker
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ___    __      _                  ____             __            
 | 
			
		||||
   /   |  / /___  (_)___  ___        / __ \____  _____/ /_____  _____
 | 
			
		||||
  / /| | / / __ \/ / __ \/ _ \______/ / / / __ \/ ___/ //_/ _ \/ ___/
 | 
			
		||||
 / ___ |/ / /_/ / / / / /  __/_____/ /_/ / /_/ / /__/ ,< /  __/ /    
 | 
			
		||||
/_/  |_/_/ .___/_/_/ /_/\___/     /_____/\____/\___/_/|_|\___/_/     
 | 
			
		||||
        /_/                                                          
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/alpine-grafana
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/alpine-grafana
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ___    __      _                  ______           ____                 
 | 
			
		||||
   /   |  / /___  (_)___  ___        / ____/________ _/ __/___ _____  ____ _
 | 
			
		||||
  / /| | / / __ \/ / __ \/ _ \______/ / __/ ___/ __ `/ /_/ __ `/ __ \/ __ `/
 | 
			
		||||
 / ___ |/ / /_/ / / / / /  __/_____/ /_/ / /  / /_/ / __/ /_/ / / / / /_/ / 
 | 
			
		||||
/_/  |_/_/ .___/_/_/ /_/\___/      \____/_/   \__,_/_/  \__,_/_/ /_/\__,_/  
 | 
			
		||||
        /_/                                                                 
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/alpine-it-tools
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/alpine-it-tools
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ___    __      _                  __________  ______            __    
 | 
			
		||||
   /   |  / /___  (_)___  ___        /  _/_  __/ /_  __/___  ____  / /____
 | 
			
		||||
  / /| | / / __ \/ / __ \/ _ \______ / /  / /_____/ / / __ \/ __ \/ / ___/
 | 
			
		||||
 / ___ |/ / /_/ / / / / /  __/_____// /  / /_____/ / / /_/ / /_/ / (__  ) 
 | 
			
		||||
/_/  |_/_/ .___/_/_/ /_/\___/     /___/ /_/     /_/  \____/\____/_/____/  
 | 
			
		||||
        /_/                                                               
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/alpine-nextcloud
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/alpine-nextcloud
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ___    __      _                  _   __          __       __                __
 | 
			
		||||
   /   |  / /___  (_)___  ___        / | / /__  _  __/ /______/ /___  __  ______/ /
 | 
			
		||||
  / /| | / / __ \/ / __ \/ _ \______/  |/ / _ \| |/_/ __/ ___/ / __ \/ / / / __  / 
 | 
			
		||||
 / ___ |/ / /_/ / / / / /  __/_____/ /|  /  __/>  </ /_/ /__/ / /_/ / /_/ / /_/ /  
 | 
			
		||||
/_/  |_/_/ .___/_/_/ /_/\___/     /_/ |_/\___/_/|_|\__/\___/_/\____/\__,_/\__,_/   
 | 
			
		||||
        /_/                                                                        
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/alpine-vaultwarden
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/alpine-vaultwarden
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ___    __      _                _    __            ____                          __         
 | 
			
		||||
   /   |  / /___  (_)___  ___      | |  / /___ ___  __/ / /__      ______ __________/ /__  ____ 
 | 
			
		||||
  / /| | / / __ \/ / __ \/ _ \_____| | / / __ `/ / / / / __/ | /| / / __ `/ ___/ __  / _ \/ __ \
 | 
			
		||||
 / ___ |/ / /_/ / / / / /  __/_____/ |/ / /_/ / /_/ / / /_ | |/ |/ / /_/ / /  / /_/ /  __/ / / /
 | 
			
		||||
/_/  |_/_/ .___/_/_/ /_/\___/      |___/\__,_/\__,_/_/\__/ |__/|__/\__,_/_/   \__,_/\___/_/ /_/ 
 | 
			
		||||
        /_/                                                                                     
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/alpine-zigbee2mqtt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/alpine-zigbee2mqtt
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ___    __      _               _____   _       __             ___   __  _______  ____________
 | 
			
		||||
   /   |  / /___  (_)___  ___     /__  /  (_)___ _/ /_  ___  ___ |__ \ /  |/  / __ \/_  __/_  __/
 | 
			
		||||
  / /| | / / __ \/ / __ \/ _ \______/ /  / / __ `/ __ \/ _ \/ _ \__/ // /|_/ / / / / / /   / /   
 | 
			
		||||
 / ___ |/ / /_/ / / / / /  __/_____/ /__/ / /_/ / /_/ /  __/  __/ __// /  / / /_/ / / /   / /    
 | 
			
		||||
/_/  |_/_/ .___/_/_/ /_/\___/     /____/_/\__, /_.___/\___/\___/____/_/  /_/\___\_\/_/   /_/     
 | 
			
		||||
        /_/                              /____/                                                  
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/apache-cassandra
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/apache-cassandra
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ___                     __               ______                                __          
 | 
			
		||||
   /   |  ____  ____ ______/ /_  ___        / ____/___ _______________ _____  ____/ /________ _
 | 
			
		||||
  / /| | / __ \/ __ `/ ___/ __ \/ _ \______/ /   / __ `/ ___/ ___/ __ `/ __ \/ __  / ___/ __ `/
 | 
			
		||||
 / ___ |/ /_/ / /_/ / /__/ / / /  __/_____/ /___/ /_/ (__  |__  ) /_/ / / / / /_/ / /  / /_/ / 
 | 
			
		||||
/_/  |_/ .___/\__,_/\___/_/ /_/\___/      \____/\__,_/____/____/\__,_/_/ /_/\__,_/_/   \__,_/  
 | 
			
		||||
      /_/                                                                                      
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/apache-couchdb
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/apache-couchdb
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ___                     __               ______                 __    ____  ____ 
 | 
			
		||||
   /   |  ____  ____ ______/ /_  ___        / ____/___  __  _______/ /_  / __ \/ __ )
 | 
			
		||||
  / /| | / __ \/ __ `/ ___/ __ \/ _ \______/ /   / __ \/ / / / ___/ __ \/ / / / __  |
 | 
			
		||||
 / ___ |/ /_/ / /_/ / /__/ / / /  __/_____/ /___/ /_/ / /_/ / /__/ / / / /_/ / /_/ / 
 | 
			
		||||
/_/  |_/ .___/\__,_/\___/_/ /_/\___/      \____/\____/\__,_/\___/_/ /_/_____/_____/  
 | 
			
		||||
      /_/                                                                            
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/apache-guacamole
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/apache-guacamole
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ___                     __               ______                                       __   
 | 
			
		||||
   /   |  ____  ____ ______/ /_  ___        / ____/_  ______ __________ _____ ___  ____  / /__ 
 | 
			
		||||
  / /| | / __ \/ __ `/ ___/ __ \/ _ \______/ / __/ / / / __ `/ ___/ __ `/ __ `__ \/ __ \/ / _ \
 | 
			
		||||
 / ___ |/ /_/ / /_/ / /__/ / / /  __/_____/ /_/ / /_/ / /_/ / /__/ /_/ / / / / / / /_/ / /  __/
 | 
			
		||||
/_/  |_/ .___/\__,_/\___/_/ /_/\___/      \____/\__,_/\__,_/\___/\__,_/_/ /_/ /_/\____/_/\___/ 
 | 
			
		||||
      /_/                                                                                      
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/apt-cacher-ng
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/apt-cacher-ng
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ___          __        ______           __                    _   ________
 | 
			
		||||
   /   |  ____  / /_      / ____/___ ______/ /_  ___  _____      / | / / ____/
 | 
			
		||||
  / /| | / __ \/ __/_____/ /   / __ `/ ___/ __ \/ _ \/ ___/_____/  |/ / / __  
 | 
			
		||||
 / ___ |/ /_/ / /_/_____/ /___/ /_/ / /__/ / / /  __/ /  /_____/ /|  / /_/ /  
 | 
			
		||||
/_/  |_/ .___/\__/      \____/\__,_/\___/_/ /_/\___/_/        /_/ |_/\____/   
 | 
			
		||||
      /_/                                                                     
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/archivebox
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/archivebox
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ___              __    _            ____            
 | 
			
		||||
   /   |  __________/ /_  (_)   _____  / __ )____  _  __
 | 
			
		||||
  / /| | / ___/ ___/ __ \/ / | / / _ \/ __  / __ \| |/_/
 | 
			
		||||
 / ___ |/ /  / /__/ / / / /| |/ /  __/ /_/ / /_/ />  <  
 | 
			
		||||
/_/  |_/_/   \___/_/ /_/_/ |___/\___/_____/\____/_/|_|  
 | 
			
		||||
                                                        
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/aria2
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/aria2
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ___         _      ___ 
 | 
			
		||||
   /   |  _____(_)___ |__ \
 | 
			
		||||
  / /| | / ___/ / __ `/_/ /
 | 
			
		||||
 / ___ |/ /  / / /_/ / __/ 
 | 
			
		||||
/_/  |_/_/  /_/\__,_/____/ 
 | 
			
		||||
                           
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/audiobookshelf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/audiobookshelf
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
                   ___       __                __        __         ______
 | 
			
		||||
  ____ ___  ______/ (_)___  / /_  ____  ____  / /_______/ /_  ___  / / __/
 | 
			
		||||
 / __ `/ / / / __  / / __ \/ __ \/ __ \/ __ \/ //_/ ___/ __ \/ _ \/ / /_  
 | 
			
		||||
/ /_/ / /_/ / /_/ / / /_/ / /_/ / /_/ / /_/ / ,< (__  ) / / /  __/ / __/  
 | 
			
		||||
\__,_/\__,_/\__,_/_/\____/_.___/\____/\____/_/|_/____/_/ /_/\___/_/_/     
 | 
			
		||||
                                                                          
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/authentik
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/authentik
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ___         __  __               __  _ __  
 | 
			
		||||
   /   | __  __/ /_/ /_  ___  ____  / /_(_) /__
 | 
			
		||||
  / /| |/ / / / __/ __ \/ _ \/ __ \/ __/ / //_/
 | 
			
		||||
 / ___ / /_/ / /_/ / / /  __/ / / / /_/ / ,<   
 | 
			
		||||
/_/  |_\__,_/\__/_/ /_/\___/_/ /_/\__/_/_/|_|  
 | 
			
		||||
                                               
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/autobrr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/autobrr
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ___         __        __             
 | 
			
		||||
   /   | __  __/ /_____  / /_  __________
 | 
			
		||||
  / /| |/ / / / __/ __ \/ __ \/ ___/ ___/
 | 
			
		||||
 / ___ / /_/ / /_/ /_/ / /_/ / /  / /    
 | 
			
		||||
/_/  |_\__,_/\__/\____/_.___/_/  /_/     
 | 
			
		||||
                                         
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/baikal
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/baikal
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ____        _ __         __
 | 
			
		||||
   / __ )____ _(_) /______ _/ /
 | 
			
		||||
  / __  / __ `/ / //_/ __ `/ / 
 | 
			
		||||
 / /_/ / /_/ / / ,< / /_/ / /  
 | 
			
		||||
/_____/\__,_/_/_/|_|\__,_/_/   
 | 
			
		||||
                               
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/bazarr
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/bazarr
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ____                             
 | 
			
		||||
   / __ )____ _____  ____ ___________
 | 
			
		||||
  / __  / __ `/_  / / __ `/ ___/ ___/
 | 
			
		||||
 / /_/ / /_/ / / /_/ /_/ / /  / /    
 | 
			
		||||
/_____/\__,_/ /___/\__,_/_/  /_/     
 | 
			
		||||
                                     
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/beszel
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/beszel
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ____                       __
 | 
			
		||||
   / __ )___  _________  ___  / /
 | 
			
		||||
  / __  / _ \/ ___/_  / / _ \/ / 
 | 
			
		||||
 / /_/ /  __(__  ) / /_/  __/ /  
 | 
			
		||||
/_____/\___/____/ /___/\___/_/   
 | 
			
		||||
                                 
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/blocky
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/blocky
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ____  __           __        
 | 
			
		||||
   / __ )/ /___  _____/ /____  __
 | 
			
		||||
  / __  / / __ \/ ___/ //_/ / / /
 | 
			
		||||
 / /_/ / / /_/ / /__/ ,< / /_/ / 
 | 
			
		||||
/_____/_/\____/\___/_/|_|\__, /  
 | 
			
		||||
                        /____/   
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/bookstack
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/bookstack
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ____              __        __             __  
 | 
			
		||||
   / __ )____  ____  / /_______/ /_____ ______/ /__
 | 
			
		||||
  / __  / __ \/ __ \/ //_/ ___/ __/ __ `/ ___/ //_/
 | 
			
		||||
 / /_/ / /_/ / /_/ / ,< (__  ) /_/ /_/ / /__/ ,<   
 | 
			
		||||
/_____/\____/\____/_/|_/____/\__/\__,_/\___/_/|_|  
 | 
			
		||||
                                                   
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/bunkerweb
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/bunkerweb
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ____              __            _       __     __  
 | 
			
		||||
   / __ )__  ______  / /_____  ____| |     / /__  / /_ 
 | 
			
		||||
  / __  / / / / __ \/ //_/ _ \/ ___/ | /| / / _ \/ __ \
 | 
			
		||||
 / /_/ / /_/ / / / / ,< /  __/ /   | |/ |/ /  __/ /_/ /
 | 
			
		||||
/_____/\__,_/_/ /_/_/|_|\___/_/    |__/|__/\___/_.___/ 
 | 
			
		||||
                                                       
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/caddy
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/caddy
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
   ______          __    __     
 | 
			
		||||
  / ____/___ _____/ /___/ /_  __
 | 
			
		||||
 / /   / __ `/ __  / __  / / / /
 | 
			
		||||
/ /___/ /_/ / /_/ / /_/ / /_/ / 
 | 
			
		||||
\____/\__,_/\__,_/\__,_/\__, /  
 | 
			
		||||
                       /____/   
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/calibre-web
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/calibre-web
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
   ______      ___ __                  _       __     __  
 | 
			
		||||
  / ____/___ _/ (_) /_  ________      | |     / /__  / /_ 
 | 
			
		||||
 / /   / __ `/ / / __ \/ ___/ _ \_____| | /| / / _ \/ __ \
 | 
			
		||||
/ /___/ /_/ / / / /_/ / /  /  __/_____/ |/ |/ /  __/ /_/ /
 | 
			
		||||
\____/\__,_/_/_/_.___/_/   \___/      |__/|__/\___/_.___/ 
 | 
			
		||||
                                                          
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/casaos
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/casaos
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
   ______                 ____  _____
 | 
			
		||||
  / ____/___ __________ _/ __ \/ ___/
 | 
			
		||||
 / /   / __ `/ ___/ __ `/ / / /\__ \ 
 | 
			
		||||
/ /___/ /_/ (__  ) /_/ / /_/ /___/ / 
 | 
			
		||||
\____/\__,_/____/\__,_/\____//____/  
 | 
			
		||||
                                     
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/changedetection
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/changedetection
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
   ________                              ____       __            __  _           
 | 
			
		||||
  / ____/ /_  ____ _____  ____ ____     / __ \___  / /____  _____/ /_(_)___  ____ 
 | 
			
		||||
 / /   / __ \/ __ `/ __ \/ __ `/ _ \   / / / / _ \/ __/ _ \/ ___/ __/ / __ \/ __ \
 | 
			
		||||
/ /___/ / / / /_/ / / / / /_/ /  __/  / /_/ /  __/ /_/  __/ /__/ /_/ / /_/ / / / /
 | 
			
		||||
\____/_/ /_/\__,_/_/ /_/\__, /\___/  /_____/\___/\__/\___/\___/\__/_/\____/_/ /_/ 
 | 
			
		||||
                       /____/                                                     
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/channels
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/channels
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
   ________                           __    
 | 
			
		||||
  / ____/ /_  ____ _____  ____  ___  / /____
 | 
			
		||||
 / /   / __ \/ __ `/ __ \/ __ \/ _ \/ / ___/
 | 
			
		||||
/ /___/ / / / /_/ / / / / / / /  __/ (__  ) 
 | 
			
		||||
\____/_/ /_/\__,_/_/ /_/_/ /_/\___/_/____/  
 | 
			
		||||
                                            
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/checkmk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/checkmk
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
        __              __             __  
 | 
			
		||||
  _____/ /_  ___  _____/ /______ ___  / /__
 | 
			
		||||
 / ___/ __ \/ _ \/ ___/ //_/ __ `__ \/ //_/
 | 
			
		||||
/ /__/ / / /  __/ /__/ ,< / / / / / / ,<   
 | 
			
		||||
\___/_/ /_/\___/\___/_/|_/_/ /_/ /_/_/|_|  
 | 
			
		||||
                                           
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/cloudflared
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/cloudflared
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
   ________                ________                    __
 | 
			
		||||
  / ____/ /___  __  ______/ / __/ /___ _________  ____/ /
 | 
			
		||||
 / /   / / __ \/ / / / __  / /_/ / __ `/ ___/ _ \/ __  / 
 | 
			
		||||
/ /___/ / /_/ / /_/ / /_/ / __/ / /_/ / /  /  __/ /_/ /  
 | 
			
		||||
\____/_/\____/\__,_/\__,_/_/ /_/\__,_/_/   \___/\__,_/   
 | 
			
		||||
                                                         
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/cockpit
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/cockpit
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
   ______           __         _ __ 
 | 
			
		||||
  / ____/___  _____/ /______  (_) /_
 | 
			
		||||
 / /   / __ \/ ___/ //_/ __ \/ / __/
 | 
			
		||||
/ /___/ /_/ / /__/ ,< / /_/ / / /_  
 | 
			
		||||
\____/\____/\___/_/|_/ .___/_/\__/  
 | 
			
		||||
                    /_/             
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/commafeed
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/commafeed
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
   ______                                ______              __
 | 
			
		||||
  / ____/___  ____ ___  ____ ___  ____ _/ ____/__  ___  ____/ /
 | 
			
		||||
 / /   / __ \/ __ `__ \/ __ `__ \/ __ `/ /_  / _ \/ _ \/ __  / 
 | 
			
		||||
/ /___/ /_/ / / / / / / / / / / / /_/ / __/ /  __/  __/ /_/ /  
 | 
			
		||||
\____/\____/_/ /_/ /_/_/ /_/ /_/\__,_/_/    \___/\___/\__,_/   
 | 
			
		||||
                                                               
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/crafty-controller
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/crafty-controller
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
   ______           ______              ______            __             ____         
 | 
			
		||||
  / ____/________ _/ __/ /___  __      / ____/___  ____  / /__________  / / /__  _____
 | 
			
		||||
 / /   / ___/ __ `/ /_/ __/ / / /_____/ /   / __ \/ __ \/ __/ ___/ __ \/ / / _ \/ ___/
 | 
			
		||||
/ /___/ /  / /_/ / __/ /_/ /_/ /_____/ /___/ /_/ / / / / /_/ /  / /_/ / / /  __/ /    
 | 
			
		||||
\____/_/   \__,_/_/  \__/\__, /      \____/\____/_/ /_/\__/_/   \____/_/_/\___/_/     
 | 
			
		||||
                        /____/                                                        
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/cronicle
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/cronicle
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
   ______                 _      __   
 | 
			
		||||
  / ____/________  ____  (_)____/ /__ 
 | 
			
		||||
 / /   / ___/ __ \/ __ \/ / ___/ / _ \
 | 
			
		||||
/ /___/ /  / /_/ / / / / / /__/ /  __/
 | 
			
		||||
\____/_/   \____/_/ /_/_/\___/_/\___/ 
 | 
			
		||||
                                      
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/daemonsync
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/daemonsync
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ____                                      _____                 
 | 
			
		||||
   / __ \____ ____  ____ ___  ____  ____     / ___/__  ______  _____
 | 
			
		||||
  / / / / __ `/ _ \/ __ `__ \/ __ \/ __ \    \__ \/ / / / __ \/ ___/
 | 
			
		||||
 / /_/ / /_/ /  __/ / / / / / /_/ / / / /   ___/ / /_/ / / / / /__  
 | 
			
		||||
/_____/\__,_/\___/_/ /_/ /_/\____/_/ /_/   /____/\__, /_/ /_/\___/  
 | 
			
		||||
                                                /____/              
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/dashy
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/dashy
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ____             __         
 | 
			
		||||
   / __ \____ ______/ /_  __  __
 | 
			
		||||
  / / / / __ `/ ___/ __ \/ / / /
 | 
			
		||||
 / /_/ / /_/ (__  ) / / / /_/ / 
 | 
			
		||||
/_____/\__,_/____/_/ /_/\__, /  
 | 
			
		||||
                       /____/   
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/debian
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/debian
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ____       __    _           
 | 
			
		||||
   / __ \___  / /_  (_)___ _____ 
 | 
			
		||||
  / / / / _ \/ __ \/ / __ `/ __ \
 | 
			
		||||
 / /_/ /  __/ /_/ / / /_/ / / / /
 | 
			
		||||
/_____/\___/_.___/_/\__,_/_/ /_/ 
 | 
			
		||||
                                 
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/deconz
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/deconz
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
       __     __________  _   _______
 | 
			
		||||
  ____/ /__  / ____/ __ \/ | / /__  /
 | 
			
		||||
 / __  / _ \/ /   / / / /  |/ /  / / 
 | 
			
		||||
/ /_/ /  __/ /___/ /_/ / /|  /  / /__
 | 
			
		||||
\__,_/\___/\____/\____/_/ |_/  /____/
 | 
			
		||||
                                     
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/deluge
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/deluge
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ____       __               
 | 
			
		||||
   / __ \___  / /_  ______ ____ 
 | 
			
		||||
  / / / / _ \/ / / / / __ `/ _ \
 | 
			
		||||
 / /_/ /  __/ / /_/ / /_/ /  __/
 | 
			
		||||
/_____/\___/_/\__,_/\__, /\___/ 
 | 
			
		||||
                   /____/       
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/docker
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/docker
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ____             __            
 | 
			
		||||
   / __ \____  _____/ /_____  _____
 | 
			
		||||
  / / / / __ \/ ___/ //_/ _ \/ ___/
 | 
			
		||||
 / /_/ / /_/ / /__/ ,< /  __/ /    
 | 
			
		||||
/_____/\____/\___/_/|_|\___/_/     
 | 
			
		||||
                                   
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/dockge
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/dockge
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ____             __            
 | 
			
		||||
   / __ \____  _____/ /______ ____ 
 | 
			
		||||
  / / / / __ \/ ___/ //_/ __ `/ _ \
 | 
			
		||||
 / /_/ / /_/ / /__/ ,< / /_/ /  __/
 | 
			
		||||
/_____/\____/\___/_/|_|\__, /\___/ 
 | 
			
		||||
                      /____/       
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/dotnetaspwebapi
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/dotnetaspwebapi
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ____        __             __     ___   _____ ____     _       __     __       ___    ____  ____
 | 
			
		||||
   / __ \____  / /_____  ___  / /_   /   | / ___// __ \   | |     / /__  / /_     /   |  / __ \/  _/
 | 
			
		||||
  / / / / __ \/ __/ __ \/ _ \/ __/  / /| | \__ \/ /_/ /   | | /| / / _ \/ __ \   / /| | / /_/ // /  
 | 
			
		||||
 / /_/ / /_/ / /_/ / / /  __/ /_   / ___ |___/ / ____/    | |/ |/ /  __/ /_/ /  / ___ |/ ____// /   
 | 
			
		||||
/_____/\____/\__/_/ /_/\___/\__/  /_/  |_/____/_/         |__/|__/\___/_.___/  /_/  |_/_/   /___/   
 | 
			
		||||
                                                                                                    
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/elementsynapse
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/elementsynapse
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ________                          __     _____                                 
 | 
			
		||||
   / ____/ /__  ____ ___  ___  ____  / /_   / ___/__  ______  ____ _____  ________ 
 | 
			
		||||
  / __/ / / _ \/ __ `__ \/ _ \/ __ \/ __/   \__ \/ / / / __ \/ __ `/ __ \/ ___/ _ \
 | 
			
		||||
 / /___/ /  __/ / / / / /  __/ / / / /_    ___/ / /_/ / / / / /_/ / /_/ (__  )  __/
 | 
			
		||||
/_____/_/\___/_/ /_/ /_/\___/_/ /_/\__/   /____/\__, /_/ /_/\__,_/ .___/____/\___/ 
 | 
			
		||||
                                               /____/           /_/                
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/emby
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/emby
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ______          __         
 | 
			
		||||
   / ____/___ ___  / /_  __  __
 | 
			
		||||
  / __/ / __ `__ \/ __ \/ / / /
 | 
			
		||||
 / /___/ / / / / / /_/ / /_/ / 
 | 
			
		||||
/_____/_/ /_/ /_/_.___/\__, /  
 | 
			
		||||
                      /____/   
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/emqx
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/emqx
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ________  _______   _  __
 | 
			
		||||
   / ____/  |/  / __ \ | |/ /
 | 
			
		||||
  / __/ / /|_/ / / / / |   / 
 | 
			
		||||
 / /___/ /  / / /_/ / /   |  
 | 
			
		||||
/_____/_/  /_/\___\_\/_/|_|  
 | 
			
		||||
                             
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/ersatztv
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/ersatztv
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ______                __      _______    __
 | 
			
		||||
   / ____/_____________ _/ /_____/_  __/ |  / /
 | 
			
		||||
  / __/ / ___/ ___/ __ `/ __/_  / / /  | | / / 
 | 
			
		||||
 / /___/ /  (__  ) /_/ / /_  / /_/ /   | |/ /  
 | 
			
		||||
/_____/_/  /____/\__,_/\__/ /___/_/    |___/   
 | 
			
		||||
                                               
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/esphome
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/esphome
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ___________ ____  __  __                   
 | 
			
		||||
   / ____/ ___// __ \/ / / /___  ____ ___  ___ 
 | 
			
		||||
  / __/  \__ \/ /_/ / /_/ / __ \/ __ `__ \/ _ \
 | 
			
		||||
 / /___ ___/ / ____/ __  / /_/ / / / / / /  __/
 | 
			
		||||
/_____//____/_/   /_/ /_/\____/_/ /_/ /_/\___/ 
 | 
			
		||||
                                               
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/evcc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/evcc
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
                      
 | 
			
		||||
  ___ _   ____________
 | 
			
		||||
 / _ \ | / / ___/ ___/
 | 
			
		||||
/  __/ |/ / /__/ /__  
 | 
			
		||||
\___/|___/\___/\___/  
 | 
			
		||||
                      
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/fenrus
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/fenrus
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ______                          
 | 
			
		||||
   / ____/__  ____  _______  _______
 | 
			
		||||
  / /_  / _ \/ __ \/ ___/ / / / ___/
 | 
			
		||||
 / __/ /  __/ / / / /  / /_/ (__  ) 
 | 
			
		||||
/_/    \___/_/ /_/_/   \__,_/____/  
 | 
			
		||||
                                    
 | 
			
		||||
							
								
								
									
										6
									
								
								ct/headers/fhem
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								ct/headers/fhem
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
    ________  __________  ___
 | 
			
		||||
   / ____/ / / / ____/  |/  /
 | 
			
		||||
  / /_  / /_/ / __/ / /|_/ / 
 | 
			
		||||
 / __/ / __  / /___/ /  / /  
 | 
			
		||||
/_/   /_/ /_/_____/_/  /_/   
 | 
			
		||||
                             
 | 
			
		||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user