mirror of
https://github.com/tteck/Proxmox.git
synced 2025-02-19 12:56:01 +00:00
Compare commits
910 Commits
928d13cb71
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
930760840c | ||
|
|
9ef8058194 | ||
|
|
7452b47c9f | ||
|
|
f4c9cc1156 | ||
|
|
38d3f2c868 | ||
|
|
57b9cde44d | ||
|
|
f26410759a | ||
|
|
d22879b5e9 | ||
|
|
8cdb218e38 | ||
|
|
409936a9fc | ||
|
|
eceb52a67a | ||
|
|
2d3cae43cb | ||
|
|
b603da7778 | ||
|
|
902aee0c0b | ||
|
|
6881f07437 | ||
|
|
06742f7ef5 | ||
|
|
32cd74e49f | ||
|
|
28896707bc | ||
|
|
0340aec142 | ||
|
|
8a21f6e7f0 | ||
|
|
77b06ee3f9 | ||
|
|
399786c5bd | ||
|
|
e4912cec78 | ||
|
|
846d75dca1 | ||
|
|
af0376f25b | ||
|
|
5ae25108ef | ||
|
|
55c8d1187b | ||
|
|
9a5d43e4d3 | ||
|
|
bb2c143cc8 | ||
|
|
2a844122d0 | ||
|
|
540fcd24f2 | ||
|
|
c2c48b52c7 | ||
|
|
744e183eea | ||
|
|
468a5d367d | ||
|
|
edf0753120 | ||
|
|
64eab60a4c | ||
|
|
5c711293b9 | ||
|
|
1d83562661 | ||
|
|
f5978717d4 | ||
|
|
7176eaa99d | ||
|
|
2184eab0c5 | ||
|
|
612979a040 | ||
|
|
b4732cd8e9 | ||
|
|
0ab3151825 | ||
|
|
226697f810 | ||
|
|
aadcb5b264 | ||
|
|
c9f7f6447d | ||
|
|
34917b15f5 | ||
|
|
d11ad56158 | ||
|
|
824710ddd4 | ||
|
|
8206f0b3dc | ||
|
|
30a5147fba | ||
|
|
09721e7cae | ||
|
|
50ce6fd6df | ||
|
|
e9940cc535 | ||
|
|
087d635fd4 | ||
|
|
f75fbc8d50 | ||
|
|
128b076731 | ||
|
|
95dbf93591 | ||
|
|
9a0cb6b8f5 | ||
|
|
dbcb900da4 | ||
|
|
cac29c8f5c | ||
|
|
1fb144306c | ||
|
|
5b22df5c8e | ||
|
|
e2e4784136 | ||
|
|
e995fb4f30 | ||
|
|
dd3a32986a | ||
|
|
7d26b42163 | ||
|
|
ec24441a2a | ||
|
|
f3408ed4f3 | ||
|
|
efd6d74edb | ||
|
|
dbc4ce0231 | ||
|
|
e643fe6699 | ||
|
|
fe9736fd38 | ||
|
|
1ec52d08a3 | ||
|
|
32c24f69a7 | ||
|
|
3e2dc1cc1c | ||
|
|
7ae803092e | ||
|
|
6ead7e1e5f | ||
|
|
e705fb6805 | ||
|
|
23b391b21d | ||
|
|
e377e065a4 | ||
|
|
3237e6aced | ||
|
|
22e7ff1f17 | ||
|
|
badff00ee2 | ||
|
|
0665e77a1c | ||
|
|
6e7b5d8022 | ||
|
|
11c5f518a0 | ||
|
|
0618c89147 | ||
|
|
b7baf2d1ed | ||
|
|
b323313d6e | ||
|
|
e3160b56af | ||
|
|
d442fa49f5 | ||
|
|
7e061a112f | ||
|
|
221ed9d260 | ||
|
|
8847505782 | ||
|
|
a9042ffdc1 | ||
|
|
301fc39a85 | ||
|
|
5dbb000070 | ||
|
|
d9789d1685 | ||
|
|
80f678a2b3 | ||
|
|
f5d1d21ac6 | ||
|
|
8d8b152f6f | ||
|
|
79e0c29e33 | ||
|
|
af5218d0a1 | ||
|
|
6fbb8ab4a2 | ||
|
|
36805ae6bb | ||
|
|
4c83a790ac | ||
|
|
b7fe85cd5b | ||
|
|
a10a0f09dd | ||
|
|
e9ec4c4f8e | ||
|
|
741f38fe2f | ||
|
|
eb881fefa6 | ||
|
|
6bee7e291e | ||
|
|
5420269e97 | ||
|
|
2554560082 | ||
|
|
6f98a65692 | ||
|
|
72b3876fee | ||
|
|
542a8a619b | ||
|
|
97d48dd4b7 | ||
|
|
6bb46a5365 | ||
|
|
05062bab40 | ||
|
|
71107fedc4 | ||
|
|
8335fbd3d5 | ||
|
|
bb6759aae8 | ||
|
|
9aec831f92 | ||
|
|
f2966ced7f | ||
|
|
6191d8e792 | ||
|
|
f2937febe6 | ||
|
|
f2fe361224 | ||
|
|
87a8d9c2d8 | ||
|
|
9a17e03a38 | ||
|
|
015e8f4393 | ||
|
|
1ff0979cee | ||
|
|
1a14c87209 | ||
|
|
4ead590cf4 | ||
|
|
5f34c2c7c8 | ||
|
|
f2662027a8 | ||
|
|
6a02ba1335 | ||
|
|
e140642b1f | ||
|
|
61b0ca67cc | ||
|
|
649590eea7 | ||
|
|
da30cd5c1e | ||
|
|
ae7217048f | ||
|
|
1ea00c4775 | ||
|
|
72d3d64a48 | ||
|
|
085f1965a3 | ||
|
|
9543941d07 | ||
|
|
695793a151 | ||
|
|
93ed909fff | ||
|
|
abe337e52d | ||
|
|
8ace224138 | ||
|
|
620b652864 | ||
|
|
fa2e4786af | ||
|
|
e4d342c819 | ||
|
|
c567efe374 | ||
|
|
27bfa24cfe | ||
|
|
a773864a1a | ||
|
|
fe3b17b59d | ||
|
|
02468cc44d | ||
|
|
1fd5114183 | ||
|
|
80feaf6fa5 | ||
|
|
b6890ccfbe | ||
|
|
3bd32110d9 | ||
|
|
dc1adaba01 | ||
|
|
b14a33ffac | ||
|
|
07df1c8373 | ||
|
|
0ee61aa092 | ||
|
|
389b03568d | ||
|
|
c502e413de | ||
|
|
30850b67f9 | ||
|
|
73eaf2e6a5 | ||
|
|
6d89c2de12 | ||
|
|
1e5f4b152e | ||
|
|
4cddfa3b12 | ||
|
|
4d9d7a8242 | ||
|
|
b129cb1767 | ||
|
|
07895a7c23 | ||
|
|
103ac46a9f | ||
|
|
5fb1be4e41 | ||
|
|
86a5c8c1ba | ||
|
|
c926ed1fbc | ||
|
|
ef55baf25a | ||
|
|
2d6f2d0e94 | ||
|
|
f23b3cea13 | ||
|
|
030d477cc3 | ||
|
|
cb8318bf08 | ||
|
|
e680dab28f | ||
|
|
c9e271dac7 | ||
|
|
75c98d8e68 | ||
|
|
7f66b187fd | ||
|
|
6cb0bc59d9 | ||
|
|
96c8062405 | ||
|
|
4696040e93 | ||
|
|
df3047e295 | ||
|
|
158c309d71 | ||
|
|
253da053fe | ||
|
|
3fc4aa4a6e | ||
|
|
9ad778ca52 | ||
|
|
9d76662d76 | ||
|
|
fef858ed7b | ||
|
|
4844a00316 | ||
|
|
d5e66a25ff | ||
|
|
2281a20b75 | ||
|
|
21abd09052 | ||
|
|
7d77be87d5 | ||
|
|
bb0a39e3c4 | ||
|
|
561419f1a2 | ||
|
|
723365a79d | ||
|
|
9d579083bf | ||
|
|
de1a4b0914 | ||
|
|
aec826bbb3 | ||
|
|
9db6aa8fbb | ||
|
|
bfa2b0c0ee | ||
|
|
52bfc1725f | ||
|
|
0a33d1739e | ||
|
|
28085bb2e7 | ||
|
|
631ef46466 | ||
|
|
604b7ee628 | ||
|
|
72dfc20090 | ||
|
|
aca97a3da3 | ||
|
|
e4ad002ce5 | ||
|
|
448cf93163 | ||
|
|
41b63495db | ||
|
|
08debd9442 | ||
|
|
a28eb2fd46 | ||
|
|
3c41499074 | ||
|
|
88de3536ab | ||
|
|
23ebc32489 | ||
|
|
2782502e06 | ||
|
|
9c88dcdbd6 | ||
|
|
e428bb8604 | ||
|
|
daa896894d | ||
|
|
6d1cc92b59 | ||
|
|
92452db3e5 | ||
|
|
d26e474ccb | ||
|
|
b66590f976 | ||
|
|
4a1e02a9ab | ||
|
|
ddb6551565 | ||
|
|
20fb0ce808 | ||
|
|
c4b6ea33aa | ||
|
|
a5fece4292 | ||
|
|
232919d6be | ||
|
|
d21760cc65 | ||
|
|
341e873eba | ||
|
|
d073535346 | ||
|
|
b567bd848b | ||
|
|
bfce73c0ed | ||
|
|
880a0f52ec | ||
|
|
026b0f4105 | ||
|
|
b108b6e373 | ||
|
|
fabbe5925b | ||
|
|
5e561a1b78 | ||
|
|
a35e23916e | ||
|
|
f59c1227be | ||
|
|
32ae8c1f4f | ||
|
|
2c58bc987c | ||
|
|
136f667126 | ||
|
|
ae49faec93 | ||
|
|
b73557c14f | ||
|
|
8db7e57819 | ||
|
|
d18e37166d | ||
|
|
80fb3ee841 | ||
|
|
6c155c7463 | ||
|
|
2febf2c39b | ||
|
|
cfa1b2e04d | ||
|
|
9deea7a983 | ||
|
|
00a8f07170 | ||
|
|
9cbd0f3037 | ||
|
|
bf40c30fff | ||
|
|
e3da97472e | ||
|
|
2446b6599f | ||
|
|
19fef65ac0 | ||
|
|
8892fd960f | ||
|
|
22c7801217 | ||
|
|
3a65f89cab | ||
|
|
186f186e8b | ||
|
|
8562dd1b93 | ||
|
|
dad9da5e67 | ||
|
|
496b9bf92c | ||
|
|
6596850918 | ||
|
|
fc5ea73e45 | ||
|
|
f64e8ef47b | ||
|
|
e6b86f3d47 | ||
|
|
7daad62fad | ||
|
|
15be0761ff | ||
|
|
5ef5f0086e | ||
|
|
85418addac | ||
|
|
ef27851d31 | ||
|
|
5fcae037c2 | ||
|
|
eab4160c33 | ||
|
|
6e6a86aaa9 | ||
|
|
39ea1d4a20 | ||
|
|
d3f71d078d | ||
|
|
c29768de51 | ||
|
|
8fd1727fa8 | ||
|
|
1769a3f40b | ||
|
|
8322aede45 | ||
|
|
59b2d529a2 | ||
|
|
7d142d593e | ||
|
|
ecb4294a18 | ||
|
|
482f60f90a | ||
|
|
a078adfaea | ||
|
|
122271dd34 | ||
|
|
946fad73b9 | ||
|
|
9b42be526d | ||
|
|
00f7e0b287 | ||
|
|
2ec2831d5f | ||
|
|
eb9bff22c3 | ||
|
|
943be5301a | ||
|
|
59c78c03ac | ||
|
|
5d0e18634f | ||
|
|
89aba15275 | ||
|
|
8a52575039 | ||
|
|
344d6ac008 | ||
|
|
a40795a5d4 | ||
|
|
a87b6c8a2b | ||
|
|
3639db4e94 | ||
|
|
4a135f4ecd | ||
|
|
be8dbcc094 | ||
|
|
39313455e6 | ||
|
|
d81fc402a0 | ||
|
|
8228d24027 | ||
|
|
26fd770db5 | ||
|
|
9c475a0208 | ||
|
|
72d70d7842 | ||
|
|
dafe17ac95 | ||
|
|
8a61cad71f | ||
|
|
53b24ef7b7 | ||
|
|
54bb719223 | ||
|
|
dbbc2ed0a4 | ||
|
|
3885ca0590 | ||
|
|
2131ee2c3b | ||
|
|
0e284df495 | ||
|
|
5886f1240e | ||
|
|
d3ff7c36e1 | ||
|
|
8caf9598b4 | ||
|
|
b6f8e46eaa | ||
|
|
ea18643069 | ||
|
|
7dca71d296 | ||
|
|
3a455a9e9e | ||
|
|
c2fe080307 | ||
|
|
814a915819 | ||
|
|
421bccfee8 | ||
|
|
4020e1b6ae | ||
|
|
1a937b10f2 | ||
|
|
60951ff58f | ||
|
|
5e5e2c96a5 | ||
|
|
7ea8bdfb95 | ||
|
|
79b138cc6d | ||
|
|
fd114369e9 | ||
|
|
5bc0ddda22 | ||
|
|
9a3a05f75a | ||
|
|
21c1240c8c | ||
|
|
9ba59e0b56 | ||
|
|
0a35b1a5bb | ||
|
|
c10903942f | ||
|
|
7d224a726f | ||
|
|
32375279fd | ||
|
|
b40696c41a | ||
|
|
cd1d295ae1 | ||
|
|
f396b6153f | ||
|
|
20a1d1ea69 | ||
|
|
4a2447bed6 | ||
|
|
7babad2098 | ||
|
|
5ed048c9fa | ||
|
|
3c79305bca | ||
|
|
d280514505 | ||
|
|
fc0fbeea70 | ||
|
|
99f50a5bc2 | ||
|
|
cabfa3ba2f | ||
|
|
df89bf0cfb | ||
|
|
2f5c95d0ec | ||
|
|
d5c0d165da | ||
|
|
5e515c1e23 | ||
|
|
fc9dff220b | ||
|
|
37f42468ba | ||
|
|
0812983a64 | ||
|
|
2e268c2f49 | ||
|
|
3dd1da2cf1 | ||
|
|
44fc9b43cc | ||
|
|
faf133ffed | ||
|
|
22c03c89d3 | ||
|
|
9bbe81fe42 | ||
|
|
e842d2ec3d | ||
|
|
17f54c5f8b | ||
|
|
ad1cbf085e | ||
|
|
0fb8716ebe | ||
|
|
a95657947d | ||
|
|
7446dc4c73 | ||
|
|
7ba1459286 | ||
|
|
37ac28da06 | ||
|
|
3dce2fb7dd | ||
|
|
80046821af | ||
|
|
47b6fd5e8a | ||
|
|
d5031be729 | ||
|
|
a94bc0234f | ||
|
|
574226d993 | ||
|
|
0bd8035461 | ||
|
|
acfb3eee04 | ||
|
|
ea135820e3 | ||
|
|
5efcac2bc5 | ||
|
|
e5788637b7 | ||
|
|
31ae6d829c | ||
|
|
14798991b4 | ||
|
|
0e24893e52 | ||
|
|
b6e83bcae2 | ||
|
|
326f9f500b | ||
|
|
6b33fdd9f5 | ||
|
|
d468fc6c1f | ||
|
|
73291211a8 | ||
|
|
7c5f4335fd | ||
|
|
2f6ed33575 | ||
|
|
d8c14cc5fe | ||
|
|
3af40c5238 | ||
|
|
bf08d0a435 | ||
|
|
e746d7c340 | ||
|
|
07585658b0 | ||
|
|
2a8a65e754 | ||
|
|
b503418cdb | ||
|
|
8c09fafa6e | ||
|
|
08032f165f | ||
|
|
dc01c8bdcd | ||
|
|
8b0400bd94 | ||
|
|
22780bbf58 | ||
|
|
0cd751d75c | ||
|
|
1b842f22cf | ||
|
|
ef87f69fa0 | ||
|
|
a4fed89490 | ||
|
|
b91c8a79c5 | ||
|
|
906b6c07d2 | ||
|
|
990e299b35 | ||
|
|
26ba9ea323 | ||
|
|
9dac75a48b | ||
|
|
ca8b655c81 | ||
|
|
db157d02e4 | ||
|
|
36fd846601 | ||
|
|
6c4e2aa7fe | ||
|
|
48ae95bdea | ||
|
|
4d3afc012b | ||
|
|
a04fd986dc | ||
|
|
b3cf19141f | ||
|
|
12173c3d14 | ||
|
|
368e8f2d58 | ||
|
|
218c3b2cc9 | ||
|
|
3fb1a23cd3 | ||
|
|
9a3f19eece | ||
|
|
f1ef008fcc | ||
|
|
d80084b9a6 | ||
|
|
549f848410 | ||
|
|
4bce8ff991 | ||
|
|
5ecfd4e1b5 | ||
|
|
f8b5fbe3de | ||
|
|
afe90a8417 | ||
|
|
9483d83c5e | ||
|
|
91985329f6 | ||
|
|
0e01ceb460 | ||
|
|
12bd10bef3 | ||
|
|
bd56416898 | ||
|
|
d46076cab9 | ||
|
|
bd94aad7fa | ||
|
|
ef4d18f870 | ||
|
|
5204ad7e16 | ||
|
|
d0439cde1c | ||
|
|
c13b868dda | ||
|
|
0a392dc70a | ||
|
|
c1a3b142b0 | ||
|
|
98aaaf5bd1 | ||
|
|
497994381f | ||
|
|
ee97a5f734 | ||
|
|
f830b228a8 | ||
|
|
d5b91a44d0 | ||
|
|
fc997a9f36 | ||
|
|
1aff71d17f | ||
|
|
4a36166929 | ||
|
|
0209c9a7cd | ||
|
|
c3cd3636e6 | ||
|
|
9b96a64401 | ||
|
|
450c2a6d24 | ||
|
|
7924744bc2 | ||
|
|
897c7bd867 | ||
|
|
e62f657d31 | ||
|
|
aa96a47efc | ||
|
|
afd070a691 | ||
|
|
3e6c0944fb | ||
|
|
b950a06b5f | ||
|
|
cfc6ca13ef | ||
|
|
5793283ea4 | ||
|
|
830fddb2a9 | ||
|
|
a5c5628bed | ||
|
|
831d62390d | ||
|
|
3c463d4ce1 | ||
|
|
410794f055 | ||
|
|
b9cc6a09a3 | ||
|
|
e4d8b62452 | ||
|
|
43ee7501ad | ||
|
|
dc222ec251 | ||
|
|
4a1ccb5d3d | ||
|
|
6cb9e1db0a | ||
|
|
bb965d681c | ||
|
|
c349da6859 | ||
|
|
7faf0443b1 | ||
|
|
39d8721d36 | ||
|
|
817d51a4ee | ||
|
|
1320434a1a | ||
|
|
c476436a9d | ||
|
|
64a33de118 | ||
|
|
1ed8a8b5b3 | ||
|
|
f5ceaccd6d | ||
|
|
c820596431 | ||
|
|
ee8fea07be | ||
|
|
ace4a8e43f | ||
|
|
adb7bc55f4 | ||
|
|
e13303d2fc | ||
|
|
46be5a9b74 | ||
|
|
bd029543c8 | ||
|
|
f041d5edea | ||
|
|
90003e72f3 | ||
|
|
cae357cc26 | ||
|
|
169201a751 | ||
|
|
01c54ab916 | ||
|
|
869a95d221 | ||
|
|
a75f383568 | ||
|
|
6c3c39b79c | ||
|
|
90f696461e | ||
|
|
5d6cec1dd7 | ||
|
|
39ac55d024 | ||
|
|
51b39f269b | ||
|
|
93aa096169 | ||
|
|
fff310fe16 | ||
|
|
a07e2e9dc6 | ||
|
|
0ea0ee56f4 | ||
|
|
0f9d3dea8a | ||
|
|
38c144951f | ||
|
|
d22dd105fb | ||
|
|
aacc2b76e4 | ||
|
|
1672c7fc0e | ||
|
|
ccc91c0337 | ||
|
|
95b7607d4e | ||
|
|
8895888df2 | ||
|
|
4883cd7afe | ||
|
|
e857886838 | ||
|
|
afe93a2b48 | ||
|
|
105fa6e8c4 | ||
|
|
8f243c444e | ||
|
|
b2b32c826e | ||
|
|
7d7dd643fa | ||
|
|
6280950c31 | ||
|
|
b9a45ab5a6 | ||
|
|
781a209401 | ||
|
|
faf98bc1f8 | ||
|
|
8651919e59 | ||
|
|
18bdaad109 | ||
|
|
ef6abf4bd6 | ||
|
|
c828d38ba4 | ||
|
|
93f791e592 | ||
|
|
3ff48e3dae | ||
|
|
f20d65a606 | ||
|
|
dc6c21a85f | ||
|
|
c073351b4c | ||
|
|
cfd4c979a1 | ||
|
|
bf4a04528b | ||
|
|
c042b7c527 | ||
|
|
67cad1583b | ||
|
|
1fb93b326f | ||
|
|
7ebc6ea84f | ||
|
|
f17592cfc7 | ||
|
|
80482414c4 | ||
|
|
dafa19a608 | ||
|
|
bdb7126a38 | ||
|
|
4ccf823d7a | ||
|
|
82b6e743f1 | ||
|
|
9623058274 | ||
|
|
486041a4d0 | ||
|
|
b7051d1fc0 | ||
|
|
7a72c82ece | ||
|
|
337c1c700a | ||
|
|
e3b4543ef5 | ||
|
|
da964fcacc | ||
|
|
45205da9a6 | ||
|
|
6f6d83c261 | ||
|
|
ff3216aa92 | ||
|
|
fb4fdab433 | ||
|
|
39a1c11940 | ||
|
|
00f661c9f5 | ||
|
|
07a3a8aa79 | ||
|
|
77c92e0102 | ||
|
|
b6b1e8db4a | ||
|
|
049a8096d3 | ||
|
|
9cfad87e3b | ||
|
|
9fc3901444 | ||
|
|
22d755d66f | ||
|
|
6d296e0fdf | ||
|
|
dbe21ab539 | ||
|
|
edbaa1fbdc | ||
|
|
4efb41620c | ||
|
|
95573a7285 | ||
|
|
a256d4f9b6 | ||
|
|
42a256ca0e | ||
|
|
9f8c93a416 | ||
|
|
02efa7c07a | ||
|
|
f984003ea8 | ||
|
|
f956428321 | ||
|
|
170066a73b | ||
|
|
42bd22d96d | ||
|
|
9c19734b5b | ||
|
|
4fecdcaa6a | ||
|
|
de9beedd52 | ||
|
|
a38c9f84e0 | ||
|
|
2ef0f9f5c6 | ||
|
|
9c0f6b6a0c | ||
|
|
a6e5eefb34 | ||
|
|
a9742f18cd | ||
|
|
594dc7e19c | ||
|
|
f77d5f01fb | ||
|
|
ba68b641de | ||
|
|
0e02de596f | ||
|
|
38bca8fe17 | ||
|
|
98ee62bca0 | ||
|
|
c52eec1a8e | ||
|
|
1ccb2de7f6 | ||
|
|
a6add9a727 | ||
|
|
112353334d | ||
|
|
55175f9b31 | ||
|
|
1cded8c053 | ||
|
|
2847d9cc9a | ||
|
|
932b69a8c4 | ||
|
|
fe0b379ed1 | ||
|
|
466fae49a3 | ||
|
|
9f184bd9c9 | ||
|
|
463641e544 | ||
|
|
f74e5e9a11 | ||
|
|
05c3945097 | ||
|
|
d127e4dfeb | ||
|
|
e471e0f162 | ||
|
|
43c369f3d2 | ||
|
|
957aaf8fa1 | ||
|
|
6f7427ff0e | ||
|
|
cc7d0920d5 | ||
|
|
3ffdd988f2 | ||
|
|
306f2f4121 | ||
|
|
b213673986 | ||
|
|
4103d40622 | ||
|
|
3bcf2cece6 | ||
|
|
2e36b903ad | ||
|
|
d01a18dbaf | ||
|
|
4be1d23dcd | ||
|
|
ac34991ea7 | ||
|
|
6dcc29afa7 | ||
|
|
8ee221974b | ||
|
|
3233fbf5f5 | ||
|
|
980fb26b41 | ||
|
|
3817e9372f | ||
|
|
6c9f829ee9 | ||
|
|
6e3e49337b | ||
|
|
35837f056d | ||
|
|
a16f31bbca | ||
|
|
90463f5aaf | ||
|
|
f956273fc5 | ||
|
|
4ba3233dc0 | ||
|
|
597162b0a8 | ||
|
|
21d0e96b56 | ||
|
|
98e8955ec1 | ||
|
|
23e6b80a9e | ||
|
|
e1e0b4af9e | ||
|
|
6445e0eac3 | ||
|
|
d5d314e5eb | ||
|
|
c0ca12e712 | ||
|
|
3b1dd2efc0 | ||
|
|
b6f8d7f624 | ||
|
|
cff9b233c7 | ||
|
|
d65fd07f50 | ||
|
|
fe416bc6ff | ||
|
|
f25189933d | ||
|
|
2f836f4e6d | ||
|
|
12b0a0bf50 | ||
|
|
018ab69a33 | ||
|
|
a807d87e84 | ||
|
|
8e129001c7 | ||
|
|
31b7a82094 | ||
|
|
d467d4ce5f | ||
|
|
32904ccfed | ||
|
|
9f32d30f6b | ||
|
|
59dfb89db7 | ||
|
|
c5ddb590d7 | ||
|
|
6c5503b500 | ||
|
|
1657890c8e | ||
|
|
6d9d710de8 | ||
|
|
8a72055ebe | ||
|
|
8e76d536d8 | ||
|
|
da027417e9 | ||
|
|
75532e028c | ||
|
|
2fa12a1b97 | ||
|
|
1d6c0acf0d | ||
|
|
aed9fdee7f | ||
|
|
39586380af | ||
|
|
3fdffb6540 | ||
|
|
e1ac6d87f6 | ||
|
|
3e01ebf221 | ||
|
|
7654134e5e | ||
|
|
9e2064b665 | ||
|
|
d503898b77 | ||
|
|
f0da879ae6 | ||
|
|
a9b9f17aa3 | ||
|
|
66c685425f | ||
|
|
bbb26ca3fc | ||
|
|
6037d381ef | ||
|
|
8d87cc6aaa | ||
|
|
2dffbc92c8 | ||
|
|
019a80d7a1 | ||
|
|
58b75e0dd8 | ||
|
|
6a77af66a4 | ||
|
|
e8fcc7ec3d | ||
|
|
80b2392f8e | ||
|
|
46cc3fe985 | ||
|
|
e2bb08fcf7 | ||
|
|
89da288a7f | ||
|
|
74b2a1bf2a | ||
|
|
47769455a7 | ||
|
|
16070912ba | ||
|
|
e15d82fb7c | ||
|
|
ee82bc777d | ||
|
|
f38cfcd002 | ||
|
|
dfb691ebbc | ||
|
|
afb664eadc | ||
|
|
8e71d636ef | ||
|
|
e5010e747b | ||
|
|
b12a98e5a3 | ||
|
|
4ea5186921 | ||
|
|
78bc2006bc | ||
|
|
b58ae2b892 | ||
|
|
f14b6f49d7 | ||
|
|
a4a692f449 | ||
|
|
02afb23aed | ||
|
|
8b03579df9 | ||
|
|
1edd9bfb39 | ||
|
|
87cee4cd57 | ||
|
|
6e0f374285 | ||
|
|
d9736097bb | ||
|
|
64bf64ff18 | ||
|
|
321660487d | ||
|
|
183340bc85 | ||
|
|
ea1e30dfa9 | ||
|
|
8bbb33b97b | ||
|
|
a6b415bc36 | ||
|
|
c7e4f370c6 | ||
|
|
912f0e01ba | ||
|
|
511fd50ebb | ||
|
|
7b1738ca7b | ||
|
|
9e7b96e9df | ||
|
|
89d9b9ca9f | ||
|
|
55a107b29f | ||
|
|
57d06ad2be | ||
|
|
05dc537124 | ||
|
|
dd4d449c95 | ||
|
|
e5ec531d4f | ||
|
|
9cad7288c9 | ||
|
|
0567a46afd | ||
|
|
7f02d0e51b | ||
|
|
7759ecf7dd | ||
|
|
d77cffd006 | ||
|
|
0c963550c4 | ||
|
|
58f69adbd8 | ||
|
|
b88dc13383 | ||
|
|
a31a44b271 | ||
|
|
ae79d3a332 | ||
|
|
526b5e7b54 | ||
|
|
76d43006d6 | ||
|
|
966517ef44 | ||
|
|
50872c6d9f | ||
|
|
b1974f5e0e | ||
|
|
6dc6d3cb14 | ||
|
|
bd94b15234 | ||
|
|
5860f048fa | ||
|
|
e845685b0c | ||
|
|
f5f28231a7 | ||
|
|
2d01721a75 | ||
|
|
9d9620249f | ||
|
|
ffb58a5111 | ||
|
|
c6b13d0a36 | ||
|
|
57fca777b6 | ||
|
|
03fbdbe74f | ||
|
|
27adffcbcb | ||
|
|
0b604d204a | ||
|
|
f3e3958299 | ||
|
|
038f70f198 | ||
|
|
998235e92d | ||
|
|
43de9ca99f | ||
|
|
8752a66c03 | ||
|
|
8a05729593 | ||
|
|
6a0b31aee1 | ||
|
|
26036763f7 | ||
|
|
fc41d79db4 | ||
|
|
779849f337 | ||
|
|
35bcc0e894 | ||
|
|
71ca43c7a2 | ||
|
|
c0e3edc0c9 | ||
|
|
47b581ee38 | ||
|
|
8456deb1f8 | ||
|
|
f4bbf3bac0 | ||
|
|
ca280c5fac | ||
|
|
e23f2c60f8 | ||
|
|
35b57f4555 | ||
|
|
2171405dc6 | ||
|
|
25a9708fe3 | ||
|
|
a4be233953 | ||
|
|
4aa5e12268 | ||
|
|
822299b610 | ||
|
|
9478fffd5a | ||
|
|
b082f8a08e | ||
|
|
b7bfe7df14 | ||
|
|
05c8093bd7 | ||
|
|
ceb3a131bf | ||
|
|
a804d47d2d | ||
|
|
75bcbacd9c | ||
|
|
be77d96cce | ||
|
|
147d0ac8db | ||
|
|
e880a9d8db | ||
|
|
ccadb0d92e | ||
|
|
eb7491c6c1 | ||
|
|
d806d87cfd | ||
|
|
faad7f25cc | ||
|
|
a5b3aab72e | ||
|
|
8d55efd704 | ||
|
|
94cf9da7a1 | ||
|
|
c702652a00 | ||
|
|
86da4aaabb | ||
|
|
c7cf925187 | ||
|
|
8ce0ad13ab | ||
|
|
13ebab3997 | ||
|
|
0002741cde | ||
|
|
1ccac3050b | ||
|
|
d514c84193 | ||
|
|
15b8d2ec16 | ||
|
|
c65bd939eb | ||
|
|
4d06a6019b | ||
|
|
12454bdba7 | ||
|
|
5d64448ac2 | ||
|
|
966ab2d26e | ||
|
|
f5a1b23862 | ||
|
|
1af3b37dd2 | ||
|
|
25f88d586c | ||
|
|
453604d1b6 | ||
|
|
749639b1f0 | ||
|
|
3093af9b4f | ||
|
|
ffd2fc3b86 | ||
|
|
302368a912 | ||
|
|
d5211aedec | ||
|
|
4164d42b7c | ||
|
|
e638845ffa | ||
|
|
1d5a3ddaca | ||
|
|
84c404e632 | ||
|
|
37d75286e0 | ||
|
|
dcd35adf71 | ||
|
|
db3fe0e9ad | ||
|
|
21cdc8306a | ||
|
|
1910de6568 | ||
|
|
5d6007cdd9 | ||
|
|
f674b8af03 | ||
|
|
9f84dbf1bd | ||
|
|
e81d51399c | ||
|
|
be47eb1039 | ||
|
|
c0856c0d0c | ||
|
|
f267ee196e | ||
|
|
ee3b69fffe | ||
|
|
47bc910e8f | ||
|
|
80200dc39d | ||
|
|
345346118b | ||
|
|
236f90a1e0 | ||
|
|
57507a583c | ||
|
|
465996e7a2 | ||
|
|
5bbfe8812e | ||
|
|
2ce1c183f4 | ||
|
|
9fb338f6ea | ||
|
|
ba8b38caeb | ||
|
|
a4ac3e7065 | ||
|
|
e0f8e23fd7 | ||
|
|
a1deedd066 | ||
|
|
65970a5c53 | ||
|
|
65cf479b99 | ||
|
|
bfa4cd815e | ||
|
|
fb308e2bfd | ||
|
|
36ab1df27d | ||
|
|
082cf8ae6a | ||
|
|
ac9a98df8c | ||
|
|
4021d7912a | ||
|
|
201f95fe88 | ||
|
|
d09f40cfb5 | ||
|
|
84b91141ff | ||
|
|
b054b86bf8 | ||
|
|
173b618fc8 | ||
|
|
0500158727 | ||
|
|
f4b7aa6e4d | ||
|
|
5ed56e64d7 | ||
|
|
72de387b5c | ||
|
|
29e012d282 | ||
|
|
65a9ed0aea | ||
|
|
74c47c8b07 | ||
|
|
661411d8e8 | ||
|
|
8d2e215c96 | ||
|
|
2a2dd14c9a | ||
|
|
f7ecf00285 | ||
|
|
abac9a1952 | ||
|
|
8a76e0b0d3 | ||
|
|
67fa640694 | ||
|
|
1597f560c7 | ||
|
|
702dbc7bba | ||
|
|
9d5d7ed346 | ||
|
|
12c83f056f | ||
|
|
09846607f2 |
4
.github/CONTRIBUTING.md
vendored
4
.github/CONTRIBUTING.md
vendored
@@ -1,5 +1,7 @@
|
||||
<div align="center">
|
||||
<img src="https://raw.githubusercontent.com/tteck/Proxmox/main/misc/images/logo.png" height="100px" />
|
||||
<a href="#">
|
||||
<img src="https://raw.githubusercontent.com/tteck/Proxmox/main/misc/images/logo.png" height="100px" />
|
||||
</a>
|
||||
</div>
|
||||
<h2 align="center">Contributing to Proxmox VE Helper Scripts</h2>
|
||||
|
||||
|
||||
19
.github/ISSUE_TEMPLATE/bug_report.yaml
vendored
19
.github/ISSUE_TEMPLATE/bug_report.yaml
vendored
@@ -1,5 +1,5 @@
|
||||
name: Problems with a script.
|
||||
description: Generate a report on an issue pertaining specifically to a script. For other inquires please share them in the Discussions section. Blank issues will be closed immediately.
|
||||
description: Generate a report on an issue pertaining specifically to a script. For other inquires please share them in the Discussions section.
|
||||
body:
|
||||
- type: markdown
|
||||
attributes:
|
||||
@@ -22,6 +22,19 @@ body:
|
||||
label: A clear and concise description of the issue.
|
||||
validations:
|
||||
required: true
|
||||
- type: dropdown
|
||||
id: settings
|
||||
validations:
|
||||
required: true
|
||||
attributes:
|
||||
label: What settings are you currently utilizing?
|
||||
options:
|
||||
-
|
||||
- Default Settings
|
||||
- Advanced Settings
|
||||
- type: markdown
|
||||
attributes:
|
||||
value: (if Advanced Settings, please try Default Settings before creating an issue)
|
||||
- type: dropdown
|
||||
id: distribution
|
||||
validations:
|
||||
@@ -30,12 +43,12 @@ body:
|
||||
label: Which Linux distribution are you employing?
|
||||
options:
|
||||
-
|
||||
- Default Settings
|
||||
- Alpine
|
||||
- Debian 11
|
||||
- Debian 12
|
||||
- Ubuntu 20.04
|
||||
- Ubuntu 22.04
|
||||
- Ubuntu 23.04
|
||||
- Ubuntu 24.04
|
||||
- type: textarea
|
||||
id: screenshot
|
||||
attributes:
|
||||
|
||||
5
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal file
5
.github/ISSUE_TEMPLATE/config.yml
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
blank_issues_enabled: false
|
||||
contact_links:
|
||||
- name: Helper-Scripts Community Support
|
||||
url: https://github.com/tteck/Proxmox/discussions
|
||||
about: Please ask and answer questions here.
|
||||
18
.github/pull_request_template.md
vendored
18
.github/pull_request_template.md
vendored
@@ -1,16 +1,20 @@
|
||||
## I wanted to make you aware that I am meticulous when it comes to merging code into the main branch, so please don't take it personally if I reject your request.
|
||||
> [!NOTE]
|
||||
I am meticulous when it comes to merging code into the main branch, so please understand that I may reject pull requests that do not meet the project's standards. It's never personal. Also, game-related scripts have a lower chance of being merged.
|
||||
|
||||
## Description
|
||||
|
||||
Please include a summary of the change and/or which issue is fixed.
|
||||
Provide a summary of the changes made and/or reference the issue being addressed.
|
||||
|
||||
Fixes # (issue)
|
||||
|
||||
## Type of change
|
||||
|
||||
Please delete options that are not relevant.
|
||||
Please check the relevant option(s):
|
||||
|
||||
- [ ] Bug fix (non-breaking change that resolves an issue)
|
||||
- [ ] New feature (non-breaking change that adds functionality)
|
||||
- [ ] Breaking change (a fix or feature that would cause existing functionality to change unexpectedly)
|
||||
- [ ] New script (a fully functional and thoroughly tested script or set of scripts.)
|
||||
- [ ] Self-review performed (I have reviewed my code, ensuring it follows established patterns and conventions)
|
||||
- [ ] Documentation update required (this change requires an update to the documentation)
|
||||
|
||||
- [ ] Bug fix
|
||||
- [ ] New feature
|
||||
- [ ] New Script
|
||||
- [ ] This change requires a documentation update
|
||||
|
||||
21
.github/workflows/ci.yml
vendored
21
.github/workflows/ci.yml
vendored
@@ -1,21 +0,0 @@
|
||||
name: CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- gh-pages
|
||||
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Set up Node.js
|
||||
uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 20
|
||||
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v3
|
||||
588
CHANGELOG.md
588
CHANGELOG.md
@@ -1,11 +1,593 @@
|
||||
<div align="center">
|
||||
<img src="https://raw.githubusercontent.com/tteck/Proxmox/main/misc/images/logo.png" height="100px" />
|
||||
<a href="#">
|
||||
<img src="https://raw.githubusercontent.com/tteck/Proxmox/main/misc/images/logo.png" height="100px" />
|
||||
</a>
|
||||
</div>
|
||||
<h1 align="center">Change Log</h1>
|
||||
<h1 align="center">Changelog</h1>
|
||||
|
||||
<h3 align="center">All notable changes to this project will be documented in this file.</h3>
|
||||
|
||||
- All LXC instances created using this repository come pre-installed with Midnight Commander, which is a command-line tool (`mc`) that offers a user-friendly file and directory management interface for the terminal environment.
|
||||
> [!CAUTION]
|
||||
Exercise vigilance regarding copycat or coat-tailing sites that seek to exploit the project's popularity for potentially malicious purposes.
|
||||
|
||||
> [!NOTE]
|
||||
All LXC instances created using this repository come pre-installed with Midnight Commander, which is a command-line tool (`mc`) that offers a user-friendly file and directory management interface for the terminal environment.
|
||||
|
||||
## 2024-10-27
|
||||
|
||||
### Changed
|
||||
|
||||
- **Open WebUI LXC** [(Commit)](https://github.com/tteck/Proxmox/commit/8a21f6e7f025a911865395d4c0fa9a001bd0d512)
|
||||
- Refactor Script to add an option to install Ollama.
|
||||
|
||||
## 2024-10-26
|
||||
|
||||
### Changed
|
||||
|
||||
- **AdventureLog LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/adventurelog-install.sh)
|
||||
- NEW Script
|
||||
|
||||
## 2024-10-25
|
||||
|
||||
### Changed
|
||||
|
||||
- **Zoraxy LXC** [(Commit)](https://github.com/tteck/Proxmox/commit/468a5d367ded4cf453a1507452e112ac3e234e2a)
|
||||
- Switch built from source to a pre-compiled binary version.
|
||||
- Breaking Change
|
||||
|
||||
## 2024-10-23
|
||||
|
||||
### Changed
|
||||
|
||||
- **Wallos LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/wallos-install.sh)
|
||||
- NEW Script
|
||||
- **Open WebUI LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/openwebui-install.sh)
|
||||
- NEW Script
|
||||
|
||||
## 2024-10-19
|
||||
|
||||
### Changed
|
||||
|
||||
- **Cockpit LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/cockpit-install.sh)
|
||||
- NEW Script
|
||||
- **Neo4j LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/neo4j-install.sh)
|
||||
- NEW Script
|
||||
|
||||
## 2024-10-18
|
||||
|
||||
### Changed
|
||||
|
||||
- **ArchiveBox LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/archivebox-install.sh)
|
||||
- NEW Script
|
||||
|
||||
## 2024-10-15
|
||||
|
||||
### Changed
|
||||
|
||||
- **evcc LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/evcc-install.sh)
|
||||
- NEW Script
|
||||
|
||||
## 2024-10-10
|
||||
|
||||
### Changed
|
||||
|
||||
- **MySQL LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/mysql-install.sh)
|
||||
- NEW Script
|
||||
- **Tianji LXC** [(Commit)](https://github.com/tteck/Proxmox/commit/4c83a790ac9b040da1f11ad2cbe13d3fc5f480e9)
|
||||
- Breaking Change
|
||||
- Switch from `pm2` process management to `systemd`
|
||||
|
||||
## 2024-10-03
|
||||
|
||||
### Changed
|
||||
|
||||
- **Home Assistant Core LXC** [(Commit)](https://github.com/tteck/Proxmox/commit/f2937febe69b2bad8b3a14eb84aa562a8f14cc6a) [(Commit)](https://github.com/tteck/Proxmox/commit/f2966ced7f457fd506f865f7f5b70ea12c4b0049)
|
||||
- Refactor Code
|
||||
- Breaking Change
|
||||
- Home Assistant has transitioned to using `uv` for managing the virtual environment and installing additional modules.
|
||||
|
||||
## 2024-09-16
|
||||
|
||||
### Changed
|
||||
|
||||
- **HomeBox LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/homebox-install.sh)
|
||||
- NEW Script
|
||||
- **Zipline LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/zipline-install.sh)
|
||||
- NEW Script
|
||||
|
||||
## 2024-09-13
|
||||
|
||||
### Changed
|
||||
|
||||
- **Tianji LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/tianji-install.sh)
|
||||
- NEW Script
|
||||
|
||||
## 2024-08-21
|
||||
|
||||
### Changed
|
||||
|
||||
- **WireGuard LXC** [(Commit)](https://github.com/tteck/Proxmox/commit/723365a79df7cc0fd29b1af8f7ef200a7e0921b1)
|
||||
- Refactor Code
|
||||
- Breaking Change
|
||||
|
||||
## 2024-08-19
|
||||
|
||||
### Changed
|
||||
|
||||
- **CommaFeed LXC** [(Commit)](https://github.com/tteck/Proxmox/commit/0a33d1739ec3a49011411929bd46a260e92e99f9)
|
||||
- Refactor Code
|
||||
- Breaking Change
|
||||
|
||||
## 2024-08-06
|
||||
|
||||
### Changed
|
||||
|
||||
- **lldap LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/lldap-install.sh)
|
||||
- NEW Script
|
||||
|
||||
## 2024-07-26
|
||||
|
||||
### Changed
|
||||
|
||||
- **Gitea LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/gitea-install.sh)
|
||||
- NEW Script
|
||||
|
||||
## 2024-06-30
|
||||
|
||||
### Changed
|
||||
|
||||
- **All Scripts** [(Commit)](https://github.com/tteck/Proxmox/commit/39ea1d4a20b83c07d084ebafdc811eec3548f289)
|
||||
- Requires Proxmox Virtual Environment version 8.1 or later.
|
||||
|
||||
## 2024-06-27
|
||||
|
||||
### Changed
|
||||
|
||||
- **Kubo LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/kubo-install.sh)
|
||||
- NEW Script
|
||||
- **RabbitMQ LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/rabbitmq-install.sh)
|
||||
- NEW Script
|
||||
- **Scrutiny LXC**
|
||||
- Removed from website, broken.
|
||||
|
||||
## 2024-06-26
|
||||
|
||||
### Changed
|
||||
|
||||
- **Scrutiny LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-06-14
|
||||
|
||||
### Changed
|
||||
|
||||
- **MySpeed LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/myspeed-install.sh)
|
||||
- NEW Script
|
||||
|
||||
## 2024-06-13
|
||||
|
||||
### Changed
|
||||
|
||||
- **PeaNUT LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/peanut-install.sh)
|
||||
- NEW Script
|
||||
- **Website**
|
||||
- If the Changelog has changed recently, the link on the website will pulse.
|
||||
- **Spoolman LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/spoolman-install.sh)
|
||||
- NEW Script
|
||||
|
||||
## 2024-06-12
|
||||
|
||||
### Changed
|
||||
|
||||
- **MeTube LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/metube-install.sh)
|
||||
- NEW Script
|
||||
- **Matterbridge LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/matterbridge-install.sh)
|
||||
- NEW Script
|
||||
- **Website**
|
||||
- Reopen the gh-pages site (https://tteck.github.io/Proxmox/)
|
||||
|
||||
## 2024-06-11
|
||||
|
||||
### Changed
|
||||
|
||||
- **Zabbix LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/zabbix-install.sh)
|
||||
- NEW Script
|
||||
|
||||
## 2024-06-06
|
||||
|
||||
### Changed
|
||||
|
||||
- **Petio LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/petio-install.sh)
|
||||
- NEW Script
|
||||
- **Website**
|
||||
- Important notices will now be displayed on the landing page.
|
||||
|
||||
## 2024-06-04
|
||||
|
||||
### Changed
|
||||
|
||||
- **FlareSolverr LXC** [(View Source)](https://github.com/tteck/Proxmox/blob/main/install/flaresolverr-install.sh)
|
||||
- NEW Script
|
||||
|
||||
## 2024-05-31
|
||||
|
||||
### Changed
|
||||
|
||||
- **Advanced Settings** [(Commit)](https://github.com/tteck/Proxmox/commit/fc9dff220b4ea426d3a75178ad8accacae4683ca)
|
||||
- Passwords are now masked
|
||||
|
||||
## 2024-05-30
|
||||
|
||||
### Changed
|
||||
|
||||
- **Forgejo LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-05-28
|
||||
|
||||
### Changed
|
||||
|
||||
- **Notifiarr LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-05-25
|
||||
|
||||
### Changed
|
||||
|
||||
- **Threadfin LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-05-23
|
||||
|
||||
### Changed
|
||||
|
||||
- **BunkerWeb LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-05-20
|
||||
|
||||
### Changed
|
||||
|
||||
- **Traefik LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-05-19
|
||||
|
||||
### Changed
|
||||
|
||||
- **NetBird**
|
||||
- NEW Script
|
||||
- **Tailscale**
|
||||
- Refactor Code
|
||||
|
||||
## 2024-05-18
|
||||
|
||||
### Changed
|
||||
|
||||
- **MongoDB LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-05-17
|
||||
|
||||
### Changed
|
||||
|
||||
- **New Website**
|
||||
- We have officially moved to [Helper-Scripts.com](https://helper-scripts.com)
|
||||
|
||||
## 2024-05-16
|
||||
|
||||
### Changed
|
||||
|
||||
- **iVentoy LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-05-13
|
||||
|
||||
### Changed
|
||||
|
||||
- **Headscale LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-05-11
|
||||
|
||||
### Changed
|
||||
|
||||
- **Caddy LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-05-09
|
||||
|
||||
### Changed
|
||||
|
||||
- **Umami LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-05-08
|
||||
|
||||
### Changed
|
||||
|
||||
- **Kernel Pin**
|
||||
- NEW Script
|
||||
- **Home Assistant Core LXC**
|
||||
- Ubuntu 24.04 ONLY
|
||||
|
||||
## 2024-05-07
|
||||
|
||||
### Changed
|
||||
|
||||
- **Pocketbase LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-05-05
|
||||
|
||||
### Changed
|
||||
|
||||
- **Fenrus LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-05-02
|
||||
|
||||
### Changed
|
||||
|
||||
- **OpenMediaVault LXC**
|
||||
- Set Debian 12 as default
|
||||
- OpenMediaVault 7 (sandworm)
|
||||
|
||||
## 2024-04-30
|
||||
|
||||
### Changed
|
||||
|
||||
- **Tdarr LXC**
|
||||
- Default settings are now **Unprivileged**
|
||||
- Unprivileged Hardware Acceleration
|
||||
|
||||
## 2024-04-29
|
||||
|
||||
### Changed
|
||||
|
||||
- **ErsatzTV LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-04-28
|
||||
|
||||
### Changed
|
||||
|
||||
- **Scrypted LXC**
|
||||
- Unprivileged Hardware Acceleration
|
||||
- **Emby LXC**
|
||||
- Unprivileged Hardware Acceleration
|
||||
|
||||
## 2024-04-27
|
||||
|
||||
### Changed
|
||||
|
||||
- **Frigate LXC**
|
||||
- Unprivileged Hardware Acceleration https://github.com/tteck/Proxmox/discussions/2711#discussioncomment-9244629
|
||||
- **Ubuntu 24.04 VM**
|
||||
- NEW Script
|
||||
|
||||
## 2024-04-26
|
||||
|
||||
### Changed
|
||||
|
||||
- **Glances**
|
||||
- NEW Script
|
||||
|
||||
## 2024-04-25
|
||||
|
||||
### Changed
|
||||
|
||||
- **Jellyfin LXC**
|
||||
- Default settings are now **Unprivileged**
|
||||
- Unprivileged Hardware Acceleration
|
||||
- Groups are set automatically
|
||||
- Checks for the existence of `/dev/dri/card0` if not found, use `/dev/dri/card1`. Set the GID to `44`
|
||||
- Set the GID for `/dev/dri/renderD128` to `104`
|
||||
- Not tested <8.1.11
|
||||
- **Plex LXC**
|
||||
- Default settings are now **Unprivileged**
|
||||
- Unprivileged Hardware Acceleration
|
||||
- Groups are set automatically
|
||||
- Checks for the existence of `/dev/dri/card0` if not found, use `/dev/dri/card1`. Set the GID to `44`
|
||||
- Set the GID for `/dev/dri/renderD128` to `104`
|
||||
- Not tested <8.1.11
|
||||
|
||||
## 2024-04-24
|
||||
|
||||
### Changed
|
||||
|
||||
- **Traccar LXC**
|
||||
- NEW Script
|
||||
- **Calibre-Web LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-04-21
|
||||
|
||||
### Changed
|
||||
|
||||
- **Aria2 LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-04-15
|
||||
|
||||
### Changed
|
||||
|
||||
- **Homarr LXC**
|
||||
- Add back to website
|
||||
- **Umbrel LXC**
|
||||
- Add back to website
|
||||
- **OpenMediaVault LXC**
|
||||
- Add back to website
|
||||
|
||||
## 2024-04-12
|
||||
|
||||
### Changed
|
||||
|
||||
- **OpenMediaVault LXC**
|
||||
- Removed from website
|
||||
|
||||
## 2024-04-09
|
||||
|
||||
### Changed
|
||||
|
||||
- **PairDrop LXC**
|
||||
- Add back to website
|
||||
|
||||
## 2024-04-05
|
||||
|
||||
### Changed
|
||||
|
||||
- **Medusa LXC**
|
||||
- NEW Script
|
||||
- **WatchYourLAN LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-04-04
|
||||
|
||||
### Changed
|
||||
|
||||
- **Actual Budget LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-04-03
|
||||
|
||||
### Changed
|
||||
|
||||
- **LazyLibrarian LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-04-01
|
||||
|
||||
### Changed
|
||||
|
||||
- **Frigate LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-03-26
|
||||
|
||||
### Changed
|
||||
|
||||
- **MediaMTX LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-03-25
|
||||
|
||||
### Changed
|
||||
|
||||
- **Proxmox VE Post Install**
|
||||
- ~Requires Proxmox Virtual Environment Version 8.1.1 or later.~
|
||||
- Requires Proxmox Virtual Environment Version 8.0 or later.
|
||||
- **Proxmox Backup Server LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-03-24
|
||||
|
||||
### Changed
|
||||
|
||||
- **SmokePing LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-03-13
|
||||
|
||||
### Changed
|
||||
|
||||
- **FlowiseAI LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-03-11
|
||||
|
||||
### Changed
|
||||
|
||||
- **Wastebin LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-03-08
|
||||
|
||||
### Changed
|
||||
|
||||
- **Proxmox VE Post Install**
|
||||
- Requires Proxmox Virtual Environment Version 8.1.1 or later.
|
||||
|
||||
## 2024-02-26
|
||||
|
||||
### Changed
|
||||
|
||||
- **Mafl LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-02-23
|
||||
|
||||
### Changed
|
||||
|
||||
- **Tandoor Recipes LXC**
|
||||
- NEW Script (Thanks @MickLesk)
|
||||
|
||||
## 2024-02-21
|
||||
|
||||
### Changed
|
||||
|
||||
- **All scripts**
|
||||
- As of today, the scripts require the Bash shell specifically. ([more info](https://github.com/tteck/Proxmox/discussions/2536))
|
||||
|
||||
## 2024-02-19
|
||||
|
||||
### Changed
|
||||
|
||||
- **PairDrop LXC**
|
||||
- Removed from the website ([more info](https://github.com/tteck/Proxmox/discussions/2516))
|
||||
|
||||
## 2024-02-16
|
||||
|
||||
### Changed
|
||||
|
||||
- **Proxmox VE LXC Filesystem Trim**
|
||||
- NEW Script ([more info](https://github.com/tteck/Proxmox/discussions/2505#discussion-6226037))
|
||||
|
||||
## 2024-02-11
|
||||
|
||||
### Changed
|
||||
|
||||
- **HiveMQ CE LXC**
|
||||
- NEW Script
|
||||
- **Apache-CouchDB LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-02-06
|
||||
|
||||
### Changed
|
||||
|
||||
- **All Scripts**
|
||||
- The scripts will only work with PVE7 Version 7.4-13 or later, or PVE8 Version 8.1.1 or later.
|
||||
|
||||
## 2024-02-05
|
||||
|
||||
### Changed
|
||||
|
||||
- **Gokapi LXC**
|
||||
- NEW Script
|
||||
- **Nginx Proxy Manager LXC**
|
||||
- Option to install v2.10.4
|
||||
|
||||
## 2024-02-04
|
||||
|
||||
### Changed
|
||||
|
||||
- **Pi-hole LXC**
|
||||
- Option to add Unbound
|
||||
|
||||
## 2024-02-02
|
||||
|
||||
### Changed
|
||||
|
||||
- **Readeck LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-01-25
|
||||
|
||||
### Changed
|
||||
|
||||
- **PairDrop LXC**
|
||||
- NEW Script
|
||||
|
||||
## 2024-01-20
|
||||
|
||||
|
||||
2
LICENSE
2
LICENSE
@@ -1,6 +1,6 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2021-2023 tteck
|
||||
Copyright (c) 2021-2024 tteck
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
||||
@@ -1,10 +1,13 @@
|
||||
<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>As we prepare to archive this repository, we’re excited to announce a new home for the project: <a href="https://github.com/community-scripts/ProxmoxVE">https://github.com/community-scripts/ProxmoxVE</a>. While we’re still settling in, this will soon become the go-to place for the latest Proxmox VE scripts.</p> <p>Thank you for your continued support.</p> <br>The Community </div>
|
||||
<div align="center">
|
||||
<img src="https://raw.githubusercontent.com/tteck/Proxmox/main/misc/images/logo.png" height="100px" />
|
||||
<a href="#">
|
||||
<img src="https://raw.githubusercontent.com/tteck/Proxmox/main/misc/images/logo.png" height="100px" />
|
||||
</a>
|
||||
</div>
|
||||
<h1 align="center">Proxmox VE Helper-Scripts</h1>
|
||||
|
||||
<p align="center">
|
||||
<a href="https://helper-scripts.com/">Website</a> |
|
||||
<a href="https://helper-scripts.com">Website</a> |
|
||||
<a href="https://github.com/tteck/Proxmox/blob/main/.github/CONTRIBUTING.md">Contribute</a> |
|
||||
<a href="https://github.com/tteck/Proxmox/blob/main/USER_SUBMITTED_GUIDES.md">Guides</a> |
|
||||
<a href="https://github.com/tteck/Proxmox/blob/main/CHANGELOG.md">Changelog</a> |
|
||||
|
||||
@@ -1,10 +1,14 @@
|
||||
<div align="center">
|
||||
<img src="https://raw.githubusercontent.com/tteck/Proxmox/main/misc/images/logo.png" height="100px" />
|
||||
<a href="#">
|
||||
<img src="https://raw.githubusercontent.com/tteck/Proxmox/main/misc/images/logo.png" height="100px" />
|
||||
</a>
|
||||
</div>
|
||||
<h2 align="center">User Submitted Guides </h2>
|
||||
|
||||
<sub> In order to contribute a guide on installing with Proxmox VE Helper Scripts, you should open a pull request that adds the guide to the `USER_SUBMITTED_GUIDES.md` file. </sub>
|
||||
|
||||
[Proxmox Automation with Proxmox Helper Scripts!](https://www.youtube.com/watch?v=kcpu4z5eSEU)
|
||||
|
||||
[Installing Home Assistant OS using Proxmox 8](https://community.home-assistant.io/t/installing-home-assistant-os-using-proxmox-8/201835)
|
||||
|
||||
[How To Separate Zigbee2MQTT From Home Assistant In Proxmox](https://smarthomescene.com/guides/how-to-separate-zigbee2mqtt-from-home-assistant-in-proxmox/)
|
||||
@@ -32,3 +36,9 @@
|
||||
[iGPU Transcoding In Proxmox with Jellyfin](https://www.youtube.com/watch?v=XAa_qpNmzZs)
|
||||
|
||||
[Proxmox + NetData](<https://dbt3ch.com/books/proxmox-netdata-for-better-insights-and-notifications/page/proxmox-netdata-for-better-insights-and-notifications>)
|
||||
|
||||
[Proxmox Homelab Series](<https://blog.kye.dev/proxmox-series>)
|
||||
|
||||
[The fastest installation of Docker and Portainer on Proxmox VE](https://lavr.site/en-fastest-install-docker-portainer-proxmox/)
|
||||
|
||||
[How To Setup Proxmox Backuper Server Using Helper Scripts](<https://youtu.be/6C2JOsrZZZw?si=kkrrcL_nLCDBJkOB>)
|
||||
|
||||
77
ct/actualbudget.sh
Normal file
77
ct/actualbudget.sh
Normal file
@@ -0,0 +1,77 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
___ __ __ ____ __ __
|
||||
/ | _____/ /___ ______ _/ / / __ )__ ______/ /___ ____ / /_
|
||||
/ /| |/ ___/ __/ / / / __ `/ / / __ / / / / __ / __ `/ _ \/ __/
|
||||
/ ___ / /__/ /_/ /_/ / /_/ / / / /_/ / /_/ / /_/ / /_/ / __/ /_
|
||||
/_/ |_\___/\__/\__,_/\__,_/_/ /_____/\__,_/\__,_/\__, /\___/\__/
|
||||
/____/
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Actual Budget"
|
||||
var_disk="4"
|
||||
var_cpu="2"
|
||||
var_ram="2048"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/actualbudget ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating ${APP}"
|
||||
systemctl stop actualbudget.service
|
||||
cd /opt/actualbudget
|
||||
git pull &>/dev/null
|
||||
yarn install &>/dev/null
|
||||
systemctl start actualbudget.service
|
||||
msg_ok "Successfully Updated ${APP}"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
msg_info "Setting Container to Normal Resources"
|
||||
pct set $CTID -memory 1024
|
||||
pct set $CTID -cores 1
|
||||
msg_ok "Set Container to Normal Resources"
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:5006${CL} \n"
|
||||
@@ -56,6 +56,10 @@ function default_settings() {
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/AdGuardHome ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
if (( $(df /boot | awk 'NR==2{gsub("%","",$5); print $5}') > 80 )); then
|
||||
read -r -p "Warning: Storage is dangerously low, continue anyway? <y/N> " prompt
|
||||
[[ ${prompt,,} =~ ^(y|yes)$ ]] || exit
|
||||
fi
|
||||
wget -qL https://static.adguard.com/adguardhome/release/AdGuardHome_linux_amd64.tar.gz
|
||||
msg_info "Stopping AdguardHome"
|
||||
systemctl stop AdGuardHome
|
||||
|
||||
110
ct/adventurelog.sh
Normal file
110
ct/adventurelog.sh
Normal file
@@ -0,0 +1,110 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck
|
||||
# Co-Author: MickLesk (Canbiz)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
___ __ __ __
|
||||
/ | ____/ / _____ ____ / /___ __________ / / ____ ____ _
|
||||
/ /| |/ __ / | / / _ \/ __ \/ __/ / / / ___/ _ \/ / / __ \/ __ `/
|
||||
/ ___ / /_/ /| |/ / __/ / / / /_/ /_/ / / / __/ /___/ /_/ / /_/ /
|
||||
/_/ |_\__,_/ |___/\___/_/ /_/\__/\__,_/_/ \___/_____/\____/\__, /
|
||||
/____/
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="AdventureLog"
|
||||
var_disk="7"
|
||||
var_cpu="2"
|
||||
var_ram="2048"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/adventurelog ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
if (( $(df /boot | awk 'NR==2{gsub("%","",$5); print $5}') > 80 )); then
|
||||
read -r -p "Warning: Storage is dangerously low, continue anyway? <y/N> " prompt
|
||||
[[ ${prompt,,} =~ ^(y|yes)$ ]] || exit
|
||||
fi
|
||||
RELEASE=$(curl -s https://api.github.com/repos/seanmorley15/AdventureLog/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
|
||||
msg_info "Stopping Services"
|
||||
systemctl stop adventurelog-backend
|
||||
systemctl stop adventurelog-frontend
|
||||
msg_ok "Services Stopped"
|
||||
|
||||
msg_info "Updating ${APP} to ${RELEASE}"
|
||||
cp /opt/adventurelog/backend/server/.env /opt/server.env
|
||||
cp /opt/adventurelog/frontend/env /opt/frontend.env
|
||||
wget -q "https://github.com/seanmorley15/AdventureLog/archive/refs/tags/v${RELEASE}.zip"
|
||||
unzip -q v${RELEASE}.zip
|
||||
mv AdventureLog-${RELEASE} /opt/adventurelog
|
||||
mv /opt/server.env /opt/adventurelog/backend/server/.env
|
||||
cd /opt/adventurelog/backend/server
|
||||
pip install --upgrade pip &>/dev/null
|
||||
pip install -r requirements.txt &>/dev/null
|
||||
python3 manage.py collectstatic --noinput &>/dev/null
|
||||
python3 manage.py migrate &>/dev/null
|
||||
|
||||
mv /opt/frontend.env /opt/adventurelog/frontend/.env
|
||||
cd /opt/adventurelog/frontend
|
||||
pnpm install &>/dev/null
|
||||
pnpm run build &>/dev/null
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated ${APP}"
|
||||
|
||||
msg_info "Starting Services"
|
||||
systemctl start adventurelog-backend
|
||||
systemctl start adventurelog-frontend
|
||||
msg_ok "Started Services"
|
||||
|
||||
msg_info "Cleaning Up"
|
||||
rm -rf v${RELEASE}.zip
|
||||
msg_ok "Cleaned"
|
||||
msg_ok "Updated Successfully"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} Setup should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:3000${CL} \n"
|
||||
@@ -24,7 +24,7 @@ var_disk="2"
|
||||
var_cpu="1"
|
||||
var_ram="1024"
|
||||
var_os="alpine"
|
||||
var_version="3.18"
|
||||
var_version="3.19"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
@@ -20,11 +20,11 @@ EOF
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Alpine-Grafana"
|
||||
var_disk="0.5"
|
||||
var_disk="1"
|
||||
var_cpu="1"
|
||||
var_ram="256"
|
||||
var_os="alpine"
|
||||
var_version="3.18"
|
||||
var_version="3.19"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
@@ -23,7 +23,7 @@ var_disk="2"
|
||||
var_cpu="2"
|
||||
var_ram="1024"
|
||||
var_os="alpine"
|
||||
var_version="3.18"
|
||||
var_version="3.19"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
@@ -60,12 +60,10 @@ function update_script() {
|
||||
if ! apk -e info newt >/dev/null 2>&1; then
|
||||
apk add -q newt
|
||||
fi
|
||||
RELEASE=$(curl -s https://api.github.com/repos/nextcloud/server/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||
while true; do
|
||||
CHOICE=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "SUPPORT" --radiolist --cancel-button Exit-Script "Spacebar = Select" 11 58 3 \
|
||||
"1" "Update Nextcloud to $RELEASE" OFF \
|
||||
"2" "Nextcloud Login Credentials" ON \
|
||||
"3" "Renew Self-signed Certificate" OFF \
|
||||
"1" "Nextcloud Login Credentials" ON \
|
||||
"2" "Renew Self-signed Certificate" OFF \
|
||||
3>&1 1>&2 2>&3)
|
||||
exit_status=$?
|
||||
if [ $exit_status == 1 ]; then
|
||||
@@ -75,22 +73,10 @@ function update_script() {
|
||||
header_info
|
||||
case $CHOICE in
|
||||
1)
|
||||
apk update && apk upgrade
|
||||
if ! apk -e info php82-sodium >/dev/null 2>&1; then
|
||||
apk add -q php82-sodium
|
||||
fi
|
||||
if ! apk -e info php82-bz2 >/dev/null 2>&1; then
|
||||
apk add -q php82-bz2
|
||||
fi
|
||||
su nextcloud -s /bin/sh -c 'php82 /usr/share/webapps/nextcloud/occ upgrade'
|
||||
su nextcloud -s /bin/sh -c 'php82 /usr/share/webapps/nextcloud/occ db:add-missing-indices'
|
||||
exit
|
||||
;;
|
||||
2)
|
||||
cat nextcloud.creds
|
||||
exit
|
||||
;;
|
||||
3)
|
||||
2)
|
||||
openssl req -x509 -nodes -days 365 -newkey rsa:4096 -keyout /etc/ssl/private/nextcloud-selfsigned.key -out /etc/ssl/certs/nextcloud-selfsigned.crt -subj "/C=US/O=Nextcloud/OU=Domain Control Validated/CN=nextcloud.local" > /dev/null 2>&1
|
||||
rc-service nginx restart
|
||||
exit
|
||||
|
||||
@@ -24,7 +24,7 @@ var_disk="0.3"
|
||||
var_cpu="1"
|
||||
var_ram="256"
|
||||
var_os="alpine"
|
||||
var_version="3.18"
|
||||
var_version="3.19"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
@@ -71,7 +71,7 @@ function update_script() {
|
||||
header_info
|
||||
case $CHOICE in
|
||||
1)
|
||||
apk update && apk upgrade
|
||||
apk update && apk upgrade && rc-service vaultwarden restart -q
|
||||
exit
|
||||
;;
|
||||
2)
|
||||
|
||||
@@ -24,7 +24,7 @@ var_disk="0.3"
|
||||
var_cpu="1"
|
||||
var_ram="256"
|
||||
var_os="alpine"
|
||||
var_version="3.18"
|
||||
var_version="3.19"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
@@ -24,7 +24,7 @@ var_disk="0.1"
|
||||
var_cpu="1"
|
||||
var_ram="512"
|
||||
var_os="alpine"
|
||||
var_version="3.18"
|
||||
var_version="3.19"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
70
ct/apache-couchdb.sh
Normal file
70
ct/apache-couchdb.sh
Normal file
@@ -0,0 +1,70 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
___ __ ______ __ ____ ____
|
||||
/ | ____ ____ ______/ /_ ___ / ____/___ __ _______/ /_ / __ \/ __ )
|
||||
/ /| | / __ \/ __ `/ ___/ __ \/ _ \ / / / __ \/ / / / ___/ __ \/ / / / __ |
|
||||
/ ___ |/ /_/ / /_/ / /__/ / / / __/ / /___/ /_/ / /_/ / /__/ / / / /_/ / /_/ /
|
||||
/_/ |_/ .___/\__,_/\___/_/ /_/\___/ \____/\____/\__,_/\___/_/ /_/_____/_____/
|
||||
/_/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Apache-CouchDB"
|
||||
var_disk="10"
|
||||
var_cpu="2"
|
||||
var_ram="4096"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
VERBOSE="yes"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -f /etc/systemd/system/couchdb.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_error "There is currently no update path available."
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:5984/_utils/${CL} \n"
|
||||
86
ct/archivebox.sh
Normal file
86
ct/archivebox.sh
Normal file
@@ -0,0 +1,86 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
___ __ _ ____
|
||||
/ | __________/ /_ (_) _____ / __ )____ _ __
|
||||
/ /| | / ___/ ___/ __ \/ / | / / _ \/ __ / __ \| |/_/
|
||||
/ ___ |/ / / /__/ / / / /| |/ / __/ /_/ / /_/ /> <
|
||||
/_/ |_/_/ \___/_/ /_/_/ |___/\___/_____/\____/_/|_|
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="ArchiveBox"
|
||||
var_disk="8"
|
||||
var_cpu="2"
|
||||
var_ram="1024"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/archivebox ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
if (( $(df /boot | awk 'NR==2{gsub("%","",$5); print $5}') > 80 )); then
|
||||
read -r -p "Warning: Storage is dangerously low, continue anyway? <y/N> " prompt
|
||||
[[ ${prompt,,} =~ ^(y|yes)$ ]] || exit
|
||||
fi
|
||||
msg_info "Stopping ${APP}"
|
||||
systemctl stop archivebox
|
||||
msg_ok "Stopped ${APP}"
|
||||
|
||||
msg_info "Updating ${APP}"
|
||||
cd /opt/archivebox/data
|
||||
pip install --upgrade --ignore-installed archivebox
|
||||
sudo -u archivebox archivebox init
|
||||
msg_ok "Updated ${APP}"
|
||||
|
||||
msg_info "Starting ${APP}"
|
||||
systemctl start archivebox
|
||||
msg_ok "Started ${APP}"
|
||||
|
||||
msg_ok "Updated Successfully"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:8000/admin/login${CL} \n"
|
||||
70
ct/aria2.sh
Normal file
70
ct/aria2.sh
Normal file
@@ -0,0 +1,70 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
___ _ ___
|
||||
/ | _____(_)___ |__ \
|
||||
/ /| | / ___/ / __ `/_/ /
|
||||
/ ___ |/ / / / /_/ / __/
|
||||
/_/ |_/_/ /_/\__,_/____/
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Aria2"
|
||||
var_disk="8"
|
||||
var_cpu="2"
|
||||
var_ram="1028"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating $APP LXC"
|
||||
apt-get update &>/dev/null
|
||||
apt-get -y upgrade &>/dev/null
|
||||
msg_ok "Updated $APP LXC"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:6880${CL}"
|
||||
86
ct/bunkerweb.sh
Normal file
86
ct/bunkerweb.sh
Normal file
@@ -0,0 +1,86 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
____ __ _ __ __
|
||||
/ __ )__ ______ / /_____ ____| | / /__ / /_
|
||||
/ __ / / / / __ \/ //_/ _ \/ ___/ | /| / / _ \/ __ \
|
||||
/ /_/ / /_/ / / / / ,< / __/ / | |/ |/ / __/ /_/ /
|
||||
/_____/\__,_/_/ /_/_/|_|\___/_/ |__/|__/\___/_.___/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="BunkerWeb"
|
||||
var_disk="4"
|
||||
var_cpu="2"
|
||||
var_ram="1024"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /etc/bunkerweb ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
|
||||
RELEASE=$(curl -s https://api.github.com/repos/bunkerity/bunkerweb/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
|
||||
|
||||
msg_info "Updating ${APP} to ${RELEASE}"
|
||||
cat <<EOF >/etc/apt/preferences.d/bunkerweb
|
||||
Package: bunkerweb
|
||||
Pin: version ${RELEASE}
|
||||
Pin-Priority: 1001
|
||||
EOF
|
||||
apt-get update
|
||||
apt-get install -y nginx=1.26.2*
|
||||
apt-get install -y bunkerweb=${RELEASE}
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated ${APP} to ${RELEASE}"
|
||||
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} setup should be reachable by going to the following URL.
|
||||
${BL}http://${IP}/setup${CL} \n"
|
||||
69
ct/caddy.sh
Normal file
69
ct/caddy.sh
Normal file
@@ -0,0 +1,69 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
______ __ __
|
||||
/ ____/___ _____/ /___/ /_ __
|
||||
/ / / __ `/ __ / __ / / / /
|
||||
/ /___/ /_/ / /_/ / /_/ / /_/ /
|
||||
\____/\__,_/\__,_/\__,_/\__, /
|
||||
/____/
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Caddy"
|
||||
var_disk="2"
|
||||
var_cpu="1"
|
||||
var_ram="512"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /etc/caddy ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating $APP LXC"
|
||||
apt-get update &>/dev/null
|
||||
apt-get -y upgrade &>/dev/null
|
||||
msg_ok "Updated $APP LXC"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
164
ct/calibre-web.sh
Normal file
164
ct/calibre-web.sh
Normal file
@@ -0,0 +1,164 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# Co-Author: remz1337
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
______ ___ __ _ __ __
|
||||
/ ____/___ _/ (_) /_ ________ | | / /__ / /_
|
||||
/ / / __ `/ / / __ \/ ___/ _ \___| | /| / / _ \/ __ \
|
||||
/ /___/ /_/ / / / /_/ / / / __/___/ |/ |/ / __/ /_/ /
|
||||
\____/\__,_/_/_/_.___/_/ \___/ |__/|__/\___/_.___/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Calibre-Web"
|
||||
var_disk="4"
|
||||
var_cpu="2"
|
||||
var_ram="2048"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
if [[ ! -f /etc/systemd/system/cps.service ]]; then
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
header_info
|
||||
msg_info "Updating $APP LXC"
|
||||
systemctl stop cps
|
||||
cd /opt/kepubify
|
||||
rm kepubify-linux-64bit
|
||||
curl -fsSLO https://github.com/pgaskin/kepubify/releases/latest/download/kepubify-linux-64bit &>/dev/null
|
||||
chmod +x kepubify-linux-64bit
|
||||
menu_array=("1" "Enables gdrive as storage backend for your ebooks" OFF \
|
||||
"2" "Enables sending emails via a googlemail account without enabling insecure apps" OFF \
|
||||
"3" "Enables displaying of additional author infos on the authors page" OFF \
|
||||
"4" "Enables login via LDAP server" OFF \
|
||||
"5" "Enables login via google or github oauth" OFF \
|
||||
"6" "Enables extracting of metadata from epub, fb2, pdf files, and also extraction of covers from cbr, cbz, cbt files" OFF \
|
||||
"7" "Enables extracting of metadata from cbr, cbz, cbt files" OFF \
|
||||
"8" "Enables syncing with your kobo reader" OFF )
|
||||
if [ -f "/opt/calibre-web/options.txt" ]; then
|
||||
cps_options="$(cat /opt/calibre-web/options.txt)"
|
||||
IFS=',' read -ra ADDR <<< "$cps_options"
|
||||
for i in "${ADDR[@]}"; do
|
||||
if [ $i == "gdrive" ]; then
|
||||
line=0
|
||||
elif [ $i == "gmail" ]; then
|
||||
line=1
|
||||
elif [ $i == "goodreads" ]; then
|
||||
line=2
|
||||
elif [ $i == "ldap" ]; then
|
||||
line=3
|
||||
elif [ $i == "oauth" ]; then
|
||||
line=4
|
||||
elif [ $i == "metadata" ]; then
|
||||
line=5
|
||||
elif [ $i == "comics" ]; then
|
||||
line=6
|
||||
elif [ $i == "kobo" ]; then
|
||||
line=7
|
||||
fi
|
||||
array_index=$(( 3*line + 2 ))
|
||||
menu_array[$array_index]=ON
|
||||
done
|
||||
fi
|
||||
if [ -n "$SPINNER_PID" ] && ps -p $SPINNER_PID > /dev/null; then kill $SPINNER_PID > /dev/null; fi
|
||||
CHOICES=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "CALIBRE-WEB OPTIONS" --separate-output --checklist "Choose Additional Options" 15 125 8 "${menu_array[@]}" 3>&1 1>&2 2>&3)
|
||||
spinner &
|
||||
SPINNER_PID=$!
|
||||
options=()
|
||||
if [ ! -z "$CHOICES" ]; then
|
||||
for CHOICE in $CHOICES; do
|
||||
case "$CHOICE" in
|
||||
"1")
|
||||
options+=( gdrive )
|
||||
;;
|
||||
"2")
|
||||
options+=( gmail )
|
||||
;;
|
||||
"3")
|
||||
options+=( goodreads )
|
||||
;;
|
||||
"4")
|
||||
options+=( ldap )
|
||||
apt-get install -qqy libldap2-dev libsasl2-dev
|
||||
;;
|
||||
"5")
|
||||
options+=( oauth )
|
||||
;;
|
||||
"6")
|
||||
options+=( metadata )
|
||||
;;
|
||||
"7")
|
||||
options+=( comics )
|
||||
;;
|
||||
"8")
|
||||
options+=( kobo )
|
||||
;;
|
||||
*)
|
||||
echo "Unsupported item $CHOICE!" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
done
|
||||
fi
|
||||
if [ ! -z "$options" ] && [ ${#options[@]} -gt 0 ]; then
|
||||
cps_options=$(IFS=, ; echo "${options[*]}")
|
||||
echo $cps_options > /opt/calibre-web/options.txt
|
||||
pip install --upgrade calibreweb[$cps_options]
|
||||
else
|
||||
rm /opt/calibre-web/options.txt 2> /dev/null
|
||||
pip install --upgrade calibreweb
|
||||
fi
|
||||
systemctl start cps
|
||||
msg_ok "Updated $APP LXC"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_info "Setting Container to Normal Resources"
|
||||
pct set $CTID -memory 512
|
||||
pct set $CTID -cores 1
|
||||
msg_ok "Set Container to Normal Resources"
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:8083${CL} \n"
|
||||
@@ -56,7 +56,24 @@ function update_script() {
|
||||
header_info
|
||||
if [[ ! -f /etc/systemd/system/changedetection.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating ${APP} LXC"
|
||||
if ! dpkg -s libjpeg-dev >/dev/null 2>&1; then
|
||||
apt-get update
|
||||
apt-get install -y libjpeg-dev
|
||||
fi
|
||||
pip3 install changedetection.io --upgrade &>/dev/null
|
||||
pip3 install playwright --upgrade &>/dev/null
|
||||
if [[ -f /etc/systemd/system/browserless.service ]]; then
|
||||
git -C /opt/browserless/ fetch --all &>/dev/null
|
||||
git -C /opt/browserless/ reset --hard origin/main &>/dev/null
|
||||
npm update --prefix /opt/browserless &>/dev/null
|
||||
npm run build --prefix /opt/browserless &>/dev/null
|
||||
npm run build:function --prefix /opt/browserless &>/dev/null
|
||||
npm prune production --prefix /opt/browserless &>/dev/null
|
||||
systemctl restart browserless
|
||||
else
|
||||
msg_error "No Browserless Installation Found!"
|
||||
fi
|
||||
systemctl restart changedetection
|
||||
msg_ok "Updated Successfully"
|
||||
exit
|
||||
}
|
||||
|
||||
125
ct/cockpit.sh
Normal file
125
ct/cockpit.sh
Normal file
@@ -0,0 +1,125 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck
|
||||
# Co-Author: havardthom
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
______ __ _ __
|
||||
/ ____/___ _____/ /______ (_) /_
|
||||
/ / / __ \/ ___/ //_/ __ \/ / __/
|
||||
/ /___/ /_/ / /__/ ,< / /_/ / / /_
|
||||
\____/\____/\___/_/|_/ .___/_/\__/
|
||||
/_/
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Cockpit"
|
||||
var_disk="4"
|
||||
var_cpu="2"
|
||||
var_ram="1024"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
if [[ ! -d /etc/cockpit ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
UPD=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "SUPPORT" --radiolist --cancel-button Exit-Script "Spacebar = Select" 11 58 4 \
|
||||
"1" "Update LXC" ON \
|
||||
"2" "Install cockpit-file-sharing" OFF \
|
||||
"3" "Install cockpit-identities" OFF \
|
||||
"4" "Install cockpit-navigator" OFF \
|
||||
3>&1 1>&2 2>&3)
|
||||
|
||||
header_info
|
||||
if [ "$UPD" == "1" ]; then
|
||||
msg_info "Updating ${APP} LXC"
|
||||
apt-get update &>/dev/null
|
||||
apt-get -y upgrade &>/dev/null
|
||||
msg_ok "Updated ${APP} LXC"
|
||||
exit
|
||||
fi
|
||||
if [ "$UPD" == "2" ]; then
|
||||
msg_info "Installing dependencies (patience)"
|
||||
apt-get install -y attr &>/dev/null
|
||||
apt-get install -y nfs-kernel-server &>/dev/null
|
||||
apt-get install -y samba &>/dev/null
|
||||
apt-get install -y samba-common-bin &>/dev/null
|
||||
apt-get install -y winbind &>/dev/null
|
||||
apt-get install -y gawk &>/dev/null
|
||||
msg_ok "Installed dependencies"
|
||||
msg_info "Installing Cockpit file sharing"
|
||||
LATEST=$(curl -s https://api.github.com/repos/45Drives/cockpit-file-sharing/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
wget -q https://github.com/45Drives/cockpit-file-sharing/releases/download/v${LATEST}/cockpit-file-sharing_${LATEST}-1focal_all.deb
|
||||
dpkg -i cockpit-file-sharing_${LATEST}-1focal_all.deb &>/dev/null
|
||||
rm cockpit-file-sharing_${LATEST}-1focal_all.deb
|
||||
msg_ok "Installed Cockpit file sharing"
|
||||
exit
|
||||
fi
|
||||
if [ "$UPD" == "3" ]; then
|
||||
msg_info "Installing dependencies (patience)"
|
||||
apt-get install -y psmisc &>/dev/null
|
||||
apt-get install -y samba &>/dev/null
|
||||
apt-get install -y samba-common-bin &>/dev/null
|
||||
msg_ok "Installed dependencies"
|
||||
msg_info "Installing Cockpit identities"
|
||||
LATEST=$(curl -s https://api.github.com/repos/45Drives/cockpit-identities/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
wget -q https://github.com/45Drives/cockpit-identities/releases/download/v${LATEST}/cockpit-identities_${LATEST}-1focal_all.deb
|
||||
dpkg -i cockpit-identities_${LATEST}-1focal_all.deb &>/dev/null
|
||||
rm cockpit-identities_${LATEST}-1focal_all.deb
|
||||
msg_ok "Installed Cockpit identities"
|
||||
exit
|
||||
fi
|
||||
if [ "$UPD" == "4" ]; then
|
||||
msg_info "Installing dependencies"
|
||||
apt-get install -y rsync &>/dev/null
|
||||
apt-get install -y zip &>/dev/null
|
||||
msg_ok "Installed dependencies"
|
||||
msg_info "Installing Cockpit navigator"
|
||||
LATEST=$(curl -s https://api.github.com/repos/45Drives/cockpit-navigator/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
wget -q https://github.com/45Drives/cockpit-navigator/releases/download/v${LATEST}/cockpit-navigator_${LATEST}-1focal_all.deb
|
||||
dpkg -i cockpit-navigator_${LATEST}-1focal_all.deb &>/dev/null
|
||||
rm cockpit-navigator_${LATEST}-1focal_all.deb
|
||||
msg_ok "Installed Cockpit navigator"
|
||||
exit
|
||||
fi
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:9090${CL} \n"
|
||||
@@ -55,19 +55,27 @@ function default_settings() {
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/commafeed ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Stopping CommaFeed"
|
||||
systemctl stop commafeed
|
||||
msg_ok "Stopped CommaFeed"
|
||||
RELEASE=$(curl -sL https://api.github.com/repos/Athou/commafeed/releases/latest | grep '"tag_name":' | cut -d'"' -f4)
|
||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
|
||||
msg_info "Stopping ${APP}"
|
||||
systemctl stop commafeed
|
||||
msg_ok "Stopped ${APP}"
|
||||
|
||||
msg_info "Updating CommaFeed"
|
||||
cd /opt/commafeed
|
||||
rm commafeed.jar
|
||||
wget -q https://github.com/Athou/commafeed/releases/latest/download/commafeed.jar
|
||||
msg_ok "Updated CommaFeed"
|
||||
msg_info "Updating ${APP} to ${RELEASE}"
|
||||
wget -q https://github.com/Athou/commafeed/releases/download/${RELEASE}/commafeed-${RELEASE}-h2-jvm.zip
|
||||
unzip -q commafeed-${RELEASE}-h2-jvm.zip
|
||||
rsync -a --exclude 'data/' commafeed-${RELEASE}-h2/ /opt/commafeed/
|
||||
rm -rf commafeed-${RELEASE}-h2 commafeed-${RELEASE}-h2-jvm.zip
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated ${APP} to ${RELEASE}"
|
||||
|
||||
msg_info "Starting CommaFeed"
|
||||
systemctl start commafeed
|
||||
msg_ok "Update Completed Successfully"
|
||||
msg_info "Starting ${APP}"
|
||||
systemctl start commafeed
|
||||
msg_ok "Started ${APP}"
|
||||
msg_ok "Updated Successfully"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ CL=$(echo "\033[m")
|
||||
CM="${GN}✓${CL}"
|
||||
CROSS="${RD}✗${CL}"
|
||||
BFR="\\r\\033[K"
|
||||
HOLD="-"
|
||||
HOLD=" "
|
||||
|
||||
# This sets error handling options and defines the error_handler function to handle errors
|
||||
set -Eeuo pipefail
|
||||
@@ -36,11 +36,11 @@ function error_handler() {
|
||||
|
||||
# This function displays a spinner.
|
||||
function spinner() {
|
||||
local chars="/-\|"
|
||||
local spin_i=0
|
||||
printf "\e[?25l"
|
||||
spinner="/-\\|/-\\|"
|
||||
spin_i=0
|
||||
while true; do
|
||||
printf "\b%s" "${spinner:spin_i++%${#spinner}:1}"
|
||||
printf "\r \e[36m%s\e[0m" "${chars:spin_i++%${#chars}:1}"
|
||||
sleep 0.1
|
||||
done
|
||||
}
|
||||
|
||||
64
ct/dashy.sh
64
ct/dashy.sh
@@ -54,37 +54,49 @@ function default_settings() {
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /dashy/public/ ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Stopping ${APP}"
|
||||
systemctl stop dashy
|
||||
msg_ok "Stopped ${APP}"
|
||||
if [[ ! -d /opt/dashy/public/ ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
|
||||
msg_info "Backing up conf.yml"
|
||||
cd ~
|
||||
cp -R /dashy/public/conf.yml conf.yml
|
||||
msg_ok "Backed up conf.yml"
|
||||
RELEASE=$(curl -sL https://api.github.com/repos/Lissy93/dashy/releases/latest | grep '"tag_name":' | cut -d'"' -f4)
|
||||
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
|
||||
msg_info "Stopping ${APP}"
|
||||
systemctl stop dashy
|
||||
msg_ok "Stopped ${APP}"
|
||||
|
||||
msg_info "Updating Dashy"
|
||||
cd /dashy
|
||||
git merge &>/dev/null
|
||||
git pull origin master &>/dev/null
|
||||
yarn &>/dev/null
|
||||
yarn build &>/dev/null
|
||||
msg_ok "Updated Dashy"
|
||||
msg_info "Backing up conf.yml"
|
||||
cd ~
|
||||
if [[ -f /opt/dashy/public/conf.yml ]]; then
|
||||
cp -R /opt/dashy/public/conf.yml conf.yml
|
||||
else
|
||||
cp -R /opt/dashy/user-data/conf.yml conf.yml
|
||||
fi
|
||||
msg_ok "Backed up conf.yml"
|
||||
|
||||
msg_info "Restoring conf.yml"
|
||||
cd ~
|
||||
cp -R conf.yml /dashy/public
|
||||
msg_ok "Restored conf.yml"
|
||||
msg_info "Updating ${APP} to ${RELEASE}"
|
||||
rm -rf /opt/dashy
|
||||
mkdir -p /opt/dashy
|
||||
wget -qO- https://github.com/Lissy93/dashy/archive/refs/tags/${RELEASE}.tar.gz | tar -xz -C /opt/dashy --strip-components=1
|
||||
cd /opt/dashy
|
||||
npm install
|
||||
npm run build
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated ${APP} to ${RELEASE}"
|
||||
|
||||
msg_info "Cleaning"
|
||||
rm -rf conf.yml
|
||||
msg_ok "Cleaned"
|
||||
msg_info "Restoring conf.yml"
|
||||
cd ~
|
||||
cp -R conf.yml /opt/dashy/user-data
|
||||
msg_ok "Restored conf.yml"
|
||||
|
||||
msg_info "Starting Dashy"
|
||||
systemctl start dashy
|
||||
msg_ok "Started Dashy"
|
||||
msg_ok "Updated Successfully"
|
||||
msg_info "Cleaning"
|
||||
rm -rf conf.yml /opt/dashy/public/conf.yml
|
||||
msg_ok "Cleaned"
|
||||
|
||||
msg_info "Starting Dashy"
|
||||
systemctl start dashy
|
||||
msg_ok "Started Dashy"
|
||||
msg_ok "Updated Successfully"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
____ __ _
|
||||
/ __ \___ / /_ (_)___ _____
|
||||
/ __ \___ / /_ (_)___ ____
|
||||
/ / / / _ \/ __ \/ / __ `/ __ \
|
||||
/ /_/ / __/ /_/ / / /_/ / / / /
|
||||
/_____/\___/_.___/_/\__,_/_/ /_/
|
||||
|
||||
@@ -23,13 +23,13 @@ var_disk="8"
|
||||
var_cpu="2"
|
||||
var_ram="2048"
|
||||
var_os="ubuntu"
|
||||
var_version="20.04"
|
||||
var_version="22.04"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="0"
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
|
||||
89
ct/ersatztv.sh
Normal file
89
ct/ersatztv.sh
Normal file
@@ -0,0 +1,89 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck
|
||||
# Co-Author: MickLesk (Canbiz)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
# Source: https://github.com/ErsatzTV/ErsatzTV/
|
||||
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
______ __ _______ __
|
||||
/ ____/_____________ _/ /_____/_ __/ | / /
|
||||
/ __/ / ___/ ___/ __ `/ __/_ / / / | | / /
|
||||
/ /___/ / (__ ) /_/ / /_ / /_/ / | |/ /
|
||||
/_____/_/ /____/\__,_/\__/ /___/_/ |___/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="ErsatzTV"
|
||||
var_disk="5"
|
||||
var_cpu="1"
|
||||
var_ram="1024"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/ErsatzTV ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
|
||||
msg_info "Stopping ErsatzTV"
|
||||
systemctl stop ersatzTV
|
||||
msg_ok "Stopped ErsatzTV"
|
||||
|
||||
msg_info "Updating ErsatzTV"
|
||||
RELEASE=$(curl -s https://api.github.com/repos/ErsatzTV/ErsatzTV/releases | grep -oP '"tag_name": "\K[^"]+' | head -n 1)
|
||||
cp -R /opt/ErsatzTV/ ErsatzTV-backup
|
||||
rm ErsatzTV-backup/ErsatzTV
|
||||
rm -rf /opt/ErsatzTV
|
||||
wget -qO- "https://github.com/ErsatzTV/ErsatzTV/releases/download/${RELEASE}/ErsatzTV-${RELEASE}-linux-x64.tar.gz" | tar -xz -C /opt
|
||||
mv "/opt/ErsatzTV-${RELEASE}-linux-x64" /opt/ErsatzTV
|
||||
cp -R ErsatzTV-backup/* /opt/ErsatzTV/
|
||||
rm -rf ErsatzTV-backup
|
||||
msg_ok "Updated ErsatzTV"
|
||||
|
||||
msg_info "Starting ErsatzTV"
|
||||
systemctl start ersatzTV
|
||||
msg_ok "Started ErsatzTV"
|
||||
msg_ok "Updated Successfully"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} Setup should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:8409${CL} \n"
|
||||
70
ct/evcc.sh
Normal file
70
ct/evcc.sh
Normal file
@@ -0,0 +1,70 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: MickLesk (Canbiz)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
___ _ ____________
|
||||
/ _ \ | / / ___/ ___/
|
||||
/ __/ |/ / /__/ /__
|
||||
\___/|___/\___/\___/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="evcc"
|
||||
var_disk="4"
|
||||
var_cpu="1"
|
||||
var_ram="1024"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -f /etc/apt/sources.list.d/evcc-stable.list ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating evcc LXC"
|
||||
apt update &>/dev/null
|
||||
apt --only-upgrade install -y evcc &>/dev/null
|
||||
msg_ok "Updated Successfully"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} Setup should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:7070${CL} \n"
|
||||
93
ct/fenrus.sh
Normal file
93
ct/fenrus.sh
Normal file
@@ -0,0 +1,93 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# Co-Author: Scorpoon
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
______
|
||||
/ ____/__ ____ _______ _______
|
||||
/ /_ / _ \/ __ \/ ___/ / / / ___/
|
||||
/ __/ / __/ / / / / / /_/ (__ )
|
||||
/_/ \___/_/ /_/_/ \__,_/____/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Fenrus"
|
||||
var_disk="4"
|
||||
var_cpu="1"
|
||||
var_ram="512"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/${APP} ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_error "There is currently no update path available."
|
||||
exit
|
||||
msg_info "Updating ${APP}"
|
||||
systemctl stop ${APP}
|
||||
git clone https://github.com/revenz/Fenrus.git
|
||||
cd Fenrus || exit
|
||||
gitVersionNumber=$(git rev-parse HEAD)
|
||||
|
||||
if [[ "${gitVersionNumber}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
|
||||
mkdir /opt/fenrus-data-backup
|
||||
cp -r "/opt/${APP}/data/" /opt/fenrus-data-backup/data
|
||||
if [[ ! -d /opt/fenrus-data-backup/data ]]; then msg_error "Backup of data folder failed! exiting..."; rm -r /opt/fenrus-data-backup/; exit; fi
|
||||
export DOTNET_CLI_TELEMETRY_OPTOUT=1
|
||||
dotnet publish -c Release -o "/opt/${APP}/" Fenrus.csproj
|
||||
cp -r /opt/fenrus-data-backup/data/ "/opt/${APP}/"
|
||||
echo "${gitVersionNumber}" >"/opt/${APP}_version.txt"
|
||||
rm -r /opt/fenrus-data-backup/
|
||||
msg_ok "Updated $APP"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already up to date"
|
||||
fi
|
||||
cd ..
|
||||
rm -r Fenrus/
|
||||
|
||||
systemctl start ${APP}
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:5000${CL} \n"
|
||||
86
ct/flaresolverr.sh
Normal file
86
ct/flaresolverr.sh
Normal file
@@ -0,0 +1,86 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# Co-Author: remz1337
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
________ _____ __
|
||||
/ ____/ /___ _________ / ___/____ / / _____ __________
|
||||
/ /_ / / __ `/ ___/ _ \\__ \/ __ \/ / | / / _ \/ ___/ ___/
|
||||
/ __/ / / /_/ / / / __/__/ / /_/ / /| |/ / __/ / / /
|
||||
/_/ /_/\__,_/_/ \___/____/\____/_/ |___/\___/_/ /_/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="FlareSolverr"
|
||||
var_disk="4"
|
||||
var_cpu="2"
|
||||
var_ram="2048"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -f /etc/systemd/system/flaresolverr.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
whiptail --backtitle "Proxmox VE Helper Scripts" --msgbox --title "SET RESOURCES" "Please set the resources in your ${APP} LXC to ${var_cpu}vCPU and ${var_ram}RAM for the build process before continuing" 10 75
|
||||
RELEASE=$(wget -q https://github.com/FlareSolverr/FlareSolverr/releases/latest -O - | grep "title>Release" | cut -d " " -f 4)
|
||||
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
|
||||
msg_info "Updating $APP LXC"
|
||||
systemctl stop flaresolverr
|
||||
wget -q https://github.com/FlareSolverr/FlareSolverr/releases/download/$RELEASE/flaresolverr_linux_x64.tar.gz
|
||||
tar -xzf flaresolverr_linux_x64.tar.gz -C /opt
|
||||
rm flaresolverr_linux_x64.tar.gz
|
||||
systemctl start flaresolverr
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated $APP LXC"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_info "Setting Container to Normal Resources"
|
||||
pct set $CTID -memory 512
|
||||
pct set $CTID -cores 1
|
||||
msg_ok "Set Container to Normal Resources"
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:8191${CL} \n"
|
||||
77
ct/flowiseai.sh
Normal file
77
ct/flowiseai.sh
Normal file
@@ -0,0 +1,77 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
________ _ ___ ____
|
||||
/ ____/ /___ _ __(_)_______ / | / _/
|
||||
/ /_ / / __ \ | /| / / / ___/ _ \/ /| | / /
|
||||
/ __/ / / /_/ / |/ |/ / (__ ) __/ ___ |_/ /
|
||||
/_/ /_/\____/|__/|__/_/____/\___/_/ |_/___/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="FlowiseAI"
|
||||
var_disk="10"
|
||||
var_cpu="4"
|
||||
var_ram="4096"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -f /etc/systemd/system/flowise.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
whiptail --backtitle "Proxmox VE Helper Scripts" --msgbox --title "SET RESOURCES" "Please set the resources in your ${APP} LXC to ${var_cpu}vCPU and ${var_ram}RAM for the build process before continuing" 10 75
|
||||
msg_info "Updating ${APP}"
|
||||
systemctl stop flowise
|
||||
npm install -g flowise --upgrade
|
||||
systemctl start flowise
|
||||
msg_ok "Updated ${APP}"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_info "Setting Container to Normal Resources"
|
||||
pct set $CTID -memory 2048
|
||||
pct set $CTID -cores 2
|
||||
msg_ok "Set Container to Normal Resources"
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:3000${CL} \n"
|
||||
89
ct/forgejo.sh
Normal file
89
ct/forgejo.sh
Normal file
@@ -0,0 +1,89 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
______ _
|
||||
/ ____/___ _________ ___ (_)___
|
||||
/ /_ / __ \/ ___/ __ `/ _ \ / / __ \
|
||||
/ __/ / /_/ / / / /_/ / __/ / / /_/ /
|
||||
/_/ \____/_/ \__, /\___/_/ /\____/
|
||||
/____/ /___/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Forgejo"
|
||||
var_disk="10"
|
||||
var_cpu="2"
|
||||
var_ram="2048"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/forgejo ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Stopping ${APP}"
|
||||
systemctl stop forgejo
|
||||
msg_ok "Stopped ${APP}"
|
||||
|
||||
msg_info "Updating ${APP}"
|
||||
RELEASE=$(curl -s https://codeberg.org/api/v1/repos/forgejo/forgejo/releases/latest | grep -oP '"tag_name":\s*"\K[^"]+' | sed 's/^v//')
|
||||
wget -qO forgejo-$RELEASE-linux-amd64 "https://codeberg.org/forgejo/forgejo/releases/download/v${RELEASE}/forgejo-${RELEASE}-linux-amd64"
|
||||
rm -rf /opt/forgejo/*
|
||||
cp -r forgejo-$RELEASE-linux-amd64 /opt/forgejo/forgejo-$RELEASE-linux-amd64
|
||||
chmod +x /opt/forgejo/forgejo-$RELEASE-linux-amd64
|
||||
ln -sf /opt/forgejo/forgejo-$RELEASE-linux-amd64 /usr/local/bin/forgejo
|
||||
msg_ok "Updated ${APP}"
|
||||
|
||||
msg_info "Cleaning"
|
||||
rm -rf forgejo-$RELEASE-linux-amd64
|
||||
msg_ok "Cleaned"
|
||||
|
||||
msg_info "Starting ${APP}"
|
||||
systemctl start forgejo
|
||||
msg_ok "Started ${APP}"
|
||||
msg_ok "Updated Successfully"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:3000${CL} \n"
|
||||
73
ct/frigate.sh
Normal file
73
ct/frigate.sh
Normal file
@@ -0,0 +1,73 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Authors: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
______ _ __
|
||||
/ ____/____(_)___ _____ _/ /____
|
||||
/ /_ / ___/ / __ `/ __ `/ __/ _ \
|
||||
/ __/ / / / / /_/ / /_/ / /_/ __/
|
||||
/_/ /_/ /_/\__, /\__,_/\__/\___/
|
||||
/____/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Frigate"
|
||||
var_disk="20"
|
||||
var_cpu="4"
|
||||
var_ram="4096"
|
||||
var_os="debian"
|
||||
var_version="11"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="0"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
if [[ ! -f /etc/systemd/system/frigate.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_error "To update Frigate, create a new container and transfer your configuration."
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_info "Setting Container to Normal Resources"
|
||||
pct set $CTID -memory 1024
|
||||
msg_ok "Set Container to Normal Resources"
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:5000${CL} \n"
|
||||
echo -e "go2rtc should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:1984${CL} \n"
|
||||
77
ct/gitea.sh
Normal file
77
ct/gitea.sh
Normal file
@@ -0,0 +1,77 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# Co-author: Rogue-King
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
______ _ __
|
||||
/ ____/(_)/ /____ ____ _
|
||||
/ / __// // __/ _ \/ __ /
|
||||
/ /_/ // // /_/ __/ /_/ /
|
||||
\____//_/ \__/\___/\__,_/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Gitea"
|
||||
var_disk="8"
|
||||
var_cpu="1"
|
||||
var_ram="1024"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -f /usr/local/bin/gitea ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
RELEASE=$(wget -q https://github.com/go-gitea/gitea/releases/latest -O - | grep "title>Release" | cut -d " " -f 4 | sed 's/^v//')
|
||||
msg_info "Updating $APP to ${RELEASE}"
|
||||
wget -q https://github.com/go-gitea/gitea/releases/download/v$RELEASE/gitea-$RELEASE-linux-amd64
|
||||
systemctl stop gitea
|
||||
rm -rf /usr/local/bin/gitea
|
||||
mv gitea* /usr/local/bin/gitea
|
||||
chmod +x /usr/local/bin/gitea
|
||||
systemctl start gitea
|
||||
msg_ok "Updated $APP Successfully"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:3000${CL} \n"
|
||||
68
ct/gokapi.sh
Normal file
68
ct/gokapi.sh
Normal file
@@ -0,0 +1,68 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
______ __ _
|
||||
/ ____/___ / /______ _____ (_)
|
||||
/ / __/ __ \/ //_/ __ `/ __ \/ /
|
||||
/ /_/ / /_/ / ,< / /_/ / /_/ / /
|
||||
\____/\____/_/|_|\__,_/ .___/_/
|
||||
/_/
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Gokapi"
|
||||
var_disk="4"
|
||||
var_cpu="1"
|
||||
var_ram="512"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/gokapi ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_error "There is currently no update path available."
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} Setup should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:53842/setup${CL} \n"
|
||||
24
ct/gotify.sh
24
ct/gotify.sh
@@ -55,7 +55,29 @@ function default_settings() {
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/gotify ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_error "There is currently no update path available."
|
||||
|
||||
RELEASE=$(curl -s https://api.github.com/repos/gotify/server/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
|
||||
msg_info "Stopping ${APP}"
|
||||
systemctl stop gotify
|
||||
msg_ok "Stopped ${APP}"
|
||||
|
||||
msg_info "Updating ${APP} to ${RELEASE}"
|
||||
cd /opt/gotify
|
||||
wget -q https://github.com/gotify/server/releases/download/v${RELEASE}/gotify-linux-amd64.zip
|
||||
unzip -oq gotify-linux-amd64.zip
|
||||
rm -rf gotify-linux-amd64.zip
|
||||
chmod +x gotify-linux-amd64
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated ${APP} to ${RELEASE}"
|
||||
|
||||
msg_info "Starting ${APP}"
|
||||
systemctl start gotify
|
||||
msg_ok "Started ${APP}"
|
||||
msg_ok "Updated Successfully"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
@@ -56,9 +56,6 @@ function update_script() {
|
||||
header_info
|
||||
if [[ ! -f /etc/apt/sources.list.d/grafana.list ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating ${APP}"
|
||||
apt-key del 4E40DDF6D76E284A4A6780E48C8C34C524098CB6
|
||||
wget -q -O /usr/share/keyrings/grafana.key https://apt.grafana.com/gpg.key
|
||||
echo "deb [signed-by=/usr/share/keyrings/grafana.key] https://apt.grafana.com stable main" | tee /etc/apt/sources.list.d/grafana.list
|
||||
apt-get update &>/dev/null
|
||||
apt-get -y upgrade &>/dev/null
|
||||
msg_ok "Updated Successfully"
|
||||
|
||||
11
ct/grocy.sh
11
ct/grocy.sh
@@ -55,6 +55,17 @@ function default_settings() {
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -f /etc/apache2/sites-available/grocy.conf ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
php_version=$(php -v | head -n 1 | awk '{print $2}')
|
||||
if [[ ! $php_version == "8.3"* ]]; then
|
||||
msg_info "Updating PHP"
|
||||
curl -sSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg
|
||||
echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ bookworm main" >/etc/apt/sources.list.d/php.list
|
||||
apt-get update
|
||||
apt-get install -y php8.3 php8.3-cli php8.3-{bz2,curl,mbstring,intl,sqlite3,fpm,gd,zip,xml}
|
||||
systemctl reload apache2
|
||||
apt autoremove
|
||||
msg_ok "Updated PHP"
|
||||
fi
|
||||
msg_info "Updating ${APP}"
|
||||
bash /var/www/html/update.sh
|
||||
msg_ok "Updated Successfully"
|
||||
|
||||
86
ct/headscale.sh
Normal file
86
ct/headscale.sh
Normal file
@@ -0,0 +1,86 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
__ __ __ __
|
||||
/ / / /__ ____ _____/ /_____________ _/ /__
|
||||
/ /_/ / _ \/ __ `/ __ / ___/ ___/ __ `/ / _ \
|
||||
/ __ / __/ /_/ / /_/ (__ ) /__/ /_/ / / __/
|
||||
/_/ /_/\___/\__,_/\__,_/____/\___/\__,_/_/\___/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Headscale"
|
||||
var_disk="2"
|
||||
var_cpu="1"
|
||||
var_ram="512"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /etc/headscale ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
|
||||
RELEASE=$(curl -s https://api.github.com/repos/juanfont/headscale/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
|
||||
msg_info "Stopping ${APP}"
|
||||
systemctl stop headscale
|
||||
msg_ok "Stopped ${APP}"
|
||||
|
||||
msg_info "Updating $APP to v${RELEASE}"
|
||||
wget -q https://github.com/juanfont/headscale/releases/download/v${RELEASE}/headscale_${RELEASE}_linux_amd64.deb
|
||||
dpkg -i headscale_${RELEASE}_linux_amd64.deb
|
||||
rm headscale_${RELEASE}_linux_amd64.deb
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated $APP to ${RELEASE}"
|
||||
|
||||
msg_info "Starting ${APP}"
|
||||
systemctl start headscale
|
||||
msg_ok "Started ${APP}"
|
||||
msg_ok "Updated Successfully"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
111
ct/heimdall-dashboard.sh
Normal file
111
ct/heimdall-dashboard.sh
Normal file
@@ -0,0 +1,111 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
_ _ _ _ ___ _ _ _
|
||||
/\ /\___(_)_ __ ___ __| | __ _| | | / \__ _ ___| |__ | |__ ___ __ _ _ __ __| |
|
||||
/ /_/ / _ \ | '_ ` _ \ / _` |/ _` | | | / /\ / _` / __| '_ \| '_ \ / _ \ / _` | '__/ _` |
|
||||
/ __ / __/ | | | | | | (_| | (_| | | | / /_// (_| \__ \ | | | |_) | (_) | (_| | | | (_| |
|
||||
\/ /_/ \___|_|_| |_| |_|\__,_|\__,_|_|_| /___,' \__,_|___/_| |_|_.__/ \___/ \__,_|_| \__,_|
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Heimdall-Dashboard"
|
||||
var_disk="2"
|
||||
var_cpu="1"
|
||||
var_ram="512"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/Heimdall ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
RELEASE=$(curl -sX GET "https://api.github.com/repos/linuxserver/Heimdall/releases/latest" | awk '/tag_name/{print $4;exit}' FS='[""]')
|
||||
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
|
||||
msg_info "Stopping ${APP}"
|
||||
systemctl stop heimdall
|
||||
sleep 1
|
||||
msg_ok "Stopped ${APP}"
|
||||
|
||||
msg_info "Backing up Data"
|
||||
cp -R /opt/Heimdall/database database-backup
|
||||
cp -R /opt/Heimdall/public public-backup
|
||||
sleep 1
|
||||
msg_ok "Backed up Data"
|
||||
|
||||
msg_info "Updating Heimdall Dashboard to ${RELEASE}"
|
||||
wget -q https://github.com/linuxserver/Heimdall/archive/${RELEASE}.tar.gz
|
||||
tar xzf ${RELEASE}.tar.gz
|
||||
VER=$(curl -s https://api.github.com/repos/linuxserver/Heimdall/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
cp -R Heimdall-${VER}/* /opt/Heimdall
|
||||
cd /opt/Heimdall
|
||||
apt-get install -y composer &>/dev/null
|
||||
COMPOSER_ALLOW_SUPERUSER=1 composer dump-autoload &>/dev/null
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated Heimdall Dashboard to ${RELEASE}"
|
||||
|
||||
msg_info "Restoring Data"
|
||||
cd ~
|
||||
cp -R database-backup/* /opt/Heimdall/database
|
||||
cp -R public-backup/* /opt/Heimdall/public
|
||||
sleep 1
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Cleanup"
|
||||
rm -rf {${RELEASE}.tar.gz,Heimdall-${VER},public-backup,database-backup,Heimdall}
|
||||
sleep 1
|
||||
msg_ok "Cleaned"
|
||||
|
||||
msg_info "Starting ${APP}"
|
||||
systemctl start heimdall.service
|
||||
sleep 2
|
||||
msg_ok "Started ${APP}"
|
||||
msg_ok "Updated Successfully"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}."
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:7990${CL} \n"
|
||||
@@ -1,151 +0,0 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
_ _ _ _ ___ _ _ _
|
||||
/\ /\___(_)_ __ ___ __| | __ _| | | / \__ _ ___| |__ | |__ ___ __ _ _ __ __| |
|
||||
/ /_/ / _ \ | '_ ` _ \ / _` |/ _` | | | / /\ / _` / __| '_ \| '_ \ / _ \ / _` | '__/ _` |
|
||||
/ __ / __/ | | | | | | (_| | (_| | | | / /_// (_| \__ \ | | | |_) | (_) | (_| | | | (_| |
|
||||
\/ /_/ \___|_|_| |_| |_|\__,_|\__,_|_|_| /___,' \__,_|___/_| |_|_.__/ \___/ \__,_|_| \__,_|
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Heimdall Dashboard"
|
||||
var_disk="2"
|
||||
var_cpu="1"
|
||||
var_ram="512"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/Heimdall ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Stopping ${APP}"
|
||||
systemctl disable heimdall.service &>/dev/null
|
||||
systemctl stop heimdall
|
||||
sleep 1
|
||||
msg_ok "Stopped ${APP}"
|
||||
|
||||
msg_info "Backing up Data"
|
||||
if [ -d "/opt/Heimdall-2.4.6" ]; then
|
||||
cp -R /opt/Heimdall-2.4.6/database database-backup
|
||||
cp -R /opt/Heimdall-2.4.6/public public-backup
|
||||
elif [[ -d "/opt/Heimdall-2.4.7b" ]]; then
|
||||
cp -R /opt/Heimdall-2.4.7b/database database-backup
|
||||
cp -R /opt/Heimdall-2.4.7b/public public-backup
|
||||
elif [[ -d "/opt/Heimdall-2.4.8" ]]; then
|
||||
cp -R /opt/Heimdall-2.4.8/database database-backup
|
||||
cp -R /opt/Heimdall-2.4.8/public public-backup
|
||||
else
|
||||
cp -R /opt/Heimdall/database database-backup
|
||||
cp -R /opt/Heimdall/public public-backup
|
||||
fi
|
||||
sleep 1
|
||||
msg_ok "Backed up Data"
|
||||
|
||||
RELEASE=$(curl -sX GET "https://api.github.com/repos/linuxserver/Heimdall/releases/latest" | awk '/tag_name/{print $4;exit}' FS='[""]')
|
||||
msg_info "Updating Heimdall Dashboard to ${RELEASE}"
|
||||
curl --silent -o ${RELEASE}.tar.gz -L "https://github.com/linuxserver/Heimdall/archive/${RELEASE}.tar.gz" &>/dev/null
|
||||
tar xvzf ${RELEASE}.tar.gz &>/dev/null
|
||||
VER=$(curl -s https://api.github.com/repos/linuxserver/Heimdall/releases/latest |
|
||||
grep "tag_name" |
|
||||
awk '{print substr($2, 3, length($2)-4) }')
|
||||
|
||||
if [ ! -d "/opt/Heimdall" ]; then
|
||||
mv Heimdall-${VER} /opt/Heimdall
|
||||
else
|
||||
cp -R Heimdall-${VER}/* /opt/Heimdall
|
||||
fi
|
||||
|
||||
service_path="/etc/systemd/system/heimdall.service"
|
||||
echo "[Unit]
|
||||
Description=Heimdall
|
||||
After=network.target
|
||||
[Service]
|
||||
Restart=always
|
||||
RestartSec=5
|
||||
Type=simple
|
||||
User=root
|
||||
WorkingDirectory=/opt/Heimdall
|
||||
ExecStart="/usr/bin/php" artisan serve --port 7990 --host 0.0.0.0
|
||||
TimeoutStopSec=30
|
||||
[Install]
|
||||
WantedBy=multi-user.target" >$service_path
|
||||
msg_ok "Updated Heimdall Dashboard to ${RELEASE}"
|
||||
|
||||
msg_info "Restoring Data"
|
||||
cp -R database-backup/* /opt/Heimdall/database
|
||||
cp -R public-backup/* /opt/Heimdall/public
|
||||
sleep 1
|
||||
msg_ok "Restored Data"
|
||||
|
||||
msg_info "Cleanup"
|
||||
if [ -d "/opt/Heimdall-2.4.6" ]; then
|
||||
rm -rf /opt/Heimdall-2.4.6
|
||||
rm -rf /opt/v2.4.6.tar.gz
|
||||
elif [[ -d "/opt/Heimdall-2.4.7b" ]]; then
|
||||
rm -rf /opt/Heimdall-2.4.7b
|
||||
rm -rf /opt/v2.4.7b.tar.gz
|
||||
elif [[ -d "/opt/Heimdall-2.4.8" ]]; then
|
||||
rm -rf /opt/Heimdall-2.4.8
|
||||
rm -rf /opt/v2.4.8.tar.gz
|
||||
fi
|
||||
|
||||
rm -rf ${RELEASE}.tar.gz
|
||||
rm -rf Heimdall-${VER}
|
||||
rm -rf public-backup
|
||||
rm -rf database-backup
|
||||
rm -rf Heimdall
|
||||
sleep 1
|
||||
msg_ok "Cleaned"
|
||||
|
||||
msg_info "Starting ${APP}"
|
||||
systemctl enable --now heimdall.service &>/dev/null
|
||||
sleep 2
|
||||
msg_ok "Started ${APP}"
|
||||
msg_ok "Updated Successfully"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:7990${CL} \n"
|
||||
66
ct/hivemq.sh
Normal file
66
ct/hivemq.sh
Normal file
@@ -0,0 +1,66 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
__ ___ __ _______ ____________
|
||||
/ / / (_) _____ / |/ / __ \ / ____/ ____/
|
||||
/ /_/ / / | / / _ \/ /|_/ / / / / / / / __/
|
||||
/ __ / /| |/ / __/ / / / /_/ / / /___/ /___
|
||||
/_/ /_/_/ |___/\___/_/ /_/\___\_\ \____/_____/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="HiveMQ"
|
||||
var_disk="4"
|
||||
var_cpu="1"
|
||||
var_ram="1024"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_error "There is currently no update path available."
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
20
ct/homarr.sh
20
ct/homarr.sh
@@ -57,19 +57,15 @@ header_info
|
||||
if [[ ! -d /opt/homarr ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating $APP (Patience)"
|
||||
systemctl stop homarr
|
||||
rm -rf /root/data-homarr-backup
|
||||
rm -rf /root/database-homarr-backup
|
||||
cp -R /opt/homarr/data /root/data-homarr-backup
|
||||
cp -R /opt/homarr/database /root/database-homarr-backup
|
||||
RELEASE=$(curl -s https://api.github.com/repos/ajnart/homarr/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
wget -q -O- https://github.com/ajnart/homarr/archive/refs/tags/v${RELEASE}.tar.gz | tar -xz -C /opt
|
||||
cp -R /opt/homarr-${RELEASE}/* /opt/homarr
|
||||
cp -R /root/data-homarr-backup/* /opt/homarr/data
|
||||
cp -R /root/database-homarr-backup/* /opt/homarr/database
|
||||
rm -rf /opt/homarr-${RELEASE}
|
||||
cd /opt/homarr
|
||||
yarn install &>/dev/null
|
||||
yarn build &>/dev/null
|
||||
if ! git pull; then
|
||||
echo "Already up to date."
|
||||
systemctl start homarr
|
||||
echo "No update required."
|
||||
exit
|
||||
fi
|
||||
yarn install
|
||||
yarn build
|
||||
systemctl start homarr
|
||||
msg_ok "Updated $APP"
|
||||
exit
|
||||
|
||||
@@ -22,8 +22,8 @@ APP="Home Assistant-Core"
|
||||
var_disk="8"
|
||||
var_cpu="2"
|
||||
var_ram="1024"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
var_os="ubuntu"
|
||||
var_version="24.04"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
@@ -63,7 +63,6 @@ function update_script() {
|
||||
"1" "Update Core" ON \
|
||||
"2" "Install HACS" OFF \
|
||||
"3" "Install FileBrowser" OFF \
|
||||
"4" "Install/Update AppDaemon" OFF \
|
||||
3>&1 1>&2 2>&3)
|
||||
header_info
|
||||
if [ "$UPD" == "1" ]; then
|
||||
@@ -78,7 +77,7 @@ function update_script() {
|
||||
echo -e "${GN}Updating to Stable Version${CL}"
|
||||
BR=""
|
||||
fi
|
||||
if [[ "$PY" == "python3.10" ]]; then echo -e "⚠️ Home Assistant now requires Python 3.11 to run."; fi
|
||||
if [[ "$PY" == "python3.11" ]]; then echo -e "⚠️ Home Assistant will soon require Python 3.12."; fi
|
||||
|
||||
msg_info "Stopping Home Assistant"
|
||||
systemctl stop homeassistant
|
||||
@@ -86,7 +85,7 @@ function update_script() {
|
||||
|
||||
msg_info "Updating Home Assistant"
|
||||
source /srv/homeassistant/bin/activate
|
||||
pip install ${BR}--upgrade homeassistant &>/dev/null
|
||||
uv pip install ${BR}--upgrade homeassistant &>/dev/null
|
||||
msg_ok "Updated Home Assistant"
|
||||
|
||||
msg_info "Starting Home Assistant"
|
||||
@@ -108,12 +107,22 @@ function update_script() {
|
||||
exit
|
||||
fi
|
||||
if [ "$UPD" == "3" ]; then
|
||||
set +Eeuo pipefail
|
||||
read -r -p "Would you like to use No Authentication? <y/N> " prompt
|
||||
msg_info "Installing FileBrowser"
|
||||
RELEASE=$(curl -fsSL https://api.github.com/repos/filebrowser/filebrowser/releases/latest | grep -o '"tag_name": ".*"' | sed 's/"//g' | sed 's/tag_name: //g')
|
||||
curl -fsSL https://github.com/filebrowser/filebrowser/releases/download/v2.23.0/linux-amd64-filebrowser.tar.gz | tar -xzv -C /usr/local/bin &>/dev/null
|
||||
curl -fsSL https://github.com/filebrowser/filebrowser/releases/download/$RELEASE/linux-amd64-filebrowser.tar.gz | tar -xzv -C /usr/local/bin &>/dev/null
|
||||
|
||||
if [[ "${prompt,,}" =~ ^(y|yes)$ ]]; then
|
||||
filebrowser config init -a '0.0.0.0' &>/dev/null
|
||||
filebrowser config set -a '0.0.0.0' &>/dev/null
|
||||
filebrowser users add admin changeme --perm.admin &>/dev/null
|
||||
filebrowser config set --auth.method=noauth &>/dev/null
|
||||
filebrowser users add ID 1 --perm.admin &>/dev/null
|
||||
else
|
||||
filebrowser config init -a '0.0.0.0' &>/dev/null
|
||||
filebrowser config set -a '0.0.0.0' &>/dev/null
|
||||
filebrowser users add admin helper-scripts.com --perm.admin &>/dev/null
|
||||
fi
|
||||
msg_ok "Installed FileBrowser"
|
||||
|
||||
msg_info "Creating Service"
|
||||
@@ -133,81 +142,9 @@ WantedBy=default.target" >$service_path
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "FileBrowser should be reachable by going to the following URL.
|
||||
${BL}http://$IP:8080${CL} admin|changeme\n"
|
||||
${BL}http://$IP:8080${CL} admin|helper-scripts.com\n"
|
||||
exit
|
||||
fi
|
||||
if [ "$UPD" == "4" ]; then
|
||||
clear
|
||||
header_info
|
||||
if [[ ! -d /srv/appdaemon ]]; then
|
||||
msg_info "Installing AppDaemon"
|
||||
mkdir /srv/appdaemon
|
||||
cd /srv/appdaemon
|
||||
python3 -m venv .
|
||||
source bin/activate
|
||||
pip install appdaemon &>/dev/null
|
||||
mkdir -p /root/.homeassistant/appdaemon/apps
|
||||
cat >/root/.homeassistant/appdaemon/appdaemon.yaml <<EOF
|
||||
# Sample appdaemon.yml file
|
||||
# For configuration, please visit: https://appdaemon.readthedocs.io/en/latest/CONFIGURE.html
|
||||
appdaemon:
|
||||
time_zone: CET
|
||||
latitude: 51.725
|
||||
longitude: 14.3434
|
||||
elevation: 0
|
||||
plugins:
|
||||
HASS:
|
||||
type: hass
|
||||
ha_url: <home_assistant_base_url>
|
||||
token: <some_long_lived_access_token>
|
||||
http:
|
||||
url: http://127.0.0.1:5050
|
||||
admin:
|
||||
api:
|
||||
EOF
|
||||
msg_ok "Installed AppDaemon"
|
||||
|
||||
msg_info "Creating Service"
|
||||
cat >/etc/systemd/system/appdaemon.service <<EOF
|
||||
[Unit]
|
||||
Description=AppDaemon
|
||||
After=homeassistant.service
|
||||
Requires=homeassistant.service
|
||||
[Service]
|
||||
Type=simple
|
||||
WorkingDirectory=/root/.homeassistant/appdaemon
|
||||
ExecStart=/srv/appdaemon/bin/appdaemon -c "/root/.homeassistant/appdaemon"
|
||||
RestartForceExitStatus=100
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOF
|
||||
systemctl enable --now appdaemon &>/dev/null
|
||||
msg_ok "Created Service"
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "AppDaemon should be reachable by going to the following URL.
|
||||
${BL}http://$IP:5050${CL}\n"
|
||||
exit
|
||||
else
|
||||
msg_info "Upgrading AppDaemon"
|
||||
msg_info "Stopping AppDaemon"
|
||||
systemctl stop appdaemon
|
||||
msg_ok "Stopped AppDaemon"
|
||||
|
||||
msg_info "Updating AppDaemon"
|
||||
source /srv/appdaemon/bin/activate
|
||||
pip install --upgrade appdaemon &>/dev/null
|
||||
msg_ok "Updated AppDaemon"
|
||||
|
||||
msg_info "Starting AppDaemon"
|
||||
systemctl start appdaemon
|
||||
sleep 2
|
||||
msg_ok "Started AppDaemon"
|
||||
msg_ok "Update Successful"
|
||||
echo -e "\n Go to http://${IP}:5050 \n"
|
||||
exit
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
start
|
||||
|
||||
@@ -105,7 +105,7 @@ function update_script() {
|
||||
curl -fsSL https://github.com/filebrowser/filebrowser/releases/download/v2.23.0/linux-amd64-filebrowser.tar.gz | tar -xzv -C /usr/local/bin &>/dev/null
|
||||
filebrowser config init -a '0.0.0.0' &>/dev/null
|
||||
filebrowser config set -a '0.0.0.0' &>/dev/null
|
||||
filebrowser users add admin changeme --perm.admin &>/dev/null
|
||||
filebrowser users add admin helper-scripts.com --perm.admin &>/dev/null
|
||||
msg_ok "Installed FileBrowser"
|
||||
|
||||
msg_info "Creating Service"
|
||||
@@ -125,7 +125,7 @@ WantedBy=default.target" >$service_path
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "FileBrowser should be reachable by going to the following URL.
|
||||
${BL}http://$IP:8080${CL} admin|changeme\n"
|
||||
${BL}http://$IP:8080${CL} admin|helper-scripts.com\n"
|
||||
exit
|
||||
fi
|
||||
}
|
||||
|
||||
94
ct/homebox.sh
Normal file
94
ct/homebox.sh
Normal file
@@ -0,0 +1,94 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck
|
||||
# Co-Author: MickLesk (Canbiz)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
__ __ ____
|
||||
/ / / /___ ____ ___ ___ / __ )____ _ __
|
||||
/ /_/ / __ \/ __ `__ \/ _ \/ __ / __ \| |/_/
|
||||
/ __ / /_/ / / / / / / __/ /_/ / /_/ /> <
|
||||
/_/ /_/\____/_/ /_/ /_/\___/_____/\____/_/|_|
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="HomeBox"
|
||||
var_disk="4"
|
||||
var_cpu="1"
|
||||
var_ram="1024"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -f /opt/homebox ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
if (( $(df /boot | awk 'NR==2{gsub("%","",$5); print $5}') > 80 )); then
|
||||
read -r -p "Warning: Storage is dangerously low, continue anyway? <y/N> " prompt
|
||||
[[ ${prompt,,} =~ ^(y|yes)$ ]] || exit
|
||||
fi
|
||||
RELEASE=$(curl -s https://api.github.com/repos/sysadminsmedia/homebox/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
|
||||
msg_info "Stopping ${APP}"
|
||||
systemctl stop homebox
|
||||
msg_ok "${APP} Stopped"
|
||||
|
||||
msg_info "Updating ${APP} to ${RELEASE}"
|
||||
cd /opt
|
||||
rm -rf homebox_bak
|
||||
mv homebox homebox_bak
|
||||
wget -qO- https://github.com/sysadminsmedia/homebox/releases/download/${RELEASE}/homebox_Linux_x86_64.tar.gz | tar -xzf - -C /opt
|
||||
chmod +x /opt/homebox
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated Homebox"
|
||||
|
||||
msg_info "Starting ${APP}"
|
||||
systemctl start homebox
|
||||
msg_ok "Started ${APP}"
|
||||
|
||||
msg_ok "Updated Successfully"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} Setup should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:7745${CL} \n"
|
||||
@@ -55,26 +55,33 @@ function default_settings() {
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/homepage ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
if [[ "$(node -v | cut -d 'v' -f 2)" == "18."* ]]; then
|
||||
if [[ "$(node -v | cut -d 'v' -f 2)" == "18."* ]]; then
|
||||
if ! command -v npm >/dev/null 2>&1; then
|
||||
echo "Installing NPM..."
|
||||
apt-get install -y npm >/dev/null 2>&1
|
||||
npm install -g pnpm >/dev/null 2>&1
|
||||
echo "Installed NPM..."
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
RELEASE=$(curl -s https://api.github.com/repos/gethomepage/homepage/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
msg_info "Updating Homepage to v${RELEASE} (Patience)"
|
||||
systemctl stop homepage
|
||||
wget -q https://github.com/gethomepage/homepage/archive/refs/tags/v${RELEASE}.tar.gz
|
||||
tar -xzf v${RELEASE}.tar.gz
|
||||
cp -r homepage-${RELEASE}/* /opt/homepage/
|
||||
rm -rf homepage-${RELEASE}
|
||||
cd /opt/homepage
|
||||
npx update-browserslist-db@latest
|
||||
pnpm install
|
||||
pnpm build
|
||||
systemctl start homepage
|
||||
msg_ok "Updated Homepage to v${RELEASE}"
|
||||
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
|
||||
msg_info "Updating Homepage to v${RELEASE} (Patience)"
|
||||
systemctl stop homepage
|
||||
wget -q https://github.com/gethomepage/homepage/archive/refs/tags/v${RELEASE}.tar.gz
|
||||
tar -xzf v${RELEASE}.tar.gz
|
||||
rm -rf v${RELEASE}.tar.gz
|
||||
cp -r homepage-${RELEASE}/* /opt/homepage/
|
||||
rm -rf homepage-${RELEASE}
|
||||
cd /opt/homepage
|
||||
npx update-browserslist-db@latest
|
||||
pnpm install
|
||||
pnpm build
|
||||
systemctl start homepage
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated Homepage to v${RELEASE}"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
16
ct/homer.sh
16
ct/homer.sh
@@ -59,10 +59,11 @@ msg_info "Stopping ${APP}"
|
||||
systemctl stop homer
|
||||
msg_ok "Stopped ${APP}"
|
||||
|
||||
msg_info "Backing up config.yml"
|
||||
msg_info "Backing up assets directory"
|
||||
cd ~
|
||||
cp -R /opt/homer/assets/config.yml config.yml
|
||||
msg_ok "Backed up config.yml"
|
||||
mkdir -p assets-backup
|
||||
cp -R /opt/homer/assets/. assets-backup
|
||||
msg_ok "Backed up assets directory"
|
||||
|
||||
msg_info "Updating ${APP}"
|
||||
rm -rf /opt/homer/*
|
||||
@@ -70,13 +71,14 @@ cd /opt/homer
|
||||
wget -q https://github.com/bastienwirtz/homer/releases/latest/download/homer.zip
|
||||
unzip homer.zip &>/dev/null
|
||||
msg_ok "Updated ${APP}"
|
||||
msg_info "Restoring conf.yml"
|
||||
|
||||
msg_info "Restoring assets directory"
|
||||
cd ~
|
||||
cp -R config.yml /opt/homer/assets
|
||||
msg_ok "Restored conf.yml"
|
||||
cp -Rf assets-backup/. /opt/homer/assets/
|
||||
msg_ok "Restored assets directory"
|
||||
|
||||
msg_info "Cleaning"
|
||||
rm -rf config.yml /opt/homer/homer.zip
|
||||
rm -rf assets-backup /opt/homer/homer.zip
|
||||
msg_ok "Cleaned"
|
||||
|
||||
msg_info "Starting ${APP}"
|
||||
|
||||
@@ -24,7 +24,7 @@ var_disk="2"
|
||||
var_cpu="1"
|
||||
var_ram="512"
|
||||
var_os="debian"
|
||||
var_version="11"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
67
ct/iventoy.sh
Normal file
67
ct/iventoy.sh
Normal file
@@ -0,0 +1,67 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
_ _ __ __
|
||||
(_) | / /__ ____ / /_____ __ __
|
||||
/ /| | / / _ \/ __ \/ __/ __ \/ / / /
|
||||
/ / | |/ / __/ / / / /_/ /_/ / /_/ /
|
||||
/_/ |___/\___/_/ /_/\__/\____/\__, /
|
||||
/____/
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="iVentoy"
|
||||
var_disk="2"
|
||||
var_cpu="1"
|
||||
var_ram="512"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="0"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
if [[ ! -d /opt/iventoy ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_error "There is currently no update path available."
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:26000/ ${CL} \n"
|
||||
@@ -55,10 +55,20 @@ function default_settings() {
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -f /etc/systemd/system/jackett.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating ${APP} LXC"
|
||||
apt-get update &>/dev/null
|
||||
apt-get -y upgrade &>/dev/null
|
||||
msg_ok "Updated ${APP} LXC"
|
||||
RELEASE=$(wget -q https://github.com/Jackett/Jackett/releases/latest -O - | grep "title>Release" | cut -d " " -f 4)
|
||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
|
||||
msg_info "Updating ${APP}"
|
||||
wget -q https://github.com/Jackett/Jackett/releases/download/$RELEASE/Jackett.Binaries.LinuxAMDx64.tar.gz
|
||||
systemctl stop jackett
|
||||
rm -rf /opt/Jackett
|
||||
tar -xzf Jackett.Binaries.LinuxAMDx64.tar.gz -C /opt
|
||||
rm -rf Jackett.Binaries.LinuxAMDx64.tar.gz
|
||||
systemctl start jackett
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated ${APP} to ${RELEASE}"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@ color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="0"
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
|
||||
@@ -20,8 +20,8 @@ header_info
|
||||
echo -e "Loading..."
|
||||
APP="Jellyseerr"
|
||||
var_disk="8"
|
||||
var_cpu="2"
|
||||
var_ram="2048"
|
||||
var_cpu="4"
|
||||
var_ram="4096"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
@@ -55,19 +55,46 @@ function default_settings() {
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/jellyseerr ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
if (( $(df /boot | awk 'NR==2{gsub("%","",$5); print $5}') > 80 )); then
|
||||
read -r -p "Warning: Storage is dangerously low, continue anyway? <y/N> " prompt
|
||||
[[ ${prompt,,} =~ ^(y|yes)$ ]] || exit
|
||||
fi
|
||||
whiptail --backtitle "Proxmox VE Helper Scripts" --msgbox --title "SET RESOURCES" "Please set the resources in your Jellyseerr LXC to 4vcpu and 4096RAM for the build process before continuing" 10 75
|
||||
if ! command -v pnpm &> /dev/null; then
|
||||
msg_error "pnpm not found. Installing..."
|
||||
npm install -g pnpm &>/dev/null
|
||||
else
|
||||
msg_ok "pnpm is already installed."
|
||||
fi
|
||||
msg_info "Updating $APP"
|
||||
systemctl stop jellyseerr
|
||||
cd /opt/jellyseerr
|
||||
output=$(git pull)
|
||||
git pull &>/dev/null
|
||||
output=$(git pull --no-rebase)
|
||||
if echo "$output" | grep -q "Already up to date."
|
||||
then
|
||||
msg_ok " $APP is already up to date."
|
||||
systemctl start jellyseerr
|
||||
msg_ok "$APP is already up to date."
|
||||
exit
|
||||
fi
|
||||
yarn install &>/dev/null
|
||||
yarn build &>/dev/null
|
||||
systemctl stop jellyseerr
|
||||
export CYPRESS_INSTALL_BINARY=0
|
||||
pnpm install --frozen-lockfile &>/dev/null
|
||||
export NODE_OPTIONS="--max-old-space-size=3072"
|
||||
pnpm build &>/dev/null
|
||||
cat <<EOF >/etc/systemd/system/jellyseerr.service
|
||||
[Unit]
|
||||
Description=jellyseerr Service
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
EnvironmentFile=/etc/jellyseerr/jellyseerr.conf
|
||||
Environment=NODE_ENV=production
|
||||
Type=exec
|
||||
WorkingDirectory=/opt/jellyseerr
|
||||
ExecStart=/usr/bin/node dist/index.js
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOF
|
||||
systemctl daemon-reload
|
||||
systemctl start jellyseerr
|
||||
msg_ok "Updated $APP"
|
||||
exit
|
||||
@@ -77,6 +104,11 @@ start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_info "Setting Container to Normal Resources"
|
||||
pct set $CTID -memory 2048
|
||||
pct set $CTID -cores 2
|
||||
msg_ok "Set Container to Normal Resources"
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:5055${CL} \n"
|
||||
|
||||
@@ -57,8 +57,32 @@ function update_script() {
|
||||
header_info
|
||||
if [[ ! -f /etc/systemd/system/keycloak.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating ${APP} LXC"
|
||||
|
||||
msg_info "Updating packages"
|
||||
apt-get update &>/dev/null
|
||||
apt-get -y upgrade &>/dev/null
|
||||
|
||||
RELEASE=$(curl -s https://api.github.com/repos/keycloak/keycloak/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||
msg_info "Downloading Keycloak v$RELEASE"
|
||||
cd /opt
|
||||
wget -q https://github.com/keycloak/keycloak/releases/download/$RELEASE/keycloak-$RELEASE.tar.gz
|
||||
$STD tar -xvf keycloak-$RELEASE.tar.gz
|
||||
|
||||
msg_info "Merging configuration files"
|
||||
cp -r keycloak/conf keycloak-$RELEASE
|
||||
cp -r keycloak/providers keycloak-$RELEASE
|
||||
cp -r keycloak/themes keycloak-$RELEASE
|
||||
|
||||
msg_info "Updating Keycloak"
|
||||
mv keycloak keycloak.old
|
||||
mv keycloak-$RELEASE keycloak
|
||||
|
||||
msg_info "Delete temporary installation files"
|
||||
rm keycloak-$RELEASE.tar.gz
|
||||
rm -rf keycloak.old
|
||||
|
||||
msg_info "Restating Keycloak"
|
||||
systemctl restart keycloak
|
||||
msg_ok "Updated Successfully"
|
||||
exit
|
||||
}
|
||||
@@ -69,4 +93,4 @@ description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:8080${CL} \n"
|
||||
${BL}http://${IP}:8080/admin${CL} \n"
|
||||
|
||||
81
ct/kubo.sh
Normal file
81
ct/kubo.sh
Normal file
@@ -0,0 +1,81 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# Co-Author: ulmentflam
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
__ __ __
|
||||
/ //_/_ __/ /_ ____
|
||||
/ ,< / / / / __ \/ __ \
|
||||
/ /| / /_/ / /_/ / /_/ /
|
||||
/_/ |_\__,_/_.___/\____/
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Kubo"
|
||||
var_disk="4"
|
||||
var_cpu="2"
|
||||
var_ram="4096"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -f /usr/local/kubo ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
RELEASE=$(wget -q https://github.com/ipfs/kubo/releases/latest -O - | grep "title>Release" | cut -d " " -f 4)
|
||||
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
|
||||
msg_info "Updating $APP LXC"
|
||||
apt-get update &>/dev/null
|
||||
apt-get -y upgrade &>/dev/null
|
||||
wget -q "https://github.com/ipfs/kubo/releases/download/${RELEASE}/kubo_${RELEASE}_linux-amd64.tar.gz"
|
||||
tar -xzf "kubo_${RELEASE}_linux-amd64.tar.gz" -C /usr/local
|
||||
systemctl restart ipfs.service
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
rm "kubo_${RELEASE}_linux-amd64.tar.gz"
|
||||
msg_ok "Updated $APP LXC"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:5001/webui ${CL} \n"
|
||||
81
ct/lazylibrarian.sh
Normal file
81
ct/lazylibrarian.sh
Normal file
@@ -0,0 +1,81 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck
|
||||
# Co-Author: MountyMapleSyrup (MountyMapleSyrup)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
__ __ _ __ _
|
||||
/ / ____ _____ __ __/ / (_) /_ _________ ______(_)___ _____
|
||||
/ / / __ `/_ / / / / / / / / __ \/ ___/ __ `/ ___/ / __ `/ __ \
|
||||
/ /___/ /_/ / / /_/ /_/ / /___/ / /_/ / / / /_/ / / / / /_/ / / / /
|
||||
/_____/\__,_/ /___/\__, /_____/_/_.___/_/ \__,_/_/ /_/\__,_/_/ /_/
|
||||
/____/
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="LazyLibrarian"
|
||||
var_disk="4"
|
||||
var_cpu="2"
|
||||
var_ram="1024"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/LazyLibrarian/ ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Stopping LazyLibrarian"
|
||||
systemctl stop lazylibrarian
|
||||
msg_ok "LazyLibrarian Stopped"
|
||||
|
||||
msg_info "Updating $APP LXC"
|
||||
git -C /opt/LazyLibrarian pull origin master &>/dev/null
|
||||
msg_ok "Updated $APP LXC"
|
||||
|
||||
msg_info "Starting LazyLibrarian"
|
||||
systemctl start lazylibrarian
|
||||
msg_ok "Started LazyLibrarian"
|
||||
|
||||
msg_ok "Updated Successfully"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:5299${CL} \n"
|
||||
@@ -55,21 +55,32 @@ function default_settings() {
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/linkwarden ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating $APP"
|
||||
systemctl stop linkwarden
|
||||
cd /opt/linkwarden
|
||||
if git pull | grep -q 'Already up to date'; then
|
||||
msg_ok "Already up to date"
|
||||
|
||||
RELEASE=$(curl -s https://api.github.com/repos/linkwarden/linkwarden/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
|
||||
msg_info "Stopping ${APP}"
|
||||
systemctl stop linkwarden
|
||||
msg_ok "Stopped ${APP}"
|
||||
|
||||
msg_info "Updating ${APP} to ${RELEASE}"
|
||||
cd /opt/linkwarden
|
||||
git pull
|
||||
yarn
|
||||
npx playwright install-deps
|
||||
yarn playwright install
|
||||
yarn prisma generate
|
||||
yarn build
|
||||
yarn prisma migrate deploy
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated ${APP} to ${RELEASE}"
|
||||
|
||||
msg_info "Starting ${APP}"
|
||||
systemctl start linkwarden
|
||||
exit
|
||||
msg_ok "Started ${APP}"
|
||||
msg_ok "Updated Successfully"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}."
|
||||
fi
|
||||
git pull
|
||||
yarn
|
||||
npx playwright install-deps
|
||||
yarn build
|
||||
yarn prisma migrate deploy
|
||||
systemctl start linkwarden
|
||||
msg_ok "Updated $APP"
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
73
ct/lldap.sh
Normal file
73
ct/lldap.sh
Normal file
@@ -0,0 +1,73 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# Co-Author: remz1337
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
____ __
|
||||
/ / /___/ /___ _____
|
||||
/ / / __ / __ `/ __ \
|
||||
/ / / /_/ / /_/ / /_/ /
|
||||
/_/_/\__,_/\__,_/ .___/
|
||||
/_/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="lldap"
|
||||
var_disk="4"
|
||||
var_cpu="1"
|
||||
var_ram="512"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -f /etc/systemd/system/lldap.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating $APP"
|
||||
apt update
|
||||
apt upgrade -y lldap
|
||||
msg_ok "Updated $APP"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:17170${CL} \n"
|
||||
85
ct/mafl.sh
Normal file
85
ct/mafl.sh
Normal file
@@ -0,0 +1,85 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
__ ___ ______
|
||||
/ |/ /___ _/ __/ /
|
||||
/ /|_/ / __ `/ /_/ /
|
||||
/ / / / /_/ / __/ /
|
||||
/_/ /_/\__,_/_/ /_/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Mafl"
|
||||
var_disk="6"
|
||||
var_cpu="2"
|
||||
var_ram="2048"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/mafl ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
whiptail --backtitle "Proxmox VE Helper Scripts" --msgbox --title "SET RESOURCES" "Please set the resources in your ${APP} LXC to ${var_cpu}vCPU and ${var_ram}RAM for the build process before continuing" 10 75
|
||||
RELEASE=$(curl -s https://api.github.com/repos/hywax/mafl/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
msg_info "Updating Mafl to v${RELEASE} (Patience)"
|
||||
systemctl stop mafl
|
||||
wget -q https://github.com/hywax/mafl/archive/refs/tags/v${RELEASE}.tar.gz
|
||||
tar -xzf v${RELEASE}.tar.gz
|
||||
cp -r mafl-${RELEASE}/* /opt/mafl/
|
||||
rm -rf mafl-${RELEASE}
|
||||
cd /opt/mafl
|
||||
yarn install
|
||||
yarn build
|
||||
systemctl start mafl
|
||||
msg_ok "Updated Mafl to v${RELEASE}"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_info "Setting Container to Normal Resources"
|
||||
pct set $CTID -memory 1024
|
||||
pct set $CTID -cores 1
|
||||
msg_ok "Set Container to Normal Resources"
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:3000${CL} \n"
|
||||
68
ct/matterbridge.sh
Normal file
68
ct/matterbridge.sh
Normal file
@@ -0,0 +1,68 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: MickLesk (Canbiz)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
__ ___ __ __ __ _ __
|
||||
/ |/ /___ _/ /_/ /____ _____/ /_ _____(_)___/ /___ ____
|
||||
/ /|_/ / __ `/ __/ __/ _ \/ ___/ __ \/ ___/ / __ / __ `/ _ \
|
||||
/ / / / /_/ / /_/ /_/ __/ / / /_/ / / / / /_/ / /_/ / __/
|
||||
/_/ /_/\__,_/\__/\__/\___/_/ /_.___/_/ /_/\__,_/\__, /\___/
|
||||
/____/
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Matterbridge"
|
||||
var_disk="4"
|
||||
var_cpu="1"
|
||||
var_ram="1024"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /root/Matterbridge ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_error "Update via the Matterbridge UI"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} Setup should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:8283${CL} \n"
|
||||
68
ct/mediamtx.sh
Normal file
68
ct/mediamtx.sh
Normal file
@@ -0,0 +1,68 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
__ ___ ___ __ __________ __
|
||||
/ |/ /__ ____/ (_)___ _/ |/ /_ __/ |/ /
|
||||
/ /|_/ / _ \/ __ / / __ `/ /|_/ / / / | /
|
||||
/ / / / __/ /_/ / / /_/ / / / / / / / |
|
||||
/_/ /_/\___/\__,_/_/\__,_/_/ /_/ /_/ /_/|_|
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="MediaMTX"
|
||||
var_disk="4"
|
||||
var_cpu="2"
|
||||
var_ram="2048"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/mediamtx/ ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
|
||||
msg_error "There is currently no update path available."
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
73
ct/medusa.sh
Normal file
73
ct/medusa.sh
Normal file
@@ -0,0 +1,73 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
__ ___ __
|
||||
/ |/ /__ ____/ /_ ___________ _
|
||||
/ /|_/ / _ \/ __ / / / / ___/ __ `/
|
||||
/ / / / __/ /_/ / /_/ (__ ) /_/ /
|
||||
/_/ /_/\___/\__,_/\__,_/____/\__,_/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Medusa"
|
||||
var_disk="6"
|
||||
var_cpu="2"
|
||||
var_ram="1024"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/medusa ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating ${APP}"
|
||||
systemctl stop medusa.service
|
||||
/opt/medusa
|
||||
git pull
|
||||
systemctl start medusa.service
|
||||
msg_ok "Successfully Updated ${APP}"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:8081${CL} \n"
|
||||
88
ct/memos.sh
Normal file
88
ct/memos.sh
Normal file
@@ -0,0 +1,88 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck
|
||||
# Co-Author: MickLesk (Canbiz)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
__ ___
|
||||
/ |/ /__ ____ ___ ____ _____
|
||||
/ /|_/ / _ \/ __ `__ \/ __ \/ ___/
|
||||
/ / / / __/ / / / / / /_/ (__ )
|
||||
/_/ /_/\___/_/ /_/ /_/\____/____/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Memos"
|
||||
var_disk="7"
|
||||
var_cpu="2"
|
||||
var_ram="2048"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/memos ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating $APP (Patience)"
|
||||
cd /opt/memos
|
||||
output=$(git pull --no-rebase)
|
||||
if echo "$output" | grep -q "Already up to date."
|
||||
then
|
||||
msg_ok "$APP is already up to date."
|
||||
exit
|
||||
fi
|
||||
systemctl stop memos
|
||||
cd /opt/memos/web
|
||||
pnpm i --frozen-lockfile &>/dev/null
|
||||
pnpm build &>/dev/null
|
||||
cd /opt/memos
|
||||
mkdir -p /opt/memos/server/dist
|
||||
cp -r web/dist/* /opt/memos/server/dist/
|
||||
cp -r web/dist/* /opt/memos/server/router/frontend/dist/
|
||||
go build -o /opt/memos/memos -tags=embed bin/memos/main.go &>/dev/null
|
||||
systemctl start memos
|
||||
msg_ok "Updated $APP"
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:9030${CL} \n"
|
||||
100
ct/metube.sh
Normal file
100
ct/metube.sh
Normal file
@@ -0,0 +1,100 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: MickLesk (Canbiz)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
__ ___ ______ __
|
||||
/ |/ /__/_ __/_ __/ /_ ___
|
||||
/ /|_/ / _ \/ / / / / / __ \/ _ \
|
||||
/ / / / __/ / / /_/ / /_/ / __/
|
||||
/_/ /_/\___/_/ \__,_/_.___/\___/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="MeTube"
|
||||
var_disk="10"
|
||||
var_cpu="1"
|
||||
var_ram="1024"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/metube ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
if (( $(df /boot | awk 'NR==2{gsub("%","",$5); print $5}') > 80 )); then
|
||||
read -r -p "Warning: Storage is dangerously low, continue anyway? <y/N> " prompt
|
||||
[[ ${prompt,,} =~ ^(y|yes)$ ]] || exit
|
||||
fi
|
||||
msg_info "Stopping ${APP} Service"
|
||||
systemctl stop metube
|
||||
msg_ok "Stopped ${APP} Service"
|
||||
|
||||
msg_info "Updating ${APP} to latest Git"
|
||||
cd /opt
|
||||
if [ -d metube_bak ]; then
|
||||
rm -rf metube_bak
|
||||
fi
|
||||
mv metube metube_bak
|
||||
git clone https://github.com/alexta69/metube /opt/metube >/dev/null 2>&1
|
||||
cd /opt/metube/ui
|
||||
npm install >/dev/null 2>&1
|
||||
node_modules/.bin/ng build >/dev/null 2>&1
|
||||
cd /opt/metube
|
||||
cp /opt/metube_bak/.env /opt/metube/
|
||||
pip3 install pipenv >/dev/null 2>&1
|
||||
pipenv install >/dev/null 2>&1
|
||||
|
||||
if [ -d "/opt/metube_bak" ]; then
|
||||
rm -rf /opt/metube_bak
|
||||
fi
|
||||
msg_ok "Updated ${APP} to latest Git"
|
||||
|
||||
msg_info "Starting ${APP} Service"
|
||||
systemctl start metube
|
||||
sleep 1
|
||||
msg_ok "Started ${APP} Service"
|
||||
msg_ok "Updated Successfully!\n"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} Setup should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:8081${CL} \n"
|
||||
@@ -8,22 +8,22 @@ source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
__ ____ __ __ __ __
|
||||
/ /__/ __ \_____ / //_/_ __/ /_ ___ _________ ___ / /____ _____
|
||||
/ //_/ / / / ___/ / ,< / / / / __ \/ _ \/ ___/ __ \/ _ \/ __/ _ \/ ___/
|
||||
/ ,< / /_/ (__ ) / /| / /_/ / /_/ / __/ / / / / / __/ /_/ __(__ )
|
||||
/_/|_|\____/____/ /_/ |_\__,_/_.___/\___/_/ /_/ /_/\___/\__/\___/____/
|
||||
|
||||
__ ___ ____ ____
|
||||
/ |/ /___ ____ ____ _____ / __ \/ __ )
|
||||
/ /|_/ / __ \/ __ \/ __ `/ __ \/ / / / __ |
|
||||
/ / / / /_/ / / / / /_/ / /_/ / /_/ / /_/ /
|
||||
/_/ /_/\____/_/ /_/\__, /\____/_____/_____/
|
||||
/____/
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="k0s"
|
||||
APP="MongoDB"
|
||||
var_disk="4"
|
||||
var_cpu="2"
|
||||
var_ram="2048"
|
||||
var_cpu="1"
|
||||
var_ram="512"
|
||||
var_os="debian"
|
||||
var_version="11"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
@@ -54,7 +54,7 @@ function default_settings() {
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -f /etc/k0s/k0s.yaml ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
if [[ ! -f /etc/apt/sources.list.d/mongodb-org-7.0.list ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating ${APP} LXC"
|
||||
apt-get update &>/dev/null
|
||||
apt-get -y upgrade &>/dev/null
|
||||
103
ct/myspeed.sh
Normal file
103
ct/myspeed.sh
Normal file
@@ -0,0 +1,103 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# Co-Author: MickLesk (Canbiz)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
__ ___ _____ __
|
||||
/ |/ /_ __/ ___/____ ___ ___ ____/ /
|
||||
/ /|_/ / / / /\__ \/ __ \/ _ \/ _ \/ __ /
|
||||
/ / / / /_/ /___/ / /_/ / __/ __/ /_/ /
|
||||
/_/ /_/\__, //____/ .___/\___/\___/\__,_/
|
||||
/____/ /_/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="MySpeed"
|
||||
var_disk="4"
|
||||
var_cpu="1"
|
||||
var_ram="1024"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/myspeed ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
if (( $(df /boot | awk 'NR==2{gsub("%","",$5); print $5}') > 80 )); then
|
||||
read -r -p "Warning: Storage is dangerously low, continue anyway? <y/N> " prompt
|
||||
[[ ${prompt,,} =~ ^(y|yes)$ ]] || exit
|
||||
fi
|
||||
RELEASE=$(wget -q https://github.com/gnmyt/myspeed/releases/latest -O - | grep "title>Release" | cut -d " " -f 5)
|
||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
|
||||
|
||||
msg_info "Stopping ${APP} Service"
|
||||
systemctl stop myspeed
|
||||
msg_ok "Stopped ${APP} Service"
|
||||
|
||||
msg_info "Updating ${APP} to ${RELEASE}"
|
||||
cd /opt
|
||||
rm -rf myspeed_bak
|
||||
mv myspeed myspeed_bak
|
||||
wget -q https://github.com/gnmyt/myspeed/releases/download/v$RELEASE/MySpeed-$RELEASE.zip
|
||||
unzip -q MySpeed-$RELEASE.zip -d myspeed
|
||||
cd myspeed
|
||||
npm install >/dev/null 2>&1
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated ${APP} to ${RELEASE}"
|
||||
|
||||
msg_info "Starting ${APP} Service"
|
||||
systemctl start myspeed
|
||||
msg_ok "Started ${APP} Service"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
rm -rf MySpeed-$RELEASE.zip
|
||||
msg_ok "Cleaned"
|
||||
|
||||
msg_ok "Updated Successfully!\n"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} Setup should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:5216${CL} \n"
|
||||
70
ct/mysql.sh
Normal file
70
ct/mysql.sh
Normal file
@@ -0,0 +1,70 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck
|
||||
# Co-Author: MickLesk (Canbiz)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
__ ___ _____ ____ __
|
||||
/ |/ /_ __/ ___// __ \ / /
|
||||
/ /|_/ / / / /\__ \/ / / / / /
|
||||
/ / / / /_/ /___/ / /_/ / / /___
|
||||
/_/ /_/\__, //____/\___\_\/_____/
|
||||
/____/
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="MySQL"
|
||||
var_disk="4"
|
||||
var_cpu="1"
|
||||
var_ram="1024"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -f /usr/share/keyrings/mysql.gpg ]]; 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"
|
||||
@@ -20,7 +20,7 @@ EOF
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="n8n"
|
||||
var_disk="3"
|
||||
var_disk="6"
|
||||
var_cpu="2"
|
||||
var_ram="2048"
|
||||
var_os="debian"
|
||||
@@ -65,6 +65,7 @@ if [[ ! -f /etc/systemd/system/n8n.service ]]; then msg_error "No ${APP} Install
|
||||
fi
|
||||
msg_info "Updating ${APP} LXC"
|
||||
npm update -g n8n &>/dev/null
|
||||
systemctl restart n8n
|
||||
msg_ok "Updated Successfully"
|
||||
exit
|
||||
}
|
||||
|
||||
72
ct/neo4j.sh
Normal file
72
ct/neo4j.sh
Normal file
@@ -0,0 +1,72 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck
|
||||
# Co-Author: havardthom
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
_ __ __ __ _
|
||||
/ | / /__ ____ / // / (_)
|
||||
/ |/ / _ \/ __ \/ // /_/ /
|
||||
/ /| / __/ /_/ /__ __/ /
|
||||
/_/ |_/\___/\____/ /_/_/ /
|
||||
/___/
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Neo4j"
|
||||
var_disk="4"
|
||||
var_cpu="1"
|
||||
var_ram="1024"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /etc/neo4j ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating ${APP}"
|
||||
apt-get update &>/dev/null
|
||||
apt-get -y upgrade &>/dev/null
|
||||
msg_ok "Updated Successfully"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} Browser should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:7474${CL} \n"
|
||||
@@ -23,7 +23,7 @@ var_disk="8"
|
||||
var_cpu="2"
|
||||
var_ram="2048"
|
||||
var_os="debian"
|
||||
var_version="11"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
@@ -21,7 +21,7 @@ header_info
|
||||
echo -e "Loading..."
|
||||
APP="Nginx Proxy Manager"
|
||||
var_disk="4"
|
||||
var_cpu="1"
|
||||
var_cpu="2"
|
||||
var_ram="1024"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
@@ -59,6 +59,13 @@ function update_script() {
|
||||
msg_error "No ${APP} Installation Found!"
|
||||
exit
|
||||
fi
|
||||
whiptail --backtitle "Proxmox VE Helper Scripts" --msgbox --title "SET RESOURCES" "Please set the resources in your ${APP} LXC to ${var_cpu}vCPU and ${var_ram}RAM for the build process before continuing" 10 75
|
||||
if ! command -v pnpm &> /dev/null; then
|
||||
msg_info "Installing pnpm"
|
||||
#export NODE_OPTIONS=--openssl-legacy-provider
|
||||
npm install -g pnpm@8.15 &>/dev/null
|
||||
msg_ok "Installed pnpm"
|
||||
fi
|
||||
RELEASE=$(curl -s https://api.github.com/repos/NginxProxyManager/nginx-proxy-manager/releases/latest |
|
||||
grep "tag_name" |
|
||||
awk '{print substr($2, 3, length($2)-4) }')
|
||||
@@ -122,7 +129,6 @@ function update_script() {
|
||||
chown root /tmp/nginx
|
||||
echo resolver "$(awk 'BEGIN{ORS=" "} $1=="nameserver" {print ($2 ~ ":")? "["$2"]": $2}' /etc/resolv.conf);" >/etc/nginx/conf.d/include/resolvers.conf
|
||||
if [ ! -f /data/nginx/dummycert.pem ] || [ ! -f /data/nginx/dummykey.pem ]; then
|
||||
echo -e "${CHECKMARK} \e[1;92m Generating dummy SSL Certificate... \e[0m"
|
||||
openssl req -new -newkey rsa:2048 -days 3650 -nodes -x509 -subj "/O=Nginx Proxy Manager/OU=Dummy Certificate/CN=localhost" -keyout /data/nginx/dummykey.pem -out /data/nginx/dummycert.pem &>/dev/null
|
||||
fi
|
||||
mkdir -p /app/global /app/frontend/images
|
||||
@@ -131,12 +137,6 @@ function update_script() {
|
||||
python3 -m pip install --no-cache-dir certbot-dns-cloudflare &>/dev/null
|
||||
msg_ok "Setup Enviroment"
|
||||
|
||||
if ! command -v pnpm &> /dev/null; then
|
||||
msg_info "Installing pnpm"
|
||||
npm install -g pnpm &>/dev/null
|
||||
msg_ok "Installed pnpm"
|
||||
fi
|
||||
|
||||
msg_info "Building Frontend"
|
||||
cd ./frontend
|
||||
pnpm install &>/dev/null
|
||||
@@ -169,6 +169,7 @@ EOF
|
||||
|
||||
msg_info "Starting Services"
|
||||
sed -i 's/user npm/user root/g; s/^pid/#pid/g' /usr/local/openresty/nginx/conf/nginx.conf
|
||||
sed -i 's/su npm npm/su root root/g' /etc/logrotate.d/nginx-proxy-manager
|
||||
sed -i 's/include-system-site-packages = false/include-system-site-packages = true/g' /opt/certbot/pyvenv.cfg
|
||||
systemctl enable -q --now openresty
|
||||
systemctl enable -q --now npm
|
||||
@@ -186,6 +187,9 @@ start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_info "Setting Container to Normal Resources"
|
||||
pct set $CTID -cores 1
|
||||
msg_ok "Set Container to Normal Resources"
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:81${CL}\n"
|
||||
|
||||
71
ct/notifiarr.sh
Normal file
71
ct/notifiarr.sh
Normal file
@@ -0,0 +1,71 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
_ __ __ _ _____
|
||||
/ | / /___ / /_(_) __(_)___ ___________
|
||||
/ |/ / __ \/ __/ / /_/ / __ `/ ___/ ___/
|
||||
/ /| / /_/ / /_/ / __/ / /_/ / / / /
|
||||
/_/ |_/\____/\__/_/_/ /_/\__,_/_/ /_/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Notifiarr"
|
||||
var_disk="2"
|
||||
var_cpu="1"
|
||||
var_ram="512"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -f /etc/apt/sources.list.d/golift.list ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating $APP"
|
||||
apt-get update &>/dev/null
|
||||
apt-get -y upgrade &>/dev/null
|
||||
msg_ok "Updated $APP"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:5454${CL} \n"
|
||||
72
ct/nzbget.sh
Normal file
72
ct/nzbget.sh
Normal file
@@ -0,0 +1,72 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck
|
||||
# Co-Author: havardthom
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
_ _______ ____ ______ __
|
||||
/ | / /__ / / __ )/ ____/__ / /_
|
||||
/ |/ / / / / __ / / __/ _ \/ __/
|
||||
/ /| / / /__/ /_/ / /_/ / __/ /_
|
||||
/_/ |_/ /____/_____/\____/\___/\__/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="NZBGet"
|
||||
var_disk="4"
|
||||
var_cpu="2"
|
||||
var_ram="2048"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -f /lib/systemd/system/nzbget.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating $APP LXC"
|
||||
apt-get update &>/dev/null
|
||||
apt-get -y upgrade &>/dev/null
|
||||
msg_ok "Updated $APP LXC"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:6789${CL} \n"
|
||||
72
ct/ollama.sh
Normal file
72
ct/ollama.sh
Normal file
@@ -0,0 +1,72 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck
|
||||
# Co-Author: havardthom
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
____ ____
|
||||
/ __ \/ / /___ _____ ___ ____ _
|
||||
/ / / / / / __ `/ __ `__ \/ __ `/
|
||||
/ /_/ / / / /_/ / / / / / / /_/ /
|
||||
\____/_/_/\__,_/_/ /_/ /_/\__,_/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Ollama"
|
||||
var_disk="24"
|
||||
var_cpu="4"
|
||||
var_ram="4096"
|
||||
var_os="ubuntu"
|
||||
var_version="22.04"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/ollama ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating ${APP}"
|
||||
apt-get update &>/dev/null
|
||||
apt-get -y upgrade &>/dev/null
|
||||
msg_ok "Updated Successfully"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:11434${CL} \n"
|
||||
@@ -29,7 +29,7 @@ color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="0"
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
@@ -55,7 +55,7 @@ function default_settings() {
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/tplink ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
latest_url=$(curl -fsSL "https://www.tp-link.com/us/support/download/omada-software-controller/" | grep -o 'https://.*x64.deb' | head -n1)
|
||||
latest_url=$(curl -fsSL "https://www.tp-link.com/en/support/download/omada-software-controller/" | grep -o 'https://.*x64.deb' | head -n1)
|
||||
latest_version=$(basename "${latest_url}")
|
||||
if [ -z "${latest_version}" ]; then
|
||||
msg_error "It seems that the server (tp-link.com) might be down. Please try again at a later time."
|
||||
|
||||
21
ct/ombi.sh
21
ct/ombi.sh
@@ -55,7 +55,26 @@ function default_settings() {
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/ombi ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_error "There is currently no update path available."
|
||||
RELEASE=$(curl -sL https://api.github.com/repos/Ombi-app/Ombi/releases/latest | grep '"tag_name":' | cut -d'"' -f4)
|
||||
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
|
||||
msg_info "Stopping ${APP}"
|
||||
systemctl stop ombi
|
||||
msg_ok "Stopped ${APP}"
|
||||
|
||||
msg_info "Updating ${APP} to ${RELEASE}"
|
||||
wget -q https://github.com/Ombi-app/Ombi/releases/download/${RELEASE}/linux-x64.tar.gz
|
||||
tar -xzf linux-x64.tar.gz -C /opt/ombi
|
||||
rm -rf linux-x64.tar.gz
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated ${APP} to ${RELEASE}"
|
||||
|
||||
msg_info "Starting ${APP}"
|
||||
systemctl start ombi
|
||||
msg_ok "Started ${APP}"
|
||||
msg_ok "Updated Successfully"
|
||||
else
|
||||
msg_ok "No update required. ${APP} ia already at ${RELEASE}."
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@ var_disk="4"
|
||||
var_cpu="2"
|
||||
var_ram="1024"
|
||||
var_os="debian"
|
||||
var_version="11"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
85
ct/openwebui.sh
Normal file
85
ct/openwebui.sh
Normal file
@@ -0,0 +1,85 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck
|
||||
# Co-Author: havardthom
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
____ _ __ __ __ ______
|
||||
/ __ \____ ___ ____ | | / /__ / /_ / / / / _/
|
||||
/ / / / __ \/ _ \/ __ \ | | /| / / _ \/ __ \/ / / // /
|
||||
/ /_/ / /_/ / __/ / / / | |/ |/ / __/ /_/ / /_/ // /
|
||||
\____/ .___/\___/_/ /_/ |__/|__/\___/_.___/\____/___/
|
||||
/_/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Open WebUI"
|
||||
var_disk="16"
|
||||
var_cpu="4"
|
||||
var_ram="4096"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/open-webui ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating ${APP} (Patience)"
|
||||
cd /opt/open-webui
|
||||
output=$(git pull --no-rebase)
|
||||
if echo "$output" | grep -q "Already up to date."
|
||||
then
|
||||
msg_ok "$APP is already up to date."
|
||||
exit
|
||||
fi
|
||||
systemctl stop open-webui.service
|
||||
npm install &>/dev/null
|
||||
export NODE_OPTIONS="--max-old-space-size=3584"
|
||||
npm run build &>/dev/null
|
||||
cd ./backend
|
||||
pip install -r requirements.txt -U &>/dev/null
|
||||
systemctl start open-webui.service
|
||||
msg_ok "Updated Successfully"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:8080${CL} \n"
|
||||
74
ct/pairdrop.sh
Normal file
74
ct/pairdrop.sh
Normal file
@@ -0,0 +1,74 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
____ _ ____
|
||||
/ __ \____ _(_)____/ __ \_________ ____
|
||||
/ /_/ / __ `/ / ___/ / / / ___/ __ \/ __ \
|
||||
/ ____/ /_/ / / / / /_/ / / / /_/ / /_/ /
|
||||
/_/ \__,_/_/_/ /_____/_/ \____/ .___/
|
||||
/_/
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="PairDrop"
|
||||
var_disk="4"
|
||||
var_cpu="1"
|
||||
var_ram="512"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/pairdrop ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating $APP"
|
||||
systemctl stop pairdrop
|
||||
cd /opt/pairdrop
|
||||
git pull
|
||||
npm install
|
||||
systemctl start pairdrop
|
||||
msg_ok "Updated $APP"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:3000${CL} \n"
|
||||
@@ -59,7 +59,6 @@ function update_script() {
|
||||
exit
|
||||
fi
|
||||
RELEASE=$(curl -s https://api.github.com/repos/paperless-ngx/paperless-ngx/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||
SER=/etc/systemd/system/paperless-task-queue.service
|
||||
|
||||
UPD=$(whiptail --backtitle "Proxmox VE Helper Scripts" --title "SUPPORT" --radiolist --cancel-button Exit-Script "Spacebar = Select" 11 58 2 \
|
||||
"1" "Update Paperless-ngx to $RELEASE" ON \
|
||||
@@ -67,51 +66,34 @@ function update_script() {
|
||||
3>&1 1>&2 2>&3)
|
||||
header_info
|
||||
if [ "$UPD" == "1" ]; then
|
||||
msg_info "Stopping Paperless-ngx"
|
||||
systemctl stop paperless-consumer paperless-webserver paperless-scheduler
|
||||
if [ -f "$SER" ]; then
|
||||
systemctl stop paperless-task-queue.service
|
||||
if [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]] || [[ ! -f /opt/${APP}_version.txt ]]; then
|
||||
if [[ "$(gs --version 2>/dev/null)" != "10.04.0" ]]; then
|
||||
msg_info "Updating Ghostscript"
|
||||
cd /tmp
|
||||
wget -q https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs10040/ghostscript-10.04.0.tar.gz
|
||||
tar -xzf ghostscript-10.04.0.tar.gz
|
||||
cd ghostscript-10.04.0
|
||||
./configure &>/dev/null
|
||||
make &>/dev/null
|
||||
sudo make install &>/dev/null
|
||||
rm -rf /tmp/ghostscript*
|
||||
msg_ok "Ghostscript updated to 10.04.0"
|
||||
fi
|
||||
sleep 1
|
||||
msg_ok "Stopped Paperless-ngx"
|
||||
msg_info "Stopping all Paperless-ngx Services"
|
||||
systemctl stop paperless-consumer paperless-webserver paperless-scheduler paperless-task-queue.service
|
||||
msg_ok "Stopped all Paperless-ngx Services"
|
||||
|
||||
msg_info "Updating to ${RELEASE}"
|
||||
cd ~
|
||||
if [ "$(dpkg -l | awk '/libmariadb-dev-compat/ {print }' | wc -l)" != 1 ]; then apt-get install -y libmariadb-dev-compat; fi &>/dev/null
|
||||
wget https://github.com/paperless-ngx/paperless-ngx/releases/download/$RELEASE/paperless-ngx-$RELEASE.tar.xz &>/dev/null
|
||||
tar -xf paperless-ngx-$RELEASE.tar.xz &>/dev/null
|
||||
wget -q https://github.com/paperless-ngx/paperless-ngx/releases/download/$RELEASE/paperless-ngx-$RELEASE.tar.xz
|
||||
tar -xf paperless-ngx-$RELEASE.tar.xz
|
||||
cp -r /opt/paperless/paperless.conf paperless-ngx/
|
||||
cp -r paperless-ngx/* /opt/paperless/
|
||||
cd /opt/paperless
|
||||
pip install -r requirements.txt &>/dev/null
|
||||
cd /opt/paperless/src
|
||||
/usr/bin/python3 manage.py migrate &>/dev/null
|
||||
if [ -f "$SER" ]; then
|
||||
msg_ok "paperless-task-queue.service Exists."
|
||||
else
|
||||
cat <<EOF >/etc/systemd/system/paperless-task-queue.service
|
||||
[Unit]
|
||||
Description=Paperless Celery Workers
|
||||
Requires=redis.service
|
||||
[Service]
|
||||
WorkingDirectory=/opt/paperless/src
|
||||
ExecStart=celery --app paperless worker --loglevel INFO
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOF
|
||||
systemctl enable paperless-task-queue &>/dev/null
|
||||
msg_ok "paperless-task-queue.service Created."
|
||||
fi
|
||||
cat <<EOF >/etc/systemd/system/paperless-scheduler.service
|
||||
[Unit]
|
||||
Description=Paperless Celery beat
|
||||
Requires=redis.service
|
||||
[Service]
|
||||
WorkingDirectory=/opt/paperless/src
|
||||
ExecStart=celery --app paperless beat --loglevel INFO
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
EOF
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated to ${RELEASE}"
|
||||
|
||||
msg_info "Cleaning up"
|
||||
@@ -120,12 +102,14 @@ EOF
|
||||
rm -rf paperless-ngx
|
||||
msg_ok "Cleaned"
|
||||
|
||||
msg_info "Starting Paperless-ngx"
|
||||
systemctl daemon-reload
|
||||
msg_info "Starting all Paperless-ngx Services"
|
||||
systemctl start paperless-consumer paperless-webserver paperless-scheduler paperless-task-queue.service
|
||||
sleep 1
|
||||
msg_ok "Started Paperless-ngx"
|
||||
msg_ok "Started all Paperless-ngx Services"
|
||||
msg_ok "Updated Successfully!\n"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
fi
|
||||
exit
|
||||
fi
|
||||
if [ "$UPD" == "2" ]; then
|
||||
|
||||
72
ct/pbs.sh
Normal file
72
ct/pbs.sh
Normal file
@@ -0,0 +1,72 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
____ ____ __ _____
|
||||
/ __ \_________ _ ______ ___ ____ _ __ / __ )____ ______/ /____ ______ / ___/___ ______ _____ _____
|
||||
/ /_/ / ___/ __ \| |/_/ __ `__ \/ __ \| |/_/ / __ / __ `/ ___/ //_/ / / / __ \ \__ \/ _ \/ ___/ | / / _ \/ ___/
|
||||
/ ____/ / / /_/ /> </ / / / / / /_/ /> < / /_/ / /_/ / /__/ ,< / /_/ / /_/ / ___/ / __/ / | |/ / __/ /
|
||||
/_/ /_/ \____/_/|_/_/ /_/ /_/\____/_/|_| /_____/\__,_/\___/_/|_|\__,_/ .___/ /____/\___/_/ |___/\___/_/
|
||||
/_/
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="PBS"
|
||||
var_disk="10"
|
||||
var_cpu="2"
|
||||
var_ram="2048"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /var ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating $APP LXC"
|
||||
apt-get update &>/dev/null
|
||||
apt-get -y upgrade &>/dev/null
|
||||
msg_ok "Updated $APP LXC"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:8007${CL} \n"
|
||||
92
ct/peanut.sh
Normal file
92
ct/peanut.sh
Normal file
@@ -0,0 +1,92 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# Co-Author: remz1337
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
____ _ ____ ________
|
||||
/ __ \___ ____ _/ | / / / / /_ __/
|
||||
/ /_/ / _ \/ __ `/ |/ / / / / / /
|
||||
/ ____/ __/ /_/ / /| / /_/ / / /
|
||||
/_/ \___/\__,_/_/ |_/\____/ /_/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="PeaNUT"
|
||||
var_disk="4"
|
||||
var_cpu="2"
|
||||
var_ram="2048"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -f /etc/systemd/system/peanut.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
whiptail --backtitle "Proxmox VE Helper Scripts" --msgbox --title "SET RESOURCES" "Please set the resources in your ${APP} LXC to ${var_cpu}vCPU and ${var_ram}RAM for the build process before continuing" 10 75
|
||||
RELEASE=$(curl -sL https://api.github.com/repos/Brandawg93/PeaNUT/releases/latest | grep '"tag_name":' | cut -d'"' -f4)
|
||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
|
||||
msg_info "Updating $APP to ${RELEASE}"
|
||||
systemctl stop peanut
|
||||
wget -qO peanut.tar.gz https://api.github.com/repos/Brandawg93/PeaNUT/tarball/${RELEASE}
|
||||
tar -xzf peanut.tar.gz -C /opt/peanut --strip-components 1
|
||||
rm peanut.tar.gz
|
||||
cd /opt/peanut
|
||||
pnpm i &>/dev/null
|
||||
pnpm run build &>/dev/null
|
||||
cp -r .next/static .next/standalone/.next/
|
||||
mkdir -p /opt/peanut/.next/standalone/config
|
||||
ln -sf /etc/peanut/settings.yml /opt/peanut/.next/standalone/config/settings.yml
|
||||
systemctl start peanut
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated $APP to ${RELEASE}"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_info "Setting Container to Normal Resources"
|
||||
pct set $CTID -memory 1024
|
||||
pct set $CTID -cores 1
|
||||
msg_ok "Set Container to Normal Resources"
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:3000${CL} \n"
|
||||
73
ct/petio.sh
Normal file
73
ct/petio.sh
Normal file
@@ -0,0 +1,73 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
____ __ _
|
||||
/ __ \___ / /_(_)___
|
||||
/ /_/ / _ \/ __/ / __ \
|
||||
/ ____/ __/ /_/ / /_/ /
|
||||
/_/ \___/\__/_/\____/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Petio"
|
||||
var_disk="4"
|
||||
var_cpu="2"
|
||||
var_ram="1024"
|
||||
var_os="ubuntu"
|
||||
var_version="20.04"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/Petio ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating $APP"
|
||||
systemctl stop petio.service
|
||||
wget https://petio.tv/releases/latest -O petio-latest.zip
|
||||
unzip petio-latest.zip -d /opt/Petio
|
||||
systemctl start petio.service
|
||||
msg_ok "Updated $APP"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:7777${CL} \n"
|
||||
@@ -64,6 +64,7 @@ function update_script() {
|
||||
msg_ok "Stopped PhotoPrism"
|
||||
|
||||
msg_info "Updating PhotoPrism"
|
||||
apt-get install -y libvips42 &>/dev/null
|
||||
wget -q -cO - https://dl.photoprism.app/pkg/linux/amd64.tar.gz | tar -xzf - -C /opt/photoprism --strip-components=1
|
||||
msg_ok "Updated PhotoPrism"
|
||||
|
||||
|
||||
@@ -55,10 +55,10 @@ function default_settings() {
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /etc/pihole ]]; 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"
|
||||
msg_info "Updating ${APP}"
|
||||
set +e
|
||||
pihole -up
|
||||
msg_ok "Updated ${APP}"
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
@@ -56,7 +56,7 @@ function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/pingvin-share ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Stopping Pingvin Share"
|
||||
pm2 stop pingvin-share-backend pingvin-share-frontend &>/dev/null
|
||||
systemctl stop pm2-root.service
|
||||
msg_ok "Stopped Pingvin Share"
|
||||
|
||||
msg_info "Updating Pingvin Share"
|
||||
@@ -64,13 +64,15 @@ cd /opt/pingvin-share
|
||||
git fetch --tags
|
||||
git checkout $(git describe --tags `git rev-list --tags --max-count=1`) &>/dev/null
|
||||
cd backend
|
||||
npm install &>/dev/null
|
||||
npm run build &>/dev/null
|
||||
cd ../frontend
|
||||
npm install &>/dev/null
|
||||
npm run build &>/dev/null
|
||||
msg_ok "Updated Pingvin Share"
|
||||
|
||||
msg_info "Starting Pingvin Share"
|
||||
pm2 start pingvin-share-backend pingvin-share-frontend &>/dev/null
|
||||
systemctl start pm2-root.service
|
||||
msg_ok "Started Pingvin Share"
|
||||
|
||||
msg_ok "Updated Successfully"
|
||||
|
||||
@@ -29,7 +29,7 @@ color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="0"
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
|
||||
61
ct/pocketbase.sh
Normal file
61
ct/pocketbase.sh
Normal file
@@ -0,0 +1,61 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
____ __ __ __
|
||||
/ __ \____ _____/ /_____ / /_/ /_ ____ _________
|
||||
/ /_/ / __ \/ ___/ //_/ _ \/ __/ __ \/ __ `/ ___/ _ \
|
||||
/ ____/ /_/ / /__/ ,< / __/ /_/ /_/ / /_/ (__ ) __/
|
||||
/_/ \____/\___/_/|_|\___/\__/_.___/\__,_/____/\___/
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Pocketbase"
|
||||
var_disk="8"
|
||||
var_cpu="1"
|
||||
var_ram="512"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:8080/_${CL}"
|
||||
@@ -102,7 +102,7 @@ if [ "$UPD" == "3" ]; then
|
||||
curl -fsSL https://raw.githubusercontent.com/filebrowser/get/master/get.sh | bash &>/dev/null
|
||||
filebrowser config init -a '0.0.0.0' &>/dev/null
|
||||
filebrowser config set -a '0.0.0.0' &>/dev/null
|
||||
filebrowser users add admin changeme --perm.admin &>/dev/null
|
||||
filebrowser users add admin helper-scripts.com --perm.admin &>/dev/null
|
||||
msg_ok "Installed FileBrowser"
|
||||
|
||||
msg_info "Creating Service"
|
||||
@@ -122,7 +122,7 @@ if [ "$UPD" == "3" ]; then
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "FileBrowser should be reachable by going to the following URL.
|
||||
${BL}http://$IP:8080${CL} admin|changeme\n"
|
||||
${BL}http://$IP:8080${CL} admin|helper-scripts.com\n"
|
||||
exit
|
||||
fi
|
||||
if [ "$UPD" == "4" ]; then
|
||||
|
||||
@@ -55,10 +55,30 @@ function default_settings() {
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -f /etc/systemd/system/prometheus.service ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating ${APP} LXC"
|
||||
apt-get update &>/dev/null
|
||||
apt-get -y upgrade &>/dev/null
|
||||
msg_ok "Updated Successfully"
|
||||
RELEASE=$(curl -s https://api.github.com/repos/prometheus/prometheus/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4) }')
|
||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
|
||||
msg_info "Stopping ${APP}"
|
||||
systemctl stop prometheus
|
||||
msg_ok "Stopped ${APP}"
|
||||
|
||||
msg_info "Updating ${APP} to ${RELEASE}"
|
||||
wget -q https://github.com/prometheus/prometheus/releases/download/v${RELEASE}/prometheus-${RELEASE}.linux-amd64.tar.gz
|
||||
tar -xf prometheus-${RELEASE}.linux-amd64.tar.gz
|
||||
cd prometheus-${RELEASE}.linux-amd64
|
||||
cp -rf prometheus promtool /usr/local/bin/
|
||||
cp -rf consoles/ console_libraries/ /etc/prometheus/
|
||||
cd ~
|
||||
rm -rf prometheus-${RELEASE}.linux-amd64 prometheus-${RELEASE}.linux-amd64.tar.gz
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
msg_ok "Updated ${APP} to ${RELEASE}"
|
||||
|
||||
msg_info "Starting ${APP}"
|
||||
systemctl start prometheus
|
||||
msg_ok "Started ${APP}"
|
||||
msg_ok "Updated Successfully"
|
||||
else
|
||||
msg_ok "No update required. ${APP} is already at ${RELEASE}"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
@@ -55,10 +55,7 @@ function default_settings() {
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /var/lib/prowlarr/ ]]; 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"
|
||||
msg_error "There is currently no update path available."
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
85
ct/rabbitmq.sh
Normal file
85
ct/rabbitmq.sh
Normal file
@@ -0,0 +1,85 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck
|
||||
# Co-Author: MickLesk (Canbiz)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
____ __ __ _ __ __ _______
|
||||
/ __ \____ _/ /_ / /_ (_) /_/ |/ / __ \
|
||||
/ /_/ / __ `/ __ \/ __ \/ / __/ /|_/ / / / /
|
||||
/ _, _/ /_/ / /_/ / /_/ / / /_/ / / / /_/ /
|
||||
/_/ |_|\__,_/_.___/_.___/_/\__/_/ /_/\___\_\
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="RabbitMQ"
|
||||
var_disk="4"
|
||||
var_cpu="1"
|
||||
var_ram="1024"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /etc/rabbitmq ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
if (( $(df /boot | awk 'NR==2{gsub("%","",$5); print $5}') > 80 )); then
|
||||
read -r -p "Warning: Storage is dangerously low, continue anyway? <y/N> " prompt
|
||||
[[ ${prompt,,} =~ ^(y|yes)$ ]] || exit
|
||||
fi
|
||||
msg_info "Stopping ${APP} Service"
|
||||
systemctl stop rabbitmq-server
|
||||
msg_ok "Stopped ${APP} Service"
|
||||
|
||||
msg_info "Updating..."
|
||||
apt install --only-upgrade rabbitmq-server &>/dev/null
|
||||
msg_ok "Update Successfully"
|
||||
|
||||
msg_info "Starting ${APP}"
|
||||
systemctl start rabbitmq-server
|
||||
msg_ok "Started ${APP}"
|
||||
msg_ok "Updated Successfully"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} Setup should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:15672${CL} \n"
|
||||
@@ -55,10 +55,7 @@ function default_settings() {
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /var/lib/radarr/ ]]; 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"
|
||||
msg_error "There is currently no update path available."
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
76
ct/readeck.sh
Normal file
76
ct/readeck.sh
Normal file
@@ -0,0 +1,76 @@
|
||||
#!/usr/bin/env bash
|
||||
source <(curl -s https://raw.githubusercontent.com/tteck/Proxmox/main/misc/build.func)
|
||||
# Copyright (c) 2021-2024 tteck
|
||||
# Author: tteck (tteckster)
|
||||
# License: MIT
|
||||
# https://github.com/tteck/Proxmox/raw/main/LICENSE
|
||||
|
||||
function header_info {
|
||||
clear
|
||||
cat <<"EOF"
|
||||
____ __ __
|
||||
/ __ \___ ____ _____/ /__ _____/ /__
|
||||
/ /_/ / _ \/ __ `/ __ / _ \/ ___/ //_/
|
||||
/ _, _/ __/ /_/ / /_/ / __/ /__/ ,<
|
||||
/_/ |_|\___/\__,_/\__,_/\___/\___/_/|_|
|
||||
|
||||
EOF
|
||||
}
|
||||
header_info
|
||||
echo -e "Loading..."
|
||||
APP="Readeck"
|
||||
var_disk="2"
|
||||
var_cpu="1"
|
||||
var_ram="512"
|
||||
var_os="debian"
|
||||
var_version="12"
|
||||
variables
|
||||
color
|
||||
catch_errors
|
||||
|
||||
function default_settings() {
|
||||
CT_TYPE="1"
|
||||
PW=""
|
||||
CT_ID=$NEXTID
|
||||
HN=$NSAPP
|
||||
DISK_SIZE="$var_disk"
|
||||
CORE_COUNT="$var_cpu"
|
||||
RAM_SIZE="$var_ram"
|
||||
BRG="vmbr0"
|
||||
NET="dhcp"
|
||||
GATE=""
|
||||
APT_CACHER=""
|
||||
APT_CACHER_IP=""
|
||||
DISABLEIP6="no"
|
||||
MTU=""
|
||||
SD=""
|
||||
NS=""
|
||||
MAC=""
|
||||
VLAN=""
|
||||
SSH="no"
|
||||
VERB="no"
|
||||
echo_default
|
||||
}
|
||||
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/readeck ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating ${APP}"
|
||||
LATEST=$(curl -s https://codeberg.org/readeck/readeck/releases/ | grep -oP '(?<=Version )\d+\.\d+\.\d+' | head -1)
|
||||
systemctl stop readeck.service
|
||||
rm -rf /opt/readeck/readeck
|
||||
cd /opt/readeck
|
||||
wget -q -O readeck https://codeberg.org/readeck/readeck/releases/download/${LATEST}/readeck-${LATEST}-linux-amd64
|
||||
chmod a+x readeck
|
||||
systemctl start readeck.service
|
||||
msg_ok "Updated ${APP}"
|
||||
exit
|
||||
}
|
||||
|
||||
start
|
||||
build_container
|
||||
description
|
||||
|
||||
msg_ok "Completed Successfully!\n"
|
||||
echo -e "${APP} should be reachable by going to the following URL.
|
||||
${BL}http://${IP}:8000${CL}\n"
|
||||
@@ -55,16 +55,21 @@ function default_settings() {
|
||||
function update_script() {
|
||||
header_info
|
||||
if [[ ! -d /opt/sabnzbd ]]; then msg_error "No ${APP} Installation Found!"; exit; fi
|
||||
msg_info "Updating $APP"
|
||||
systemctl stop sabnzbd.service
|
||||
RELEASE=$(curl -s https://api.github.com/repos/sabnzbd/sabnzbd/releases/latest | grep "tag_name" | awk '{print substr($2, 2, length($2)-3) }')
|
||||
tar zxvf <(curl -fsSL https://github.com/sabnzbd/sabnzbd/releases/download/$RELEASE/SABnzbd-${RELEASE}-src.tar.gz) &>/dev/null
|
||||
\cp -r SABnzbd-${RELEASE}/* /opt/sabnzbd &>/dev/null
|
||||
rm -rf SABnzbd-${RELEASE}
|
||||
cd /opt/sabnzbd
|
||||
python3 -m pip install -r requirements.txt &>/dev/null
|
||||
systemctl start sabnzbd.service
|
||||
msg_ok "Updated $APP"
|
||||
if [[ ! -f /opt/${APP}_version.txt ]] || [[ "${RELEASE}" != "$(cat /opt/${APP}_version.txt)" ]]; then
|
||||
msg_info "Updating $APP to ${RELEASE}"
|
||||
systemctl stop sabnzbd.service
|
||||
tar zxvf <(curl -fsSL https://github.com/sabnzbd/sabnzbd/releases/download/$RELEASE/SABnzbd-${RELEASE}-src.tar.gz) &>/dev/null
|
||||
\cp -r SABnzbd-${RELEASE}/* /opt/sabnzbd &>/dev/null
|
||||
rm -rf SABnzbd-${RELEASE}
|
||||
cd /opt/sabnzbd
|
||||
python3 -m pip install -r requirements.txt &>/dev/null
|
||||
echo "${RELEASE}" >/opt/${APP}_version.txt
|
||||
systemctl start sabnzbd.service
|
||||
msg_ok "Updated ${APP} to ${RELEASE}"
|
||||
else
|
||||
msg_info "No update required. ${APP} is already at ${RELEASE}"
|
||||
fi
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user