mirror of
https://github.com/mofeng-git/One-KVM.git
synced 2026-03-15 23:46:51 +08:00
Compare commits
3727 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8c8bf35d0b | ||
|
|
f032b8c798 | ||
|
|
c711683c63 | ||
|
|
06a64725be | ||
|
|
94897ab8c9 | ||
|
|
c6a5ffa0cf | ||
|
|
9da06d3f58 | ||
|
|
7b3335ea94 | ||
|
|
15dbe6265f | ||
|
|
b2c8ed6818 | ||
|
|
2acd613a38 | ||
|
|
0202a3c2d1 | ||
|
|
be3e97178d | ||
|
|
dafc8e3941 | ||
|
|
6dcc41601e | ||
|
|
b9af5f8825 | ||
|
|
00ed5197b0 | ||
|
|
b2c5305564 | ||
|
|
e9443119ec | ||
|
|
ab5608e3e0 | ||
|
|
78557b0c47 | ||
|
|
f042ed38e0 | ||
|
|
e1e3605630 | ||
|
|
3f3a834c0c | ||
|
|
8631ee8555 | ||
|
|
da4da975ef | ||
|
|
b6c73aceb7 | ||
|
|
d3549ab52b | ||
|
|
965e649f8c | ||
|
|
b49107ff6c | ||
|
|
e9cbf04ba5 | ||
|
|
3cf543a13e | ||
|
|
4d89d6b222 | ||
|
|
e7c06643b4 | ||
|
|
72c9ae3aa0 | ||
|
|
05bced1461 | ||
|
|
464672d1a0 | ||
|
|
1061a6ba01 | ||
|
|
be6843a486 | ||
|
|
f5de6a0f2e | ||
|
|
21b7429ffe | ||
|
|
9ef1a3665a | ||
|
|
10a7ca978b | ||
|
|
4488365dfb | ||
|
|
5a61ddecd3 | ||
|
|
a12163a797 | ||
|
|
43e6cd3e26 | ||
|
|
57518468ad | ||
|
|
5973b9e773 | ||
|
|
e120b50f50 | ||
|
|
f1256ee74a | ||
|
|
9aef70c43f | ||
|
|
f9584929e3 | ||
|
|
7aa963330c | ||
|
|
5d8633556e | ||
|
|
ebda7ea03d | ||
|
|
fed3bf1efd | ||
|
|
d52bb34bb9 | ||
|
|
6c5f0bf09f | ||
|
|
aae529f40b | ||
|
|
253231adac | ||
|
|
e491057891 | ||
|
|
3b5d62dd98 | ||
|
|
38346bece1 | ||
|
|
647d3f3961 | ||
|
|
287244d376 | ||
|
|
56438a372e | ||
|
|
ab08d823c4 | ||
|
|
5db37797ea | ||
|
|
eda7ab3a49 | ||
|
|
af2ee26a2f | ||
|
|
596334735e | ||
|
|
c8385213cc | ||
|
|
c009985247 | ||
|
|
7caa695d79 | ||
|
|
630610bc53 | ||
|
|
e0bbf6968e | ||
|
|
ada1c39eef | ||
|
|
e014cbcedf | ||
|
|
adbd4f242b | ||
|
|
2649a2fa01 | ||
|
|
8cca5a8cc7 | ||
|
|
70452f048b | ||
|
|
be21a420a0 | ||
|
|
e337e8d45c | ||
|
|
8a09505baf | ||
|
|
870af902a1 | ||
|
|
0dd117711d | ||
|
|
ed68449274 | ||
|
|
85a2f2367d | ||
|
|
7fd4dae3c6 | ||
|
|
a32dcd2e00 | ||
|
|
0cf5f8de9e | ||
|
|
7394588279 | ||
|
|
666f0b694a | ||
|
|
b8ddf7c2da | ||
|
|
1b9b27660a | ||
|
|
7c453b8b49 | ||
|
|
5450d7297c | ||
|
|
506d8a4a64 | ||
|
|
8929d0f311 | ||
|
|
d25e43c934 | ||
|
|
3cbeabe2e8 | ||
|
|
eec64ef57c | ||
|
|
baa0f7e226 | ||
|
|
3ec872878e | ||
|
|
6928fab16c | ||
|
|
8fdb7d7cd6 | ||
|
|
433232c845 | ||
|
|
b419641251 | ||
|
|
50819d0a35 | ||
|
|
a37b818039 | ||
|
|
8a81996e52 | ||
|
|
69cb9ac950 | ||
|
|
30378211b5 | ||
|
|
e9e7f9bd05 | ||
|
|
72dce4de89 | ||
|
|
f1503d69e0 | ||
|
|
de5cb73b93 | ||
|
|
0751b519c2 | ||
|
|
0010dd1d11 | ||
|
|
7ef2e16b51 | ||
|
|
1a13760df0 | ||
|
|
d93639ba8d | ||
|
|
1e277c0f06 | ||
|
|
95597b15e4 | ||
|
|
6fbfc2b343 | ||
|
|
b893f27285 | ||
|
|
28167c4b45 | ||
|
|
5aef0a2193 | ||
|
|
0fd1174bc5 | ||
|
|
d4fb640418 | ||
|
|
d6b61cb407 | ||
|
|
8192b1fa95 | ||
|
|
deba110cdf | ||
|
|
936cc21c40 | ||
|
|
47778bc48c | ||
|
|
c02bc53bc4 | ||
|
|
546ac24b93 | ||
|
|
2195acf2ff | ||
|
|
60f413c1f4 | ||
|
|
a84242c9bc | ||
|
|
efa865ec9c | ||
|
|
399712c684 | ||
|
|
1ebc08eae8 | ||
|
|
684b9f629e | ||
|
|
76d70d0838 | ||
|
|
a26aee3543 | ||
|
|
0e4a70e7b9 | ||
|
|
cda32a083f | ||
|
|
11d8f26874 | ||
|
|
2929a925a2 | ||
|
|
b67a232584 | ||
|
|
90d8e745e3 | ||
|
|
3852d0a456 | ||
|
|
f5bebbc43f | ||
|
|
6707cb9932 | ||
|
|
87c887a62b | ||
|
|
40505e7e00 | ||
|
|
c1f408ea1a | ||
|
|
5b0ca351d7 | ||
|
|
b6869cfbec | ||
|
|
1e11678260 | ||
|
|
507c46b986 | ||
|
|
eca4167789 | ||
|
|
cb559f57c9 | ||
|
|
2e8917257e | ||
|
|
a1c14ac2d9 | ||
|
|
74dfc74dd2 | ||
|
|
df6da8e3d7 | ||
|
|
8c0953aafc | ||
|
|
073f67ca1b | ||
|
|
0f39312eac | ||
|
|
cb5c1e9e6d | ||
|
|
8ce27dca3f | ||
|
|
f4ba4210e1 | ||
|
|
4e1d9815cd | ||
|
|
758ba42838 | ||
|
|
f222926d85 | ||
|
|
d495332012 | ||
|
|
43a4094463 | ||
|
|
02fa7696c8 | ||
|
|
ced23f2cdf | ||
|
|
7e6cb6d7b3 | ||
|
|
144c1edd1b | ||
|
|
8209ee2eb0 | ||
|
|
5ed368769c | ||
|
|
1217144ecd | ||
|
|
6764a77ea1 | ||
|
|
8aee3ac70d | ||
|
|
d7a9f0c969 | ||
|
|
842ddc91a1 | ||
|
|
7a53f14456 | ||
|
|
45270a09d7 | ||
|
|
f03ac695bd | ||
|
|
b3e836e553 | ||
|
|
c57334f214 | ||
|
|
ebcc3ffa45 | ||
|
|
65d02aaa9d | ||
|
|
000f94d204 | ||
|
|
777b823fb9 | ||
|
|
d974c89e4d | ||
|
|
8c61de199f | ||
|
|
b779c18530 | ||
|
|
6ccd91a8d1 | ||
|
|
bd127c3fd3 | ||
|
|
4bc2ca3c90 | ||
|
|
dffebf003e | ||
|
|
445e2e04e2 | ||
|
|
56a591d51f | ||
|
|
6ad3fa2056 | ||
|
|
489601bb96 | ||
|
|
56da910ebe | ||
|
|
0bb8be8355 | ||
|
|
1ccfae1555 | ||
|
|
9badbdf697 | ||
|
|
0ff678a495 | ||
|
|
8f0a591c98 | ||
|
|
40393acf67 | ||
|
|
2123799e51 | ||
|
|
0bb35806ff | ||
|
|
011c7d8371 | ||
|
|
bbbc908af1 | ||
|
|
8113c5748b | ||
|
|
aa1ca3b329 | ||
|
|
2608241bb6 | ||
|
|
af79834cc7 | ||
|
|
39f84fbb4c | ||
|
|
b628cd5d49 | ||
|
|
de1402ff07 | ||
|
|
6d1002a80b | ||
|
|
ab95e68749 | ||
|
|
40e0b89595 | ||
|
|
7bc92c943a | ||
|
|
551e91069d | ||
|
|
508d5fe606 | ||
|
|
bc22a28022 | ||
|
|
80aa9de4cc | ||
|
|
572a75d27b | ||
|
|
864a2af45e | ||
|
|
5f26fa4072 | ||
|
|
af9023e8aa | ||
|
|
5c3ac4c9c1 | ||
|
|
d556032e0e | ||
|
|
2cefc35842 | ||
|
|
2c4d2b94d8 | ||
|
|
b9ff755f6d | ||
|
|
5f7f8d58ed | ||
|
|
fb9d860cf2 | ||
|
|
5045d8b3d7 | ||
|
|
cc66fbf1df | ||
|
|
9dc2af0356 | ||
|
|
99fcbdda05 | ||
|
|
308911191a | ||
|
|
0c213add4a | ||
|
|
3837e1a1c8 | ||
|
|
8569ed406a | ||
|
|
4772c2b6c3 | ||
|
|
e6b775089f | ||
|
|
721a80ef03 | ||
|
|
a55948bf8e | ||
|
|
39422f37ac | ||
|
|
06b69d3dde | ||
|
|
c9405efa05 | ||
|
|
abedace4b3 | ||
|
|
35397c5414 | ||
|
|
5b25b3661f | ||
|
|
0af0e2b4d0 | ||
|
|
2f27f4f725 | ||
|
|
4a6fbce485 | ||
|
|
4fc188dbc8 | ||
|
|
20927c7226 | ||
|
|
6a966af5fb | ||
|
|
a5e5e2b76a | ||
|
|
11943d0345 | ||
|
|
d7675cdf23 | ||
|
|
64cebcc721 | ||
|
|
eb07a7e558 | ||
|
|
b21c293b73 | ||
|
|
30d9b34f69 | ||
|
|
7e42d32007 | ||
|
|
6a665cd62f | ||
|
|
5697ae33eb | ||
|
|
8a46fe5038 | ||
|
|
f644a70dd7 | ||
|
|
e636914943 | ||
|
|
5cc815cfa0 | ||
|
|
73f929b260 | ||
|
|
8ef1545729 | ||
|
|
44e58d8d06 | ||
|
|
ca639f6be8 | ||
|
|
53c2d253f2 | ||
|
|
b2c9162845 | ||
|
|
3d8265e6b9 | ||
|
|
e784dc3e70 | ||
|
|
aacfd52d6c | ||
|
|
ce0d1551d6 | ||
|
|
89eb04c141 | ||
|
|
6facfbbff9 | ||
|
|
70484c046e | ||
|
|
d2bc31d1cd | ||
|
|
ee982946be | ||
|
|
06d656c6e0 | ||
|
|
107af57d4e | ||
|
|
097198356f | ||
|
|
e92b666dfb | ||
|
|
898f8218ca | ||
|
|
9847154e1b | ||
|
|
1acf27c21f | ||
|
|
142c4a3552 | ||
|
|
56728d5007 | ||
|
|
ddd4d292cd | ||
|
|
7e0301637b | ||
|
|
968a07335f | ||
|
|
d082f05e7a | ||
|
|
5bdc998922 | ||
|
|
1f8a3a4c9a | ||
|
|
ea285e3fec | ||
|
|
237d39b172 | ||
|
|
eb1eb527f8 | ||
|
|
e6d559f1a5 | ||
|
|
7542439ee3 | ||
|
|
7f364039ec | ||
|
|
478053f92a | ||
|
|
5db2b16af9 | ||
|
|
0016dedf14 | ||
|
|
f981b7a904 | ||
|
|
8872f2e2c3 | ||
|
|
e083b9f0b2 | ||
|
|
0545e0bcc6 | ||
|
|
8f060d0376 | ||
|
|
841927fea3 | ||
|
|
9b97e01b34 | ||
|
|
daa4b72625 | ||
|
|
99f2a1b09a | ||
|
|
fdf58ea6f7 | ||
|
|
7f7b431824 | ||
|
|
4ee30e01be | ||
|
|
9093329853 | ||
|
|
e303bc43ec | ||
|
|
03d2da6c13 | ||
|
|
f15a18591b | ||
|
|
1c5f641ce7 | ||
|
|
e2126cc3ca | ||
|
|
b8b6dff995 | ||
|
|
13f23a19c3 | ||
|
|
01fff2c7a9 | ||
|
|
d14757e107 | ||
|
|
78898ba325 | ||
|
|
3a13f83fbb | ||
|
|
175bdde523 | ||
|
|
f24ad95ced | ||
|
|
9158abfab4 | ||
|
|
bf87f036d3 | ||
|
|
1c50c873c3 | ||
|
|
b9d425e7dc | ||
|
|
5f44ac9f63 | ||
|
|
ceebac9485 | ||
|
|
039348a0d9 | ||
|
|
1dc7d8921d | ||
|
|
a3885e25c2 | ||
|
|
d3a4842cad | ||
|
|
d3dc097100 | ||
|
|
a650074514 | ||
|
|
a276aa76d6 | ||
|
|
8b7196671b | ||
|
|
fa6350baa8 | ||
|
|
5088e7d645 | ||
|
|
233bf6d60a | ||
|
|
dce6c48315 | ||
|
|
f027654ad1 | ||
|
|
444cd71ab5 | ||
|
|
f712be823f | ||
|
|
8f56d6ec27 | ||
|
|
35173ff181 | ||
|
|
e904bc467e | ||
|
|
4cec632a37 | ||
|
|
50e9ff54c9 | ||
|
|
cb97f95ad6 | ||
|
|
71e5e4d138 | ||
|
|
1d48ba0a5a | ||
|
|
611a138b42 | ||
|
|
d78309a564 | ||
|
|
62b14eeaa4 | ||
|
|
ab3bb95bdb | ||
|
|
43f2f6f9aa | ||
|
|
b23fd2f9f1 | ||
|
|
0980a586e6 | ||
|
|
90838fde59 | ||
|
|
852931bb82 | ||
|
|
4f8a55d9e0 | ||
|
|
1c212b22bf | ||
|
|
027569d4a8 | ||
|
|
5c77265d51 | ||
|
|
cbbdd1173f | ||
|
|
19b2b6c840 | ||
|
|
ce62d711c1 | ||
|
|
c9ee5131a1 | ||
|
|
5e000cdb62 | ||
|
|
32698e96d0 | ||
|
|
4baf779d37 | ||
|
|
ffe987eb65 | ||
|
|
e1f3aecf40 | ||
|
|
1b659d74b3 | ||
|
|
ed87098766 | ||
|
|
154a78a587 | ||
|
|
ba613928c7 | ||
|
|
b4d27ab1a9 | ||
|
|
af68aba4b7 | ||
|
|
13b43355ca | ||
|
|
88fae53541 | ||
|
|
b9c47126ab | ||
|
|
fef92336f3 | ||
|
|
1883da42a5 | ||
|
|
3ee1fba0d0 | ||
|
|
286c3a8caa | ||
|
|
2bebbd9319 | ||
|
|
ae3d9f5189 | ||
|
|
c407648116 | ||
|
|
9adba87f18 | ||
|
|
9e96772533 | ||
|
|
5274673ab6 | ||
|
|
68403bb77f | ||
|
|
030a742673 | ||
|
|
3676e2a4b2 | ||
|
|
6b0f94c78d | ||
|
|
6ad14ad833 | ||
|
|
76b582ff03 | ||
|
|
001e0e8259 | ||
|
|
f34b89fb29 | ||
|
|
35fbf3d306 | ||
|
|
6a76ce869a | ||
|
|
b17f752f10 | ||
|
|
96960ab0aa | ||
|
|
ffebd2b484 | ||
|
|
c799630e5e | ||
|
|
12c4a5ec06 | ||
|
|
4690e33088 | ||
|
|
edb31c275e | ||
|
|
237d67bf42 | ||
|
|
e2f6233bee | ||
|
|
fc488f7e8f | ||
|
|
2eafc1cf16 | ||
|
|
748b52e5a0 | ||
|
|
77857a61f3 | ||
|
|
22140106c4 | ||
|
|
9d33bb93ea | ||
|
|
1533545c87 | ||
|
|
61be1e2931 | ||
|
|
245bc17456 | ||
|
|
3163dd5c4b | ||
|
|
97390ba65f | ||
|
|
ea5205116e | ||
|
|
89b2ec8490 | ||
|
|
a9e21a57b2 | ||
|
|
1fb2fee18b | ||
|
|
3552fc06ad | ||
|
|
2a48b7e287 | ||
|
|
0b382c3d59 | ||
|
|
2149f497d4 | ||
|
|
c45d19c98e | ||
|
|
af9c2f1f59 | ||
|
|
d3f2b57fdc | ||
|
|
22190674c6 | ||
|
|
59b3b33102 | ||
|
|
5090cf65bd | ||
|
|
70cd3ab21d | ||
|
|
8d702f8cc2 | ||
|
|
272e3bf5e9 | ||
|
|
0a0581e71a | ||
|
|
860fb03cf8 | ||
|
|
2e19450eb1 | ||
|
|
7141eebbf8 | ||
|
|
74d2d74667 | ||
|
|
5b1101e42f | ||
|
|
b8f568fcd8 | ||
|
|
44ee4afcf2 | ||
|
|
5d8875da88 | ||
|
|
8ec0e5518a | ||
|
|
2d11b16c0c | ||
|
|
eabc03778d | ||
|
|
859dec9875 | ||
|
|
1c0b0bec41 | ||
|
|
4c6c86b029 | ||
|
|
e28dec4e33 | ||
|
|
e1c6d1a990 | ||
|
|
7382b1ed12 | ||
|
|
0676a3cee9 | ||
|
|
f355c38fe1 | ||
|
|
4457187a86 | ||
|
|
98ff56e190 | ||
|
|
c81380446b | ||
|
|
aa7f88f6cf | ||
|
|
d5faa5687b | ||
|
|
11b71125df | ||
|
|
b7d5a5f78f | ||
|
|
ff2ed7db39 | ||
|
|
0f66b41118 | ||
|
|
0d8e89a255 | ||
|
|
648cfdb7da | ||
|
|
44e0d70d76 | ||
|
|
5c9d98bc26 | ||
|
|
ae014a259f | ||
|
|
82a443ef66 | ||
|
|
6b5b7eda42 | ||
|
|
e07e33494d | ||
|
|
18e4949d1f | ||
|
|
070423dab0 | ||
|
|
b36b83f74e | ||
|
|
efc5b8fd0e | ||
|
|
a1b8a077ee | ||
|
|
b4b32a71e5 | ||
|
|
24bdc81722 | ||
|
|
8c45191853 | ||
|
|
cfac039eb4 | ||
|
|
83d24169f5 | ||
|
|
968fb41884 | ||
|
|
0e1ba765a2 | ||
|
|
36a61023d5 | ||
|
|
0e42e10c29 | ||
|
|
627f7821ef | ||
|
|
73f1ebdcad | ||
|
|
71fe447335 | ||
|
|
2b7d5960ca | ||
|
|
cc3bec8d7e | ||
|
|
c02dd703b9 | ||
|
|
63d8784f8e | ||
|
|
5241c0c579 | ||
|
|
9270008571 | ||
|
|
981309d886 | ||
|
|
10a38ff6bc | ||
|
|
d919847e8b | ||
|
|
9e8eb3520f | ||
|
|
1f5ef39135 | ||
|
|
8ef73fabc3 | ||
|
|
1adf5c40cc | ||
|
|
c7a83be9fe | ||
|
|
71cdddfd43 | ||
|
|
5287eb14f3 | ||
|
|
e2ac3412db | ||
|
|
7bb5531100 | ||
|
|
aec6727020 | ||
|
|
3c611121a8 | ||
|
|
620b9fcc89 | ||
|
|
b21ccfbcc9 | ||
|
|
d5a6354331 | ||
|
|
4038754c37 | ||
|
|
73f96fa0c7 | ||
|
|
3f54751034 | ||
|
|
eabe0a8ba9 | ||
|
|
2d0ffe6752 | ||
|
|
18e001f185 | ||
|
|
177ecad863 | ||
|
|
52c9c09798 | ||
|
|
a783924b2e | ||
|
|
bfa4756c6e | ||
|
|
4a6b0db099 | ||
|
|
51bad1dc98 | ||
|
|
13d8dcac59 | ||
|
|
1a529b10af | ||
|
|
8799179e08 | ||
|
|
c7238d33a7 | ||
|
|
718f10417a | ||
|
|
2ba337e028 | ||
|
|
988a190957 | ||
|
|
b606cd60d2 | ||
|
|
cfc556f412 | ||
|
|
29e266f542 | ||
|
|
0c4d21f204 | ||
|
|
8f32f9ae11 | ||
|
|
cec03c4468 | ||
|
|
7900a243a2 | ||
|
|
85bbb62a8f | ||
|
|
fdfda46726 | ||
|
|
7251e76112 | ||
|
|
5f3a42f7fd | ||
|
|
87bfdb408c | ||
|
|
4f8adf82ae | ||
|
|
5d587d1d41 | ||
|
|
1b772aace2 | ||
|
|
2189b77c07 | ||
|
|
a03c3c2367 | ||
|
|
19c1c7b933 | ||
|
|
546a8cef8b | ||
|
|
13dcf107ed | ||
|
|
82616ed7b5 | ||
|
|
d4e5722b24 | ||
|
|
1e46110a12 | ||
|
|
72df815407 | ||
|
|
94041d45fc | ||
|
|
36df38972c | ||
|
|
bb4349e646 | ||
|
|
21eddbde1c | ||
|
|
82ca2b1cae | ||
|
|
f98596fe77 | ||
|
|
81d67c6ed7 | ||
|
|
e78d3e03ec | ||
|
|
cbea3ce12f | ||
|
|
d9fd6b8921 | ||
|
|
d7366bab0c | ||
|
|
8f466715c8 | ||
|
|
02b2f0dace | ||
|
|
12b9d0f012 | ||
|
|
61de01d892 | ||
|
|
1f64f7b3ba | ||
|
|
5c1d691b2c | ||
|
|
315a07173b | ||
|
|
d91bcdce25 | ||
|
|
c41e2fa599 | ||
|
|
5e0eecb67a | ||
|
|
07e1c601a9 | ||
|
|
61ce81ab64 | ||
|
|
32560563dc | ||
|
|
82af7b2fba | ||
|
|
3542319882 | ||
|
|
f9ab76b247 | ||
|
|
69163ccfb1 | ||
|
|
c9db3a6019 | ||
|
|
449c7370ea | ||
|
|
a2abf090af | ||
|
|
73776e8fd3 | ||
|
|
2d881db05a | ||
|
|
06cae0f4e9 | ||
|
|
e140b4f29d | ||
|
|
dab9924096 | ||
|
|
895ec1cb73 | ||
|
|
cd599060a0 | ||
|
|
8f47597f27 | ||
|
|
0e81430894 | ||
|
|
163da1bdd1 | ||
|
|
ef8fee5f9c | ||
|
|
a10c45a1c1 | ||
|
|
01ec612773 | ||
|
|
a1b718f6a0 | ||
|
|
92c3620a86 | ||
|
|
472605734e | ||
|
|
a8c3023aae | ||
|
|
94025892f3 | ||
|
|
b44c8516d7 | ||
|
|
8c6e9eb4c1 | ||
|
|
b2c9236721 | ||
|
|
750b9214fe | ||
|
|
318724e3ae | ||
|
|
c96057772c | ||
|
|
1a8f98a64f | ||
|
|
cf44668af9 | ||
|
|
8e2a528418 | ||
|
|
e93a5c968f | ||
|
|
8efe0e614f | ||
|
|
68bfb04bb4 | ||
|
|
2b0515dc55 | ||
|
|
78ceb345ac | ||
|
|
dfa3354978 | ||
|
|
4f21aae0ce | ||
|
|
e44f373771 | ||
|
|
3dd05af8f5 | ||
|
|
8b1beb1e28 | ||
|
|
2e6f0da141 | ||
|
|
2730b11840 | ||
|
|
ce81c872ea | ||
|
|
5a36dec615 | ||
|
|
ee9ff3cd46 | ||
|
|
5794da2c51 | ||
|
|
be4269fe61 | ||
|
|
c584302587 | ||
|
|
ddfe21d2b0 | ||
|
|
ecf3faf984 | ||
|
|
4220fe5908 | ||
|
|
6689008840 | ||
|
|
6e24efc81e | ||
|
|
c562e640b5 | ||
|
|
3749599361 | ||
|
|
e3313f33d3 | ||
|
|
64728dc0e6 | ||
|
|
26d807a4b9 | ||
|
|
81aeb3825d | ||
|
|
e9b5c75ef0 | ||
|
|
e0c32c2111 | ||
|
|
4e9d93b2b1 | ||
|
|
a0fba08d4e | ||
|
|
f34685d91f | ||
|
|
8c2069ae1f | ||
|
|
147583e10d | ||
|
|
1eafec4f0e | ||
|
|
067e5271c3 | ||
|
|
10a8363183 | ||
|
|
c129f54efa | ||
|
|
a74044b086 | ||
|
|
db3f622023 | ||
|
|
9879a9f05b | ||
|
|
97f459cd35 | ||
|
|
af4376761c | ||
|
|
22341044ba | ||
|
|
999a19ca8d | ||
|
|
d560169980 | ||
|
|
226e5cf8ce | ||
|
|
9f98a2f701 | ||
|
|
9c694da00c | ||
|
|
7c507810f0 | ||
|
|
66c1d321d2 | ||
|
|
82aedb9c4e | ||
|
|
aeca775eee | ||
|
|
1786ccc490 | ||
|
|
091ac4f9b2 | ||
|
|
388c8aeb2d | ||
|
|
caf08bd2ac | ||
|
|
749f4d6b49 | ||
|
|
50f8a8aae8 | ||
|
|
6e0d93be23 | ||
|
|
225ea61a0e | ||
|
|
816e518547 | ||
|
|
f5ff9c142a | ||
|
|
caba1d33a2 | ||
|
|
eca2d697ed | ||
|
|
7f8bb428d3 | ||
|
|
d608b6e010 | ||
|
|
018f33533d | ||
|
|
6ef1645e93 | ||
|
|
bfbf3172e3 | ||
|
|
f0a860600d | ||
|
|
a834c89ef3 | ||
|
|
ac2ea46045 | ||
|
|
994715f214 | ||
|
|
93530484bb | ||
|
|
5c733ccb81 | ||
|
|
aca82dd3a9 | ||
|
|
b5353e63cd | ||
|
|
b5d6731497 | ||
|
|
12422fa1ff | ||
|
|
1c27bd677f | ||
|
|
3170dcdb57 | ||
|
|
70e89f5e04 | ||
|
|
514a31a678 | ||
|
|
a7534ed411 | ||
|
|
e021d332fd | ||
|
|
b8b0ad2874 | ||
|
|
cbf0a8b8f2 | ||
|
|
987684bc82 | ||
|
|
314459310a | ||
|
|
95418c9400 | ||
|
|
5bb3488281 | ||
|
|
1209ddeb8d | ||
|
|
fc2efb6ba9 | ||
|
|
2d1969a9a1 | ||
|
|
5863004441 | ||
|
|
99e4615d38 | ||
|
|
59ba330ef8 | ||
|
|
db208ad456 | ||
|
|
7ed7443a2a | ||
|
|
4b7bbddef1 | ||
|
|
e1fba790c1 | ||
|
|
f6283e1197 | ||
|
|
2cd2fa8722 | ||
|
|
90f74619ed | ||
|
|
cd97509c1b | ||
|
|
26238e241e | ||
|
|
22db176ef0 | ||
|
|
6c0f5cccb9 | ||
|
|
b08b7a7758 | ||
|
|
1a2b70b2b0 | ||
|
|
b3273b694f | ||
|
|
2392aa2330 | ||
|
|
4f70060d5e | ||
|
|
b5b6733b2a | ||
|
|
426ed5da12 | ||
|
|
c4a2363451 | ||
|
|
b5d10afcca | ||
|
|
8798c2f8df | ||
|
|
84563553b8 | ||
|
|
097dbc517d | ||
|
|
94d2f20d1f | ||
|
|
fd6f738a07 | ||
|
|
03ce7bfd2c | ||
|
|
18a8e5c9ef | ||
|
|
a594b574e8 | ||
|
|
dbb9eda341 | ||
|
|
166cb8e3b7 | ||
|
|
2189512e0b | ||
|
|
921d7da513 | ||
|
|
74a19e40da | ||
|
|
27f38ef086 | ||
|
|
59b1d8abbb | ||
|
|
55cbd7fec8 | ||
|
|
4d6da37f40 | ||
|
|
baf454bef9 | ||
|
|
005fa5b19c | ||
|
|
de5a93c2b7 | ||
|
|
4b80bd8e07 | ||
|
|
97eb2e9f50 | ||
|
|
dd702116b7 | ||
|
|
f652eca9c2 | ||
|
|
002031baf1 | ||
|
|
d3eba45644 | ||
|
|
544adcec6b | ||
|
|
9ecb7fb94d | ||
|
|
49a1beab37 | ||
|
|
3c29e8f61a | ||
|
|
cd3c28e97f | ||
|
|
7667834b6d | ||
|
|
5495f70564 | ||
|
|
c63bb2adb7 | ||
|
|
e3abafdab9 | ||
|
|
acf55a3b27 | ||
|
|
7a1f8f32da | ||
|
|
880f24dfbc | ||
|
|
3a7278b0f7 | ||
|
|
7c7ac38bfe | ||
|
|
b4fa35f05f | ||
|
|
c98a18aa7e | ||
|
|
50b6237e98 | ||
|
|
79e1b457b7 | ||
|
|
52ac8d93a1 | ||
|
|
1f9e826f2f | ||
|
|
73263ebe82 | ||
|
|
edd9435945 | ||
|
|
5bc480c6e8 | ||
|
|
ed558ffd68 | ||
|
|
6c0f14cb9d | ||
|
|
2b728901f5 | ||
|
|
86b9721046 | ||
|
|
3c1d3161ae | ||
|
|
f7b6e233bb | ||
|
|
cd4d48c44a | ||
|
|
b2169a655a | ||
|
|
a2e90c08d3 | ||
|
|
acd6279113 | ||
|
|
ba57a6e5d4 | ||
|
|
67d2e33573 | ||
|
|
cbebc1fa52 | ||
|
|
cef6497375 | ||
|
|
8a820c8567 | ||
|
|
17e6185404 | ||
|
|
29f2506d25 | ||
|
|
2d772cc30e | ||
|
|
828778f10a | ||
|
|
2cbdd9984a | ||
|
|
62c88485ae | ||
|
|
95ac2bd017 | ||
|
|
e63a7cbd8f | ||
|
|
86ff6f4eb2 | ||
|
|
61cd781fff | ||
|
|
e284fd843b | ||
|
|
15567d6636 | ||
|
|
1794044e9e | ||
|
|
1b10766071 | ||
|
|
e49f6e2969 | ||
|
|
dcd6c37503 | ||
|
|
b6b5290610 | ||
|
|
7087c06bc4 | ||
|
|
4902d2a943 | ||
|
|
5faa8762f7 | ||
|
|
c551a08a91 | ||
|
|
d683149b38 | ||
|
|
392b8c3f9e | ||
|
|
b4f448b671 | ||
|
|
597d399a65 | ||
|
|
c5cebb4f13 | ||
|
|
c6e3df51a0 | ||
|
|
0d184daf0d | ||
|
|
d3d4e25027 | ||
|
|
7f48c5c62e | ||
|
|
8f890af803 | ||
|
|
07fec77023 | ||
|
|
52fdc94eb8 | ||
|
|
248d9cf33f | ||
|
|
94b7c99597 | ||
|
|
3ae671e0c0 | ||
|
|
a40dc53860 | ||
|
|
0e9b87ad61 | ||
|
|
a68eb4ed2d | ||
|
|
6a339238ff | ||
|
|
1d7ef25a0b | ||
|
|
35fb7e9c84 | ||
|
|
31bb5e4308 | ||
|
|
154560b4e0 | ||
|
|
bd439a4323 | ||
|
|
5bb8218c39 | ||
|
|
0c25e89f46 | ||
|
|
41c8c41e4d | ||
|
|
3b4792882b | ||
|
|
edc370168c | ||
|
|
fecf6a4663 | ||
|
|
be25f5a026 | ||
|
|
703cc2b981 | ||
|
|
cbd386beb8 | ||
|
|
1c0ed565ce | ||
|
|
0d086c2c4a | ||
|
|
9e26141783 | ||
|
|
7e7e17bbc2 | ||
|
|
e4457a8f79 | ||
|
|
dce32c9e3e | ||
|
|
d1800561e6 | ||
|
|
299fadf0fa | ||
|
|
26a831d2ed | ||
|
|
59ed36a6af | ||
|
|
eb05fd4d3b | ||
|
|
040e0d6fdf | ||
|
|
41c53984e4 | ||
|
|
d816c84322 | ||
|
|
043e4698f5 | ||
|
|
50aee35ca9 | ||
|
|
e0006debf6 | ||
|
|
5bf5c18081 | ||
|
|
b78a9dd8e1 | ||
|
|
0f4e736185 | ||
|
|
2b8cc93362 | ||
|
|
9d543122ce | ||
|
|
95f3b5d551 | ||
|
|
dc848a3293 | ||
|
|
740a3315bd | ||
|
|
4c7ef5b28c | ||
|
|
5a25772bec | ||
|
|
70747a47ac | ||
|
|
da6ad16e32 | ||
|
|
d096ad3263 | ||
|
|
01a7c901af | ||
|
|
9e2a50df82 | ||
|
|
9065b258cc | ||
|
|
5b1dd8ad3a | ||
|
|
7f883f6135 | ||
|
|
66bb26cc9c | ||
|
|
d4e1e9e05b | ||
|
|
666880d757 | ||
|
|
6b2b9c6ec4 | ||
|
|
3748360deb | ||
|
|
4c6511491e | ||
|
|
d703ed0f00 | ||
|
|
6072276fd5 | ||
|
|
5cac612994 | ||
|
|
d93d112aa0 | ||
|
|
10633f9e08 | ||
|
|
a4f3ee79e6 | ||
|
|
29bd1e2f6f | ||
|
|
68b3dd4fd0 | ||
|
|
bb3600cfa8 | ||
|
|
7a83ce0f79 | ||
|
|
941b3bbd75 | ||
|
|
317a127f58 | ||
|
|
53f8b052de | ||
|
|
648316931a | ||
|
|
c17611a438 | ||
|
|
1e04fef681 | ||
|
|
b6bab0100a | ||
|
|
a439f50747 | ||
|
|
e299ed452a | ||
|
|
662890fe1b | ||
|
|
8b4a34cd20 | ||
|
|
7235d44303 | ||
|
|
81f507d0dd | ||
|
|
872a954556 | ||
|
|
c3fe6787b3 | ||
|
|
b88e70ef01 | ||
|
|
48118f15ff | ||
|
|
f3632426a6 | ||
|
|
209be98eb5 | ||
|
|
1a28038543 | ||
|
|
260f118820 | ||
|
|
08241e9255 | ||
|
|
c57928a0f1 | ||
|
|
ad95e820cc | ||
|
|
7177f83bc5 | ||
|
|
6ea60321b0 | ||
|
|
5eaf2aa247 | ||
|
|
e351f9e2ea | ||
|
|
2804f5fd15 | ||
|
|
34bb202d62 | ||
|
|
bd03a487a9 | ||
|
|
3d109453c6 | ||
|
|
1a8546305d | ||
|
|
db3430ccb8 | ||
|
|
e5ed253d68 | ||
|
|
5d54b32ab6 | ||
|
|
7fa7fe5ade | ||
|
|
37108f786e | ||
|
|
2a23846582 | ||
|
|
a39d3dffbe | ||
|
|
16d9c3815f | ||
|
|
c402aeab4d | ||
|
|
e1c4a5163d | ||
|
|
684b0185f7 | ||
|
|
4f392d505e | ||
|
|
b2361f1fbe | ||
|
|
b3c7340504 | ||
|
|
808cd02018 | ||
|
|
128288bd54 | ||
|
|
056d8d037b | ||
|
|
81da1ae86b | ||
|
|
7254139e76 | ||
|
|
5d65bdf390 | ||
|
|
08f334cfd7 | ||
|
|
73fce16ec7 | ||
|
|
f54a9b049d | ||
|
|
9272049f45 | ||
|
|
737550e768 | ||
|
|
51447bc436 | ||
|
|
6761588bc8 | ||
|
|
b5fa02d23f | ||
|
|
55eab2df0d | ||
|
|
cb8534dfe7 | ||
|
|
0ebd2da83d | ||
|
|
647489ecd9 | ||
|
|
66f09b16ac | ||
|
|
098cf610eb | ||
|
|
6f4131c3f6 | ||
|
|
0afc513de8 | ||
|
|
d11c926761 | ||
|
|
967361f775 | ||
|
|
fa01d92dde | ||
|
|
38f2da2e2e | ||
|
|
4201206bd2 | ||
|
|
e6b34c9cb1 | ||
|
|
615863a848 | ||
|
|
ce43938d28 | ||
|
|
ee3e224e39 | ||
|
|
4b75221e94 | ||
|
|
f0c2ff3a96 | ||
|
|
c15d743f48 | ||
|
|
a244c36010 | ||
|
|
a0872fc69c | ||
|
|
0128145e99 | ||
|
|
02413d981a | ||
|
|
2459e3a259 | ||
|
|
170cee937d | ||
|
|
f16774203d | ||
|
|
b2165a460c | ||
|
|
6fe5fbd842 | ||
|
|
e364d7f8df | ||
|
|
4ae4e7cc65 | ||
|
|
766e515178 | ||
|
|
7bd690b4db | ||
|
|
614d02a74d | ||
|
|
43fff98059 | ||
|
|
35363bbde8 | ||
|
|
b94d524851 | ||
|
|
9633c10281 | ||
|
|
5757eba854 | ||
|
|
e0513ced47 | ||
|
|
61f4e35e87 | ||
|
|
4f9501a806 | ||
|
|
de6fd94349 | ||
|
|
2482b466a3 | ||
|
|
e37a7254d5 | ||
|
|
fdc3edfa79 | ||
|
|
1d4b39ef1b | ||
|
|
ec9785b4be | ||
|
|
aa630988cc | ||
|
|
d995349b63 | ||
|
|
2535dce7b8 | ||
|
|
c23931ab39 | ||
|
|
d21e74700a | ||
|
|
eeaeebf7c7 | ||
|
|
9ee63aba3e | ||
|
|
9925198762 | ||
|
|
0809daa199 | ||
|
|
65bdbe4387 | ||
|
|
375cbe5c5f | ||
|
|
241bd6e19a | ||
|
|
9c5fd210f2 | ||
|
|
66a63f6044 | ||
|
|
589ec14de0 | ||
|
|
5ee8f7a7a3 | ||
|
|
5933e1ce20 | ||
|
|
caf1a89ec6 | ||
|
|
02fa3fa65d | ||
|
|
52ea19b44a | ||
|
|
fbd1ff5208 | ||
|
|
d518e6b512 | ||
|
|
dec797d0b0 | ||
|
|
cdb39f789f | ||
|
|
833b9efb30 | ||
|
|
b809bbc497 | ||
|
|
c8f9396fe0 | ||
|
|
8ab0ce45b9 | ||
|
|
4b4fe63ad7 | ||
|
|
1055dadcb9 | ||
|
|
1564c68727 | ||
|
|
800da71670 | ||
|
|
c1f104c059 | ||
|
|
e0d0066223 | ||
|
|
d05b46e05d | ||
|
|
049ea642dc | ||
|
|
6cfe64daa8 | ||
|
|
90ae558f36 | ||
|
|
779d0de59f | ||
|
|
88b2e90438 | ||
|
|
0e3ebac362 | ||
|
|
de14053725 | ||
|
|
baeb2bc35b | ||
|
|
44ffe83199 | ||
|
|
477e6f05e4 | ||
|
|
aa5a538c64 | ||
|
|
2eef9bd263 | ||
|
|
06bf0fcd17 | ||
|
|
0d1e8b4c10 | ||
|
|
f4d8a6d523 | ||
|
|
d6e158c28f | ||
|
|
aa569a7352 | ||
|
|
3e402f4d7b | ||
|
|
5b11b6bc55 | ||
|
|
3a9b433000 | ||
|
|
d3dbf19399 | ||
|
|
3ba15e824e | ||
|
|
0e0fe28cf6 | ||
|
|
e46229e1d1 | ||
|
|
f277160396 | ||
|
|
867412a6cd | ||
|
|
249098b41c | ||
|
|
831835312e | ||
|
|
7031edb509 | ||
|
|
04fa68a399 | ||
|
|
ca87bd66d7 | ||
|
|
af4eb77231 | ||
|
|
508a6e9b58 | ||
|
|
42c85021f7 | ||
|
|
bdeebb5698 | ||
|
|
7cbe4ec2e3 | ||
|
|
c58cc99582 | ||
|
|
adf4be9bf7 | ||
|
|
b16359c53e | ||
|
|
54cb5e1fed | ||
|
|
01ac7522db | ||
|
|
582415344c | ||
|
|
136b756e00 | ||
|
|
be8032893e | ||
|
|
b7e220b4c5 | ||
|
|
4661695f86 | ||
|
|
398b0ad762 | ||
|
|
5cb5a61acf | ||
|
|
03174d0f1a | ||
|
|
734ee8a4ed | ||
|
|
abddf64113 | ||
|
|
f8a77c8403 | ||
|
|
ac06ef62fc | ||
|
|
3df9cb6982 | ||
|
|
1d0ebfce82 | ||
|
|
1ca3045780 | ||
|
|
9f289914e9 | ||
|
|
24651f4db3 | ||
|
|
95e9b7dd75 | ||
|
|
48f4792861 | ||
|
|
4b87851119 | ||
|
|
32da05b3ec | ||
|
|
1c77ae1ef9 | ||
|
|
d409ae68c3 | ||
|
|
6772d3425d | ||
|
|
1973a1e6e0 | ||
|
|
dc1bc121c8 | ||
|
|
89aff795fd | ||
|
|
1afd96cdb9 | ||
|
|
67547636cf | ||
|
|
1f33d92f61 | ||
|
|
50b9bb5950 | ||
|
|
7bb1490e9e | ||
|
|
ad6a387941 | ||
|
|
38fae01cc0 | ||
|
|
793edf8203 | ||
|
|
c840ea7306 | ||
|
|
e864aafcf7 | ||
|
|
b4c1cc9976 | ||
|
|
dd251eeaf9 | ||
|
|
c09567c1a9 | ||
|
|
e7f8cd7c54 | ||
|
|
b816bcb335 | ||
|
|
74785aec88 | ||
|
|
d844115d2c | ||
|
|
968d3b2516 | ||
|
|
bcc97279e9 | ||
|
|
329b84e124 | ||
|
|
fd70e8203c | ||
|
|
e54ae11c33 | ||
|
|
6f4d45440a | ||
|
|
9c65a61b8b | ||
|
|
6ffa5dc872 | ||
|
|
362b9322de | ||
|
|
60a7919b78 | ||
|
|
b8d48b63cb | ||
|
|
f31663b5f0 | ||
|
|
9206f5c2aa | ||
|
|
4cb2802cfa | ||
|
|
f5ae4e4172 | ||
|
|
8727b0e8bd | ||
|
|
f634be16f0 | ||
|
|
0101a4f79f | ||
|
|
cef5f4ff23 | ||
|
|
fe13d146e5 | ||
|
|
1b845585f8 | ||
|
|
bd5676222b | ||
|
|
9e6edd0cd7 | ||
|
|
094106519a | ||
|
|
a693b52bf0 | ||
|
|
9202cf1d44 | ||
|
|
9f4c241204 | ||
|
|
f8e9036986 | ||
|
|
c85e3f939f | ||
|
|
3e5bcc752c | ||
|
|
e51a35b28e | ||
|
|
f41136e32b | ||
|
|
cd8b999b55 | ||
|
|
835b288fc5 | ||
|
|
4de5b40fb8 | ||
|
|
a70800323e | ||
|
|
804bb68ae3 | ||
|
|
dd3044753c | ||
|
|
43da6af153 | ||
|
|
0edf854832 | ||
|
|
4aa7a21b55 | ||
|
|
17865348f2 | ||
|
|
1d1fc35ac5 | ||
|
|
805ff9dd5f | ||
|
|
74e81b6e03 | ||
|
|
af129106cd | ||
|
|
b5344a5f3a | ||
|
|
53e64fe151 | ||
|
|
88c7796551 | ||
|
|
37e5118fff | ||
|
|
e050bbd725 | ||
|
|
6caeb2ce82 | ||
|
|
6e87f6b98b | ||
|
|
9769b2f754 | ||
|
|
6eb02a2bd5 | ||
|
|
b906d7f74c | ||
|
|
8682a4ac90 | ||
|
|
28fa6c4991 | ||
|
|
326d51e6a3 | ||
|
|
9b0a687c73 | ||
|
|
4d415244b2 | ||
|
|
55b2eb3bb1 | ||
|
|
9ed0c9add9 | ||
|
|
e5d5d7938b | ||
|
|
580dcf6a2d | ||
|
|
7832924aac | ||
|
|
fa777cb0b2 | ||
|
|
3ee0c41726 | ||
|
|
c0c0972b74 | ||
|
|
649a30aff6 | ||
|
|
ced52d739c | ||
|
|
2bcea6d522 | ||
|
|
a3b59d35e8 | ||
|
|
902b8b2532 | ||
|
|
7296637e4d | ||
|
|
5914035495 | ||
|
|
9fe588ac46 | ||
|
|
124ed635ed | ||
|
|
08b7c577d7 | ||
|
|
fd256852bf | ||
|
|
0f5bef0fc3 | ||
|
|
a3b0b04763 | ||
|
|
d722c3fff7 | ||
|
|
628d25cb87 | ||
|
|
dab806eaec | ||
|
|
1c730a4dcf | ||
|
|
70461b6192 | ||
|
|
55e67e32ae | ||
|
|
232873a77b | ||
|
|
c236cc3016 | ||
|
|
53d0855cf8 | ||
|
|
6c5ed69c0b | ||
|
|
80347b6e20 | ||
|
|
f81fded8a4 | ||
|
|
dfed318481 | ||
|
|
e843830d83 | ||
|
|
2e641ff835 | ||
|
|
63ad611795 | ||
|
|
720299e386 | ||
|
|
10b8215f4e | ||
|
|
40fb912a17 | ||
|
|
a3ce204100 | ||
|
|
61cdf10a83 | ||
|
|
293490298c | ||
|
|
2294b5a9e1 | ||
|
|
d83e32fc51 | ||
|
|
e566364b75 | ||
|
|
fbcab5bc57 | ||
|
|
ed8d2af999 | ||
|
|
a88757ca7c | ||
|
|
f7291565cc | ||
|
|
b4aeb86649 | ||
|
|
e83764c501 | ||
|
|
ae4509f234 | ||
|
|
af8e859f71 | ||
|
|
95928ea4d5 | ||
|
|
f0b5c1ebba | ||
|
|
fc85121b14 | ||
|
|
565d2dd614 | ||
|
|
32fb465ad4 | ||
|
|
04720ffe18 | ||
|
|
04e0ad213a | ||
|
|
047d8ad760 | ||
|
|
6b3296c989 | ||
|
|
a29f9692c8 | ||
|
|
1e5c8535f6 | ||
|
|
80b5546d21 | ||
|
|
6bd2b9c680 | ||
|
|
c7f2564364 | ||
|
|
725c5d8e42 | ||
|
|
4fd1e982d5 | ||
|
|
93a602398e | ||
|
|
d55d7beb0e | ||
|
|
970c341519 | ||
|
|
7c44d733a9 | ||
|
|
c92d17dea2 | ||
|
|
486f1be986 | ||
|
|
122242ea47 | ||
|
|
f7634c5900 | ||
|
|
87d6ccdac2 | ||
|
|
a02ae60a30 | ||
|
|
6cf8ac4553 | ||
|
|
6f6772a6b6 | ||
|
|
8ce08fb456 | ||
|
|
7c4ce1d863 | ||
|
|
0353e0c832 | ||
|
|
5be17cb756 | ||
|
|
fa3aeb79ae | ||
|
|
acef10c12b | ||
|
|
421a42f364 | ||
|
|
64fd7b088e | ||
|
|
b9688ca438 | ||
|
|
bd8984dd06 | ||
|
|
f1e9f33c13 | ||
|
|
63061352c0 | ||
|
|
b54cc1b028 | ||
|
|
d8a3c1cdfa | ||
|
|
31f5b08f43 | ||
|
|
5108f784d9 | ||
|
|
7ba7f08be7 | ||
|
|
3b56100fe2 | ||
|
|
66e5aa49e0 | ||
|
|
d2c6bf716d | ||
|
|
17e140729e | ||
|
|
b775239d72 | ||
|
|
ab09f88d80 | ||
|
|
984ae4fa37 | ||
|
|
5d1788cb44 | ||
|
|
0dea368d72 | ||
|
|
6828a0e6aa | ||
|
|
03a4c13291 | ||
|
|
ecb585866c | ||
|
|
686d6f7c2c | ||
|
|
17412be3fe | ||
|
|
c4ca7011bf | ||
|
|
94dca7d7c6 | ||
|
|
ed93f1f4d3 | ||
|
|
2d4aa93f06 | ||
|
|
44cb41019a | ||
|
|
96f2d36af6 | ||
|
|
77eda0729b | ||
|
|
4b26d65cf9 | ||
|
|
ec40284a3b | ||
|
|
267aef7790 | ||
|
|
8e2688d820 | ||
|
|
f474fd6453 | ||
|
|
92ebe93bac | ||
|
|
056f069346 | ||
|
|
8775cd2286 | ||
|
|
6dc1b758b5 | ||
|
|
be5f57e03f | ||
|
|
346c9f753d | ||
|
|
b3844f24da | ||
|
|
0ca9de9f35 | ||
|
|
9a19be92a0 | ||
|
|
6922f70dcd | ||
|
|
3c609e6fe0 | ||
|
|
3a878baac8 | ||
|
|
ed23fef512 | ||
|
|
67180e244f | ||
|
|
e85a80f221 | ||
|
|
99df3f6556 | ||
|
|
0d93862b37 | ||
|
|
ce347fad40 | ||
|
|
0019d84c3e | ||
|
|
c161d22dbb | ||
|
|
bb853b283b | ||
|
|
9e1c1dace9 | ||
|
|
b0837edbf2 | ||
|
|
8638a290ae | ||
|
|
843270a0a8 | ||
|
|
d4c307b804 | ||
|
|
c2634cb69f | ||
|
|
1c29a9177f | ||
|
|
406b023f7c | ||
|
|
375106ee29 | ||
|
|
a140f11b1b | ||
|
|
9346169271 | ||
|
|
3216f07434 | ||
|
|
2666cf6d56 | ||
|
|
f04617ac4f | ||
|
|
6d6630a4dd | ||
|
|
7105693b22 | ||
|
|
863f8edae0 | ||
|
|
9efb8fd326 | ||
|
|
f1b24f50f3 | ||
|
|
ef96b8f19d | ||
|
|
ade918eb72 | ||
|
|
a8af9b6290 | ||
|
|
13afa9f4d3 | ||
|
|
30ce90b100 | ||
|
|
8bdfe3b2c3 | ||
|
|
96191a1b08 | ||
|
|
67839a52a2 | ||
|
|
a2e93aa510 | ||
|
|
20b5b47bdc | ||
|
|
de842f12e2 | ||
|
|
8e2bd4265a | ||
|
|
41d1471cd9 | ||
|
|
2396e87b70 | ||
|
|
a614be7d76 | ||
|
|
954ec769c6 | ||
|
|
b0fa9c21f6 | ||
|
|
ac37503631 | ||
|
|
88909355f9 | ||
|
|
bdc2a317e5 | ||
|
|
ba1f66db9c | ||
|
|
3ab43edeb9 | ||
|
|
3ee1948f19 | ||
|
|
902fc38778 | ||
|
|
a63b9e0b77 | ||
|
|
e506d744f4 | ||
|
|
ae4709db17 | ||
|
|
5ce653dde5 | ||
|
|
ef5f268ae2 | ||
|
|
93a57e5e37 | ||
|
|
ae9650b9ee | ||
|
|
1b3a2cc3f7 | ||
|
|
0efd93d496 | ||
|
|
a67c20be29 | ||
|
|
04f9bbe568 | ||
|
|
9f44a120a7 | ||
|
|
c97f509a8e | ||
|
|
f1662e2262 | ||
|
|
f1d018bef4 | ||
|
|
015086b068 | ||
|
|
77efe92111 | ||
|
|
12bed58e6b | ||
|
|
f609e857b1 | ||
|
|
885c14f9e4 | ||
|
|
73a6a15336 | ||
|
|
3c029a6c46 | ||
|
|
1e98d9bd5d | ||
|
|
aef7a5a094 | ||
|
|
f2a2ae0736 | ||
|
|
6e4803017d | ||
|
|
4eed5d9456 | ||
|
|
3d20f5b488 | ||
|
|
d16672704c | ||
|
|
b9ba441f16 | ||
|
|
d3bb04f949 | ||
|
|
2088b78872 | ||
|
|
b27b4f1491 | ||
|
|
1551f34bf6 | ||
|
|
0ae6f40a67 | ||
|
|
fee323ecc8 | ||
|
|
444603cbb2 | ||
|
|
227423e249 | ||
|
|
308e5c1779 | ||
|
|
2e77917785 | ||
|
|
6f423cb7da | ||
|
|
1341ee38c5 | ||
|
|
25f5d022e3 | ||
|
|
9c56f94332 | ||
|
|
eb95257c60 | ||
|
|
a3812dda69 | ||
|
|
6118eadec6 | ||
|
|
8e60b84288 | ||
|
|
aa2de59ff5 | ||
|
|
fde4539e36 | ||
|
|
6f56c40436 | ||
|
|
b31dde20e0 | ||
|
|
6d72bf9b98 | ||
|
|
39e2719b9b | ||
|
|
6afe551cd4 | ||
|
|
ea47b4c512 | ||
|
|
7d683aeccd | ||
|
|
aed6fd10ed | ||
|
|
653bef8657 | ||
|
|
367048aff1 | ||
|
|
ddbb2c7645 | ||
|
|
da3468047a | ||
|
|
1f6bd0c590 | ||
|
|
65a471db99 | ||
|
|
9fb67e9777 | ||
|
|
8d0eb4c525 | ||
|
|
9f9d8a5347 | ||
|
|
97bb4e46b3 | ||
|
|
88aad3bf87 | ||
|
|
ea896f7116 | ||
|
|
c7b9aada41 | ||
|
|
940539f6f5 | ||
|
|
d084110481 | ||
|
|
10e6e53006 | ||
|
|
7c9405459e | ||
|
|
f01a29b80c | ||
|
|
b6aaf18c42 | ||
|
|
434acc5de5 | ||
|
|
278b4b335c | ||
|
|
73685123cc | ||
|
|
60e2a38dcd | ||
|
|
642149daed | ||
|
|
d8d043679d | ||
|
|
64e3fc0d0c | ||
|
|
7ecf56d144 | ||
|
|
b20d201517 | ||
|
|
db144eb775 | ||
|
|
2e886ff92b | ||
|
|
0482fc2503 | ||
|
|
10d8514c6b | ||
|
|
01dd31d755 | ||
|
|
34cac8a4c7 | ||
|
|
e2873032ee | ||
|
|
b4ca93dac1 | ||
|
|
a8294b8852 | ||
|
|
2fa01ebaec | ||
|
|
a4dbea4274 | ||
|
|
53c3556f8c | ||
|
|
60c729980f | ||
|
|
125baff0cb | ||
|
|
e432804a5a | ||
|
|
a97c92ec7a | ||
|
|
3ea4f806c8 | ||
|
|
f3d3d92702 | ||
|
|
7cee13d599 | ||
|
|
6d75a8f5c0 | ||
|
|
93c48b2095 | ||
|
|
d98fae4822 | ||
|
|
67b846ea55 | ||
|
|
463237229d | ||
|
|
756a6c6066 | ||
|
|
1897e4d043 | ||
|
|
ca0ba6cc86 | ||
|
|
97f1546439 | ||
|
|
2641ef74f8 | ||
|
|
58644dd96d | ||
|
|
b1b008f6e1 | ||
|
|
1c3155daec | ||
|
|
d0c237c177 | ||
|
|
fdf3c0f8d4 | ||
|
|
c162bb7ea4 | ||
|
|
2f92e95bf0 | ||
|
|
33386e5102 | ||
|
|
9f9396a810 | ||
|
|
67b67f6cbc | ||
|
|
51ed538415 | ||
|
|
2a0ed6a92c | ||
|
|
c585dfc483 | ||
|
|
89a0ec8cc8 | ||
|
|
ae81fced3d | ||
|
|
e95068cc46 | ||
|
|
977c8a1ade | ||
|
|
27f04a0967 | ||
|
|
487476afe4 | ||
|
|
ab92a2d708 | ||
|
|
8d53c89a6a | ||
|
|
8ab9c8f07b | ||
|
|
701df3c76f | ||
|
|
f160fb561f | ||
|
|
e38c65f181 | ||
|
|
cfa7aca2bf | ||
|
|
b6a59941c8 | ||
|
|
dbd643b2ae | ||
|
|
4dd3e8543f | ||
|
|
8f11fa3b91 | ||
|
|
ca812117e4 | ||
|
|
5d1228eb9e | ||
|
|
4e478f968c | ||
|
|
98ad1145a8 | ||
|
|
939c63fe7d | ||
|
|
cc5b2a42b8 | ||
|
|
ce5cd50d51 | ||
|
|
20b4466474 | ||
|
|
a6f869bbd5 | ||
|
|
066a2a4625 | ||
|
|
49faa1d28e | ||
|
|
2db0656df3 | ||
|
|
08dad87fea | ||
|
|
6dd24fbf78 | ||
|
|
b7ee31446a | ||
|
|
9b4622b498 | ||
|
|
9aadb78ebc | ||
|
|
ae84806df1 | ||
|
|
214bce2d15 | ||
|
|
3c59bdcea3 | ||
|
|
52bf4a22a7 | ||
|
|
0a27176c5c | ||
|
|
89c8a0cb49 | ||
|
|
6fe19c50a2 | ||
|
|
7daf80c0b0 | ||
|
|
1e7aac27b2 | ||
|
|
902841e8df | ||
|
|
4bbc77eff8 | ||
|
|
2fdbf0d5f4 | ||
|
|
586c7d2077 | ||
|
|
b7cf7b4523 | ||
|
|
df098bd075 | ||
|
|
9afa6efbe4 | ||
|
|
a340fc6053 | ||
|
|
c644a9f6e1 | ||
|
|
541e57105d | ||
|
|
21749f258c | ||
|
|
40c326ba08 | ||
|
|
ed5952f13e | ||
|
|
c4b9eba250 | ||
|
|
ec5b194625 | ||
|
|
c6c4592dfb | ||
|
|
7d89a54572 | ||
|
|
e4903c5184 | ||
|
|
8ea5aa1a1f | ||
|
|
976662df83 | ||
|
|
c233e3bee7 | ||
|
|
551e0a5598 | ||
|
|
d7f65ad788 | ||
|
|
68897c94ac | ||
|
|
647251647d | ||
|
|
0d9a4a446f | ||
|
|
3b4860d6ca | ||
|
|
d5b59043de | ||
|
|
ba22978d63 | ||
|
|
4679c08e2b | ||
|
|
8732b1be1f | ||
|
|
ed7b4c0d29 | ||
|
|
fa4c173eb7 | ||
|
|
95209bf84d | ||
|
|
61a6b289f3 | ||
|
|
9927e93356 | ||
|
|
5933cc0b09 | ||
|
|
f5c1908657 | ||
|
|
d6fd2e3775 | ||
|
|
4f1c2a97aa | ||
|
|
2895339f30 | ||
|
|
837283292c | ||
|
|
4a1f51bc30 | ||
|
|
7d7f4965de | ||
|
|
1aaea37f54 | ||
|
|
1090a55765 | ||
|
|
c26ed616e0 | ||
|
|
82e4e7e2cb | ||
|
|
02335734ce | ||
|
|
33c34bd4ef | ||
|
|
da2e86ae72 | ||
|
|
9aa3998924 | ||
|
|
801b290ac6 | ||
|
|
e43cbb667f | ||
|
|
75e9b673bc | ||
|
|
a32ce23fa8 | ||
|
|
7c062e9a80 | ||
|
|
6b07a80834 | ||
|
|
3c421fa94c | ||
|
|
c38d9df5f2 | ||
|
|
365f06a2e8 | ||
|
|
25c9c63788 | ||
|
|
9103492d71 | ||
|
|
c996771afd | ||
|
|
134d4e869e | ||
|
|
c86f12db72 | ||
|
|
37060de4c3 | ||
|
|
a33efcaef3 | ||
|
|
96481aa745 | ||
|
|
11bf43de92 | ||
|
|
189ff59379 | ||
|
|
a8b3a99b97 | ||
|
|
cbc3a4ceef | ||
|
|
bc73e74161 | ||
|
|
1ded926b02 | ||
|
|
04312babb1 | ||
|
|
281f7c8c42 | ||
|
|
978d0b5413 | ||
|
|
0232589a83 | ||
|
|
7862189373 | ||
|
|
88f634802a | ||
|
|
0c500aa0c9 | ||
|
|
688ddca549 | ||
|
|
72907f8931 | ||
|
|
a06c2004f3 | ||
|
|
d524b2b346 | ||
|
|
2a873abf4f | ||
|
|
37e6205502 | ||
|
|
12080b06ea | ||
|
|
105928193b | ||
|
|
d8c3731031 | ||
|
|
c23bf1d807 | ||
|
|
578f3dbe0f | ||
|
|
c19c02d12f | ||
|
|
c903f60f85 | ||
|
|
0f3f85ac58 | ||
|
|
d29b44048d | ||
|
|
937d8320f8 | ||
|
|
f641afcc6b | ||
|
|
a09a6264de | ||
|
|
9ce11b1233 | ||
|
|
597bbd8b78 | ||
|
|
994b8a62ea | ||
|
|
01514d2e6a | ||
|
|
70141f0fbb | ||
|
|
63d953d22e | ||
|
|
1248f6b917 | ||
|
|
7c68b6b406 | ||
|
|
43aa435b81 | ||
|
|
f30764c83b | ||
|
|
20d849f572 | ||
|
|
671627b768 | ||
|
|
3bcaca0cb8 | ||
|
|
1766f09a8e | ||
|
|
4fe20641da | ||
|
|
2995ca4909 | ||
|
|
26dada0de1 | ||
|
|
95ad7784ca | ||
|
|
eff6caab73 | ||
|
|
6f37b81b9d | ||
|
|
5912693c1a | ||
|
|
e6a5d5648f | ||
|
|
5798fccd70 | ||
|
|
3d0217621b | ||
|
|
0b868f04fe | ||
|
|
9b8a6e507b | ||
|
|
3b5941ed73 | ||
|
|
a65084cf21 | ||
|
|
eb47b6ed1d | ||
|
|
c67c1d6573 | ||
|
|
ef15f3f7ce | ||
|
|
f311051fb4 | ||
|
|
2657916fbc | ||
|
|
635c737126 | ||
|
|
d7628546f8 | ||
|
|
4e708f3cc1 | ||
|
|
c2c1bcd6f4 | ||
|
|
f9d2e747e3 | ||
|
|
3e92523ba3 | ||
|
|
7191d8a777 | ||
|
|
256597eb27 | ||
|
|
0186206d39 | ||
|
|
ec402ef69a | ||
|
|
6489b2f63e | ||
|
|
b152ecf02e | ||
|
|
240f3e095b | ||
|
|
2724a14eab | ||
|
|
0bd572f3a4 | ||
|
|
b5ab5699c4 | ||
|
|
cf08c04e55 | ||
|
|
fd99a04e86 | ||
|
|
f6db91b6d3 | ||
|
|
decdb80c2d | ||
|
|
a57fc4e226 | ||
|
|
ea699bc00a | ||
|
|
f14767968f | ||
|
|
4ee1d811b0 | ||
|
|
e146bdb191 | ||
|
|
640547d441 | ||
|
|
d076bbe6c3 | ||
|
|
854201195f | ||
|
|
e480629724 | ||
|
|
5da412ae7c | ||
|
|
9b4cbfab7f | ||
|
|
6ce07208a1 | ||
|
|
98c3956994 | ||
|
|
bed223bd86 | ||
|
|
787e5ddbae | ||
|
|
8bc36eac5d | ||
|
|
ec2fff0df7 | ||
|
|
c14bd6856b | ||
|
|
6b78bcaf41 | ||
|
|
86f806147b | ||
|
|
566a58665e | ||
|
|
db192b0769 | ||
|
|
580d7c1182 | ||
|
|
a074417427 | ||
|
|
c99ab9da9f | ||
|
|
f810a30dac | ||
|
|
070a2d82c5 | ||
|
|
66d0ae8594 | ||
|
|
014f9b5bd5 | ||
|
|
19a68887e4 | ||
|
|
9cead62032 | ||
|
|
953a04429c | ||
|
|
0f459bbe3d | ||
|
|
8b5c90f9a2 | ||
|
|
e45bd76cbc | ||
|
|
4ee19b0f9a | ||
|
|
b1a8c94c5f | ||
|
|
835d6833f8 | ||
|
|
563525d885 | ||
|
|
06bbcc7b6b | ||
|
|
c0afe3ba40 | ||
|
|
c1fcfdb6ce | ||
|
|
8b185976ec | ||
|
|
af491b7905 | ||
|
|
b66618f12d | ||
|
|
d18c27744f | ||
|
|
0ab1427c28 | ||
|
|
cd80286414 | ||
|
|
ac109043ed | ||
|
|
52701c3bf2 | ||
|
|
323fb7c770 | ||
|
|
21ecc244c0 | ||
|
|
416e093967 | ||
|
|
68e0613c02 | ||
|
|
9f1182dd1b | ||
|
|
20c88b2170 | ||
|
|
274d609b71 | ||
|
|
a4c9a0b117 | ||
|
|
5c603e8e61 | ||
|
|
2c7e71adef | ||
|
|
cf4c81caf7 | ||
|
|
f053bd5ede | ||
|
|
5eb0d71cfd | ||
|
|
03946dd476 | ||
|
|
4731a100f6 | ||
|
|
61acd1c5e4 | ||
|
|
ee99d3545c | ||
|
|
8db0ab20e0 | ||
|
|
1fc8434f0a | ||
|
|
9965259f29 | ||
|
|
db723fb01d | ||
|
|
bbf6529510 | ||
|
|
fc5e8706b6 | ||
|
|
19f8bd613e | ||
|
|
d57d33c2c7 | ||
|
|
73437dc949 | ||
|
|
3566fbf37c | ||
|
|
82c334215f | ||
|
|
42601dae58 | ||
|
|
8aa0162ba2 | ||
|
|
b2d78dc819 | ||
|
|
c4379a0dbc | ||
|
|
8bb2707ab9 | ||
|
|
8a6de4fab3 | ||
|
|
384b444c02 | ||
|
|
3aa92a87d4 | ||
|
|
e35aa1199b | ||
|
|
5455ad1f67 | ||
|
|
f2efeb7824 | ||
|
|
407ef134f3 | ||
|
|
8698a9367c | ||
|
|
9a659d3773 | ||
|
|
78b9f3fafd | ||
|
|
0b700eab22 | ||
|
|
b43aa50567 | ||
|
|
b5b6c958e4 | ||
|
|
0b1dffb942 | ||
|
|
a55fc88e3c | ||
|
|
8dbf2ab3d0 | ||
|
|
4422653e40 | ||
|
|
03d339e49f | ||
|
|
8bc00a4dff | ||
|
|
a6669f81fc | ||
|
|
e5b56d253a | ||
|
|
e92ff54e9a | ||
|
|
c4f597338b | ||
|
|
44d926370e | ||
|
|
1092bff7a8 | ||
|
|
4d76e6c6fd | ||
|
|
c1b81594bb | ||
|
|
45c5db3660 | ||
|
|
52f292fb3a | ||
|
|
87821e97d8 | ||
|
|
e674cef02e | ||
|
|
8e489f0570 | ||
|
|
4572cd586e | ||
|
|
1a584492c6 | ||
|
|
54356bc767 | ||
|
|
19039cd189 | ||
|
|
71427c8c04 | ||
|
|
e1c3692045 | ||
|
|
a3a17440dc | ||
|
|
fd7d17ad4a | ||
|
|
4279ae5bc3 | ||
|
|
e6ecbb2a9c | ||
|
|
b84f06a5ce | ||
|
|
9adc6bc6df | ||
|
|
81490428a5 | ||
|
|
eecaaed9d8 | ||
|
|
7089193c34 | ||
|
|
595e78f14f | ||
|
|
a4708820ac | ||
|
|
b48ded1dd6 | ||
|
|
e872bb889e | ||
|
|
19c4c7d1e3 | ||
|
|
5dea266895 | ||
|
|
be012fd38d | ||
|
|
3a2ffcfd5c | ||
|
|
8fdc79d679 | ||
|
|
05327d6026 | ||
|
|
3353e595b4 | ||
|
|
a73295e221 | ||
|
|
cacb12791b | ||
|
|
5794fb1c46 | ||
|
|
ba1e636686 | ||
|
|
2122e32f1b | ||
|
|
cfce96d66b | ||
|
|
e40d179032 | ||
|
|
b1070904f3 | ||
|
|
c914fef758 | ||
|
|
3e41986081 | ||
|
|
09d8d6dfb9 | ||
|
|
182f19f845 | ||
|
|
d9a622c36d | ||
|
|
5cf59a0d35 | ||
|
|
4144180de0 | ||
|
|
10adde83c7 | ||
|
|
540cf4f6c2 | ||
|
|
ed58fa2a25 | ||
|
|
12795eb858 | ||
|
|
f9fcc3c3eb | ||
|
|
8a8ad03c50 | ||
|
|
e12f8591f7 | ||
|
|
aa2d3b6cc1 | ||
|
|
ffd7d00b1b | ||
|
|
aa3a5c702c | ||
|
|
ca430c23ad | ||
|
|
79202c67b2 | ||
|
|
5dc123e186 | ||
|
|
6de0ee0017 | ||
|
|
a145e72954 | ||
|
|
3af4a8b852 | ||
|
|
8158941833 | ||
|
|
559996af24 | ||
|
|
e39f3d46d8 | ||
|
|
1ca341069d | ||
|
|
312605a70f | ||
|
|
6f60118320 | ||
|
|
6cc161427a | ||
|
|
8390219c7e | ||
|
|
5b22dc480c | ||
|
|
834064432d | ||
|
|
4a72a55321 | ||
|
|
7955eb4eea | ||
|
|
15bf718759 | ||
|
|
2799ebb805 | ||
|
|
dddf72b9a6 | ||
|
|
2a4e3c3a5c | ||
|
|
c253e1e9a2 | ||
|
|
b4b98583d4 | ||
|
|
26cc73ab8a | ||
|
|
f5c3bdc212 | ||
|
|
0b64866d95 | ||
|
|
fd73d1a2a0 | ||
|
|
a66221a494 | ||
|
|
1674cf70b3 | ||
|
|
60c8c967c9 | ||
|
|
ebc1d891ab | ||
|
|
e24228b875 | ||
|
|
7f23f82a0d | ||
|
|
36842caef9 | ||
|
|
18c1fa0255 | ||
|
|
bf3f864625 | ||
|
|
8775e8854f | ||
|
|
140aba69c9 | ||
|
|
d469d2b3ff | ||
|
|
2a2bc246da | ||
|
|
f597cc0468 | ||
|
|
ec48c3b936 | ||
|
|
64d040478f | ||
|
|
b2f0702993 | ||
|
|
ca165ed4ce | ||
|
|
a80e903918 | ||
|
|
0de5e6db7b | ||
|
|
4702a584db | ||
|
|
b66358eea8 | ||
|
|
26487721a7 | ||
|
|
4bcf2c6505 | ||
|
|
a4c53f9811 | ||
|
|
21728bd5fa | ||
|
|
16202a9230 | ||
|
|
26b1cca184 | ||
|
|
1c1bb3b2e6 | ||
|
|
de3a144673 | ||
|
|
b556f29a7b | ||
|
|
483819ef68 | ||
|
|
25406153aa | ||
|
|
9045b9daa0 | ||
|
|
394af7a180 | ||
|
|
5a1a22b27c | ||
|
|
eb379296f2 | ||
|
|
7443b7e98d | ||
|
|
99a6e1644a | ||
|
|
b5b94217bc | ||
|
|
8ee6a4a517 | ||
|
|
ec0f985109 | ||
|
|
1eb5a2aedd | ||
|
|
8afd04aea8 | ||
|
|
c54c1daebd | ||
|
|
d95367e0b4 | ||
|
|
ce0a0f11ea | ||
|
|
76db4a6a73 | ||
|
|
df88452e4a | ||
|
|
a266d7dfd2 | ||
|
|
f5246c410e | ||
|
|
26222069eb | ||
|
|
9a243ff2c8 | ||
|
|
09a505118d | ||
|
|
478b2424d7 | ||
|
|
23fe9e407b | ||
|
|
e94dac347c | ||
|
|
442bfd42bc | ||
|
|
b7a451c3ec | ||
|
|
da9551e8ae | ||
|
|
33fc6d0793 | ||
|
|
f718ddb13b | ||
|
|
ad6ff0a775 | ||
|
|
c2d9e21d37 | ||
|
|
18b01ec718 | ||
|
|
9076de3b84 | ||
|
|
62827edc33 | ||
|
|
fcb71616b8 | ||
|
|
5dbf879f2d | ||
|
|
1a4b8edfcd | ||
|
|
abb059dffd | ||
|
|
b5c8eafad0 | ||
|
|
3e289262f8 | ||
|
|
70fb46d428 | ||
|
|
ecdc65ceb3 | ||
|
|
786aa1d19b | ||
|
|
1e4fda7e47 | ||
|
|
3cd574752c | ||
|
|
36e3013f18 | ||
|
|
308832f986 | ||
|
|
dc5a07adb3 | ||
|
|
9c6b9a7638 | ||
|
|
c5bf5862ba | ||
|
|
9911914e70 | ||
|
|
058d82c812 | ||
|
|
0442ec3264 | ||
|
|
c2df0c3871 | ||
|
|
ef378deca5 | ||
|
|
7152d9b8cb | ||
|
|
e0b9f8c823 | ||
|
|
ba6b5f7067 | ||
|
|
5ef4db247c | ||
|
|
8248e8c299 | ||
|
|
d8de9ba90e | ||
|
|
266ed0b4cd | ||
|
|
390f33953a | ||
|
|
44b636365b | ||
|
|
4760a0bdda | ||
|
|
a71f5269ae | ||
|
|
5e690126ce | ||
|
|
4c615b8876 | ||
|
|
3478a56d77 | ||
|
|
efb9acb26b | ||
|
|
e439942c11 | ||
|
|
b25a326625 | ||
|
|
711816bd26 | ||
|
|
365d8e9fef | ||
|
|
7fa8b6011d | ||
|
|
73dddc13bd | ||
|
|
cc909352b4 | ||
|
|
c9ee9b2e6a | ||
|
|
a172a694e1 | ||
|
|
ccab05f955 | ||
|
|
be9fde7cac | ||
|
|
f2ae1f1254 | ||
|
|
30bc03fa39 | ||
|
|
3de55653fa | ||
|
|
63aa4a07a7 | ||
|
|
c36d931ee3 | ||
|
|
707512a586 | ||
|
|
1a3fea916b | ||
|
|
dfb952e421 | ||
|
|
ffeb626ef8 | ||
|
|
32bd2453eb | ||
|
|
db4dc5de45 | ||
|
|
18805b3499 | ||
|
|
416817b1c0 | ||
|
|
a0601faafb | ||
|
|
78fc3869f2 | ||
|
|
cbb03efccf | ||
|
|
dc533b11bf | ||
|
|
2129735439 | ||
|
|
604920c422 | ||
|
|
d828f9d2a0 | ||
|
|
d1f95ece75 | ||
|
|
2f6dfa84dc | ||
|
|
cccc32806c | ||
|
|
6c1be11f35 | ||
|
|
0538a6828f | ||
|
|
1442515e5c | ||
|
|
6043dfbb74 | ||
|
|
83184952f6 | ||
|
|
83f9406fa0 | ||
|
|
10be8339d4 | ||
|
|
4c32ce01ad | ||
|
|
a0ae387a6c | ||
|
|
3360a3fce6 | ||
|
|
a27ad24823 | ||
|
|
11a3079d24 | ||
|
|
69faec54fc | ||
|
|
13057e7d48 | ||
|
|
cd90bc67f2 | ||
|
|
3cff5e1012 | ||
|
|
e72eff8d3e | ||
|
|
428eee4f97 | ||
|
|
573d622a44 | ||
|
|
3a2ffca6b7 | ||
|
|
dc87f8d259 | ||
|
|
f307e40214 | ||
|
|
ffd39632cf | ||
|
|
61f52a36a2 | ||
|
|
4d4fb69d2e | ||
|
|
ebe40697a5 | ||
|
|
7c39b3facd | ||
|
|
2722986675 | ||
|
|
9f75e099ee | ||
|
|
8a45ce9146 | ||
|
|
1799e34fd0 | ||
|
|
2e2e53c04f | ||
|
|
d89a3e1c54 | ||
|
|
8defa0ff42 | ||
|
|
55abf7f26b | ||
|
|
32c834d13f | ||
|
|
bda4a99761 | ||
|
|
b95dfb518f | ||
|
|
6a20389a7d | ||
|
|
d0316b7e7d | ||
|
|
df12bf0cf3 | ||
|
|
6b8378411a | ||
|
|
b90d5e6406 | ||
|
|
1eb9ab0665 | ||
|
|
aa9710f617 | ||
|
|
c169f55204 | ||
|
|
0904675dab | ||
|
|
28ff78c264 | ||
|
|
0598362931 | ||
|
|
36fee4ebc4 | ||
|
|
2ecbb68fd6 | ||
|
|
1cd4e64c7e | ||
|
|
b48a0606b7 | ||
|
|
06040c8da9 | ||
|
|
440f71d5a0 | ||
|
|
570dd04e29 | ||
|
|
77771bea55 | ||
|
|
0adfe17f70 | ||
|
|
4447e49abb | ||
|
|
08fc413044 | ||
|
|
3ae6f3f881 | ||
|
|
dd4c797d26 | ||
|
|
edb967c633 | ||
|
|
4b6d7605c5 | ||
|
|
21e4cf86c8 | ||
|
|
2bf9761d70 | ||
|
|
5bcf2df687 | ||
|
|
42475809fc | ||
|
|
2cb210c975 | ||
|
|
b3a6b33641 | ||
|
|
da10cd91df | ||
|
|
496cd8f9fd | ||
|
|
2e9dfccb81 | ||
|
|
97e3cb1a72 | ||
|
|
f3978cc41c | ||
|
|
28b4f20ef3 | ||
|
|
53a5d19e3b | ||
|
|
273f90ee03 | ||
|
|
0a75d8876e | ||
|
|
807d60b1c3 | ||
|
|
3613b6ee30 | ||
|
|
f116d3a93b | ||
|
|
323f990a92 | ||
|
|
14c17dfd04 | ||
|
|
40e431d0bf | ||
|
|
eeafd52340 | ||
|
|
b9cf8f974d | ||
|
|
be6b81af9c | ||
|
|
ac6106c150 | ||
|
|
f8a2690b30 | ||
|
|
a694cbd240 | ||
|
|
748900e649 | ||
|
|
f418717984 | ||
|
|
7debaa6776 | ||
|
|
5bc868662a | ||
|
|
2b064a3bee | ||
|
|
9dbf7f1d0b | ||
|
|
daf977d8ac | ||
|
|
7b32dc927d | ||
|
|
744fd19db9 | ||
|
|
fd1e0d7296 | ||
|
|
5eff81061b | ||
|
|
f4a8a117c7 | ||
|
|
58d36c8fdb | ||
|
|
100ea1c452 | ||
|
|
29bb45dcac | ||
|
|
f0d6cbf72f | ||
|
|
db43fd07d4 | ||
|
|
cdee81dc8c | ||
|
|
9e92a403c0 | ||
|
|
3047114013 | ||
|
|
007bab5ebf | ||
|
|
d58f0847d5 | ||
|
|
31ca16a4f4 | ||
|
|
64a1d877bc | ||
|
|
16ad64db88 | ||
|
|
b7e0ee3300 | ||
|
|
48550d2e78 | ||
|
|
d8a631ab84 | ||
|
|
6a8ee1a114 | ||
|
|
5a5e3a3cc9 | ||
|
|
c3381911b4 | ||
|
|
7be5dc8c82 | ||
|
|
3ffbc7554a | ||
|
|
6490c8835c | ||
|
|
c49cc1b46b | ||
|
|
649a57e842 | ||
|
|
7f43440cae | ||
|
|
a77db72355 | ||
|
|
188de71515 | ||
|
|
7efff23ca4 | ||
|
|
f5250bb0e9 | ||
|
|
d99771b2cd | ||
|
|
37d9518bc8 | ||
|
|
0955e03cd3 | ||
|
|
a9c844acb4 | ||
|
|
58f60bb49f | ||
|
|
65c6abee24 | ||
|
|
180251ec59 | ||
|
|
87cc8cf7b0 | ||
|
|
0984f0cb36 | ||
|
|
3d75acf752 | ||
|
|
c144f41c1d | ||
|
|
0140cba0dc | ||
|
|
79ef26e2f4 | ||
|
|
55a6828039 | ||
|
|
fef625aee5 | ||
|
|
a8a075c203 | ||
|
|
e07cdd60f3 | ||
|
|
a3707d047f | ||
|
|
578a290cc2 | ||
|
|
a5dbc1adea | ||
|
|
aaef672ac2 | ||
|
|
e54449fd8e | ||
|
|
08b96b7ada | ||
|
|
dc0340583e | ||
|
|
c27b8909dc | ||
|
|
9a10b59ba5 | ||
|
|
8881994767 | ||
|
|
a8edd11368 | ||
|
|
52a6eb3d98 | ||
|
|
5f407fd4a0 | ||
|
|
8f4b943a8d | ||
|
|
b83ba7692a | ||
|
|
afcd6408bb | ||
|
|
6d117c039f | ||
|
|
ae6d8258af | ||
|
|
dc3259c169 | ||
|
|
c37c17d29f | ||
|
|
3386c66278 | ||
|
|
c31115051c | ||
|
|
544f4b3fec | ||
|
|
6ec82dde5d | ||
|
|
fc7a118d70 | ||
|
|
3ee8433575 | ||
|
|
05aa1a3904 | ||
|
|
1f09bfe0de | ||
|
|
386461c974 | ||
|
|
a286cd5ec2 | ||
|
|
e9eb6460d3 | ||
|
|
e7cbf1e1e2 | ||
|
|
3c690816e1 | ||
|
|
ad943811f9 | ||
|
|
4a211ffc10 | ||
|
|
ba9bba9d3c | ||
|
|
cc6f7c417e | ||
|
|
ada307c624 | ||
|
|
751305828e | ||
|
|
0d3f5f0acc | ||
|
|
678b3d24b8 | ||
|
|
a2838a69a4 | ||
|
|
bfe437e405 | ||
|
|
dd279e3a13 | ||
|
|
fd008fcda1 | ||
|
|
0e069de389 | ||
|
|
923320da5f | ||
|
|
9860ed0871 | ||
|
|
c4dfa728d3 | ||
|
|
d96478b209 | ||
|
|
de2998a42f | ||
|
|
04c0743617 | ||
|
|
36ed040618 | ||
|
|
9ba3fdb911 | ||
|
|
55968f9328 | ||
|
|
d769742768 | ||
|
|
c4dc68bee5 | ||
|
|
1976c0d9ae | ||
|
|
8b5a62ae97 | ||
|
|
48666a6741 | ||
|
|
bee33f2df6 | ||
|
|
23ff97ba95 | ||
|
|
f1f0d59e74 | ||
|
|
30deb19cda | ||
|
|
6420bc4533 | ||
|
|
c6524fc7ac | ||
|
|
a7f3773e0b | ||
|
|
51ac65d542 | ||
|
|
6226e942d8 | ||
|
|
f6ea1eda45 | ||
|
|
69509349bd | ||
|
|
cf5bc84872 | ||
|
|
5bfde6ceae | ||
|
|
3c4d38f755 | ||
|
|
a0b920a9d6 | ||
|
|
f1910f7c8e | ||
|
|
920f648d65 | ||
|
|
39e0336268 | ||
|
|
8ee8331fdf | ||
|
|
9e03dd35a4 | ||
|
|
6ae7adfb33 | ||
|
|
bb68008f70 | ||
|
|
6c167f121b | ||
|
|
9bd129f70b | ||
|
|
bfb54767fa | ||
|
|
ac73afcc73 | ||
|
|
109565baaf | ||
|
|
e05594ac04 | ||
|
|
29dd78c247 | ||
|
|
ce4704f7c0 | ||
|
|
2b2014f7b1 | ||
|
|
877a0b8441 | ||
|
|
971eb1c203 | ||
|
|
d64f667156 | ||
|
|
2881795f80 | ||
|
|
400021fc81 | ||
|
|
8b2a2eb731 | ||
|
|
9db6a4a6b4 | ||
|
|
792f94d9e8 | ||
|
|
cccf44655a | ||
|
|
872145590a | ||
|
|
b2a377233d | ||
|
|
729dc977c8 | ||
|
|
2b684caaeb | ||
|
|
bd3e2ba606 | ||
|
|
1f6035dbbb | ||
|
|
e45a7e58d7 | ||
|
|
16946d1e0f | ||
|
|
eeedb6025a | ||
|
|
e94a105bf5 | ||
|
|
9b4b01f697 | ||
|
|
4bdb06f108 | ||
|
|
1b62570466 | ||
|
|
630593492a | ||
|
|
3f9c32e9fc | ||
|
|
771640a79c | ||
|
|
a86ec65024 | ||
|
|
1927904822 | ||
|
|
ccab97a56f | ||
|
|
fdb93d8f98 | ||
|
|
7e874b035d | ||
|
|
9e577fc5b1 | ||
|
|
87a04e4e1f | ||
|
|
0541f6bff0 | ||
|
|
fdd41a4382 | ||
|
|
f605e91bf2 | ||
|
|
3f74311485 | ||
|
|
bbf3b18fe3 | ||
|
|
2178d22fec | ||
|
|
3296458097 | ||
|
|
d4aceb0a38 | ||
|
|
bfb8f989ef | ||
|
|
55f6956c2b | ||
|
|
50c2d9c1c5 | ||
|
|
f4eabde86e | ||
|
|
c86b20f1b1 | ||
|
|
b29d5e4da6 | ||
|
|
5877205ed4 | ||
|
|
3701a0a742 | ||
|
|
7dd9895dda | ||
|
|
a8589e48ab | ||
|
|
c6b7b58f2d | ||
|
|
49d5dcb2cc | ||
|
|
13f4119eb0 | ||
|
|
5c05276d46 | ||
|
|
204645efa2 | ||
|
|
649ca0c6bc | ||
|
|
f46c6f6372 | ||
|
|
1f3cdd03be | ||
|
|
3f79f55a9e | ||
|
|
00069931c1 | ||
|
|
1c31b8f80d | ||
|
|
7cdf5976a8 | ||
|
|
123406b2b2 | ||
|
|
6ef53e48c5 | ||
|
|
50d0612f82 | ||
|
|
ddb60e5a73 | ||
|
|
51ca4bc936 | ||
|
|
ee10435b81 | ||
|
|
91eb257f3d | ||
|
|
5ed0c27f1f | ||
|
|
0ad0d17528 | ||
|
|
5464bc2297 | ||
|
|
1e6ab4672f | ||
|
|
41223fa8b2 | ||
|
|
002823b6e1 | ||
|
|
bddabc4742 | ||
|
|
fa5e6735ed | ||
|
|
6f75496550 | ||
|
|
1dad3ee3ad | ||
|
|
9ab7726736 | ||
|
|
e7281d924f | ||
|
|
9b3f197506 | ||
|
|
401263fea3 | ||
|
|
6aa5893d57 | ||
|
|
bae65c35ee | ||
|
|
92ba157b67 | ||
|
|
6795430e29 | ||
|
|
44c50aa4de | ||
|
|
ff36ff203e | ||
|
|
905bcf555f | ||
|
|
1d98f5ed04 | ||
|
|
23ad910606 | ||
|
|
cee24e56d2 | ||
|
|
7baf4bc07e | ||
|
|
ec6d13dc34 | ||
|
|
9cb5582565 | ||
|
|
967afb2d9a | ||
|
|
a6385cd20e | ||
|
|
31fdcd2f3c | ||
|
|
015baee6d7 | ||
|
|
2d44539484 | ||
|
|
1901af17c3 | ||
|
|
2e6d6593ec | ||
|
|
91557ebbaf | ||
|
|
6c5a485b48 | ||
|
|
170ed92bd4 | ||
|
|
04284584fe | ||
|
|
669fc608ed | ||
|
|
b377123e48 | ||
|
|
de6a66e08e | ||
|
|
3dfdab787a | ||
|
|
526ec18a3b | ||
|
|
a9a6f477bc | ||
|
|
2211124ecb | ||
|
|
9c78f4f631 | ||
|
|
081797b253 | ||
|
|
d528a3002e | ||
|
|
d932a937ca | ||
|
|
7098eab258 | ||
|
|
5ba0873c32 | ||
|
|
cf5114264b | ||
|
|
1ea68f3e9a | ||
|
|
7990bf7e54 | ||
|
|
ea09cc93ba | ||
|
|
159cc50dc1 | ||
|
|
4767a44af8 | ||
|
|
71aa087b3e | ||
|
|
605b67ca76 | ||
|
|
4cc60e4d52 | ||
|
|
1353ca2e97 | ||
|
|
c2831853a0 | ||
|
|
b56ff5034a | ||
|
|
73d0656f64 | ||
|
|
a77b3cce27 | ||
|
|
a6dac4bd84 | ||
|
|
e8bd1e2648 | ||
|
|
2b8e323a7e | ||
|
|
54fe569ad1 | ||
|
|
a06a1e40f4 | ||
|
|
482eeec3e7 | ||
|
|
e162d84d56 | ||
|
|
0c85248987 | ||
|
|
e106aaebed | ||
|
|
1257408183 | ||
|
|
fc53759b3e | ||
|
|
2e9d1cca9a | ||
|
|
f3869da194 | ||
|
|
359b2c4ae3 | ||
|
|
424a8ebde8 | ||
|
|
1122089094 | ||
|
|
6820c31626 | ||
|
|
4f3875bf51 | ||
|
|
c457251081 | ||
|
|
68ab7ce33c | ||
|
|
dd2ff1ec83 | ||
|
|
f13581d356 | ||
|
|
2dbf11428f | ||
|
|
5307765399 | ||
|
|
ffaa28c7e0 | ||
|
|
4d7b439443 | ||
|
|
e62a3bedc9 | ||
|
|
7782668944 | ||
|
|
9feb353150 | ||
|
|
beb28691e3 | ||
|
|
01eff33b67 | ||
|
|
584651afba | ||
|
|
9baf507453 | ||
|
|
cb1e5c10cb | ||
|
|
146a44844a | ||
|
|
164f2620cf | ||
|
|
8f56e1ab8b | ||
|
|
02e207347b | ||
|
|
2175338470 | ||
|
|
a7de2184a7 | ||
|
|
c10b614b08 | ||
|
|
5322fc4ede | ||
|
|
9b14e8b3e2 | ||
|
|
7ce7a6d035 | ||
|
|
cdce3e2d31 | ||
|
|
e7845c3918 | ||
|
|
52869255a1 | ||
|
|
f25afca784 | ||
|
|
0301b53d52 | ||
|
|
87b4626fec | ||
|
|
f0882df330 | ||
|
|
7f74d7ee45 | ||
|
|
fac83d9aaf | ||
|
|
fb08c9192f | ||
|
|
ac396c3a72 | ||
|
|
19cbb62295 | ||
|
|
78c9cd3d4f | ||
|
|
f84d83e270 | ||
|
|
5edb85975f | ||
|
|
1048ccace6 | ||
|
|
51c0df3ec9 | ||
|
|
ebc7b3a808 | ||
|
|
eb8a34a82d | ||
|
|
e4393fe4b1 | ||
|
|
6c35dd413d | ||
|
|
28cc3fe99a | ||
|
|
6840c514dc | ||
|
|
a93664ac84 | ||
|
|
adc1955b5e | ||
|
|
8c40029956 | ||
|
|
2f069dbf91 | ||
|
|
7e6e8d38f4 | ||
|
|
5f917371bf | ||
|
|
aae0be292d | ||
|
|
44c52df819 | ||
|
|
a8e50f2e51 | ||
|
|
e8eb2af378 | ||
|
|
8dbbb0b066 | ||
|
|
130c33b539 | ||
|
|
2735f73805 | ||
|
|
65183a3282 | ||
|
|
2a747c1cf8 | ||
|
|
37b3ac74d5 | ||
|
|
9ee24e5cf4 | ||
|
|
d4bdf4300e | ||
|
|
9586383e5f | ||
|
|
613773fc92 | ||
|
|
9fd6b2a77b | ||
|
|
1855812a9a | ||
|
|
dc16f47790 | ||
|
|
e3b334ffc3 | ||
|
|
d7add40c8b | ||
|
|
d219499194 | ||
|
|
4b1aa57ddf | ||
|
|
bf510f4ff3 | ||
|
|
1a7208f6db | ||
|
|
1196285045 | ||
|
|
05984cee5d | ||
|
|
657d9549e2 | ||
|
|
ea0fb92625 | ||
|
|
3d2426dbb1 | ||
|
|
05a7100cbe | ||
|
|
67ca1be5e8 | ||
|
|
ffe7c84093 | ||
|
|
2aa9ae92bb | ||
|
|
bf461342e7 | ||
|
|
3e9f711946 | ||
|
|
47dabe6f12 | ||
|
|
8279304830 | ||
|
|
d22333f7d1 | ||
|
|
5953604b6b | ||
|
|
756c4195fc | ||
|
|
17fec053c5 | ||
|
|
05dcf6161d | ||
|
|
7fe52112f9 | ||
|
|
0a747a72a8 | ||
|
|
dc9d0d5856 | ||
|
|
b462072368 | ||
|
|
3ed04d3b4d | ||
|
|
409ec74a75 | ||
|
|
cebd94a933 | ||
|
|
d3dc7809c5 | ||
|
|
7e9ab7679a | ||
|
|
ae92d3aafb | ||
|
|
8cb487014c | ||
|
|
162e3aa1ab | ||
|
|
08f36d6edf | ||
|
|
ca3641c85b | ||
|
|
1d7f949b9e | ||
|
|
d338bf219c | ||
|
|
37c2f9391c | ||
|
|
360ff00903 | ||
|
|
b5ba546481 | ||
|
|
42d1baa6bf | ||
|
|
dd01c8d79d | ||
|
|
55810d5b6c | ||
|
|
9494379f93 | ||
|
|
51437ca803 | ||
|
|
0d9edb277f | ||
|
|
903382fda5 | ||
|
|
af89118eda | ||
|
|
2cdd55386b | ||
|
|
ab13399a2a | ||
|
|
faedb829b9 | ||
|
|
b62271c112 | ||
|
|
1ae4d28eb0 | ||
|
|
f837893abc | ||
|
|
e01ff66ff1 | ||
|
|
6bd4fc769f | ||
|
|
325bf6b587 | ||
|
|
248c0a3dcf | ||
|
|
73069ec44e | ||
|
|
32a2e86363 | ||
|
|
2f640b7a08 | ||
|
|
5613a7b2b5 | ||
|
|
0d857282fe | ||
|
|
09c202d67c | ||
|
|
c80ff7d27f | ||
|
|
762fae59fb | ||
|
|
6fa59bd7a1 | ||
|
|
3e7315c448 | ||
|
|
362a4d60b9 | ||
|
|
9b3e113772 | ||
|
|
e2f2e8b359 | ||
|
|
77f3dab55c | ||
|
|
07fb731b21 | ||
|
|
2512c6448c | ||
|
|
01fee4992b | ||
|
|
e390914c7e | ||
|
|
dc5b8c2522 | ||
|
|
5f1733d002 | ||
|
|
53eb74670d | ||
|
|
69f77ce48b | ||
|
|
1afcfebc7f | ||
|
|
cb8ddaec47 | ||
|
|
36d0880a03 | ||
|
|
9409c41125 | ||
|
|
c3feca676a | ||
|
|
dc32b264de | ||
|
|
e9d8c041a4 | ||
|
|
55ab843e48 | ||
|
|
7f321f94ac | ||
|
|
8d34615c6f | ||
|
|
ec3890e0e6 | ||
|
|
cf2f763d1b | ||
|
|
490e5b352e | ||
|
|
38cdd876b9 | ||
|
|
6f8968d6bc | ||
|
|
a0ae6b4fd5 | ||
|
|
76aaece8ed | ||
|
|
8ee01e1919 | ||
|
|
595209c470 | ||
|
|
aaea8fef24 | ||
|
|
8a18a41459 | ||
|
|
91ecd2d3da | ||
|
|
5e3f7801b5 | ||
|
|
9a4eb3717f | ||
|
|
340b879e23 | ||
|
|
a28548cec5 | ||
|
|
a81871adbe | ||
|
|
f3a9ae75f9 | ||
|
|
241c787e10 | ||
|
|
04c3763e69 | ||
|
|
1d7d4100a5 | ||
|
|
4f3ebf0fd1 | ||
|
|
a59aa68f42 | ||
|
|
0c4fabae75 | ||
|
|
ac24aa6100 | ||
|
|
4c78f73517 | ||
|
|
83a8eb8dd2 | ||
|
|
1eb440b060 | ||
|
|
b9e53a00f8 | ||
|
|
9e60f24c54 | ||
|
|
9cee98310d | ||
|
|
be9ce4e4ff | ||
|
|
333908b6a1 | ||
|
|
9997935a2e | ||
|
|
e05cf9993a | ||
|
|
b6d463f814 | ||
|
|
54f0e1990b | ||
|
|
cb9597679d | ||
|
|
fe7c275d1a | ||
|
|
9c9339b874 | ||
|
|
24fd14dcc0 | ||
|
|
b680ea5ffa | ||
|
|
76266ce1b8 | ||
|
|
81fec121d0 | ||
|
|
a5fcafe2a5 | ||
|
|
3389dbe048 | ||
|
|
ef8b6cfda5 | ||
|
|
0ead2f45cf | ||
|
|
d79ed9f1be | ||
|
|
cf5bf8e147 | ||
|
|
eb13da03be | ||
|
|
1c93f6a562 | ||
|
|
fbdfb009a1 | ||
|
|
c1602eec06 | ||
|
|
ccff95f757 | ||
|
|
d59d2c79a1 | ||
|
|
3a2bf53047 | ||
|
|
49aca90c2e | ||
|
|
3f6d13af30 | ||
|
|
b1872289cb | ||
|
|
00bf4a2ab1 | ||
|
|
99f994c866 | ||
|
|
6c9429a415 | ||
|
|
bedf542d9b | ||
|
|
9bfc09a265 | ||
|
|
aed6bdaf84 | ||
|
|
e6f8396661 | ||
|
|
d5dca5a8b4 | ||
|
|
499cbb0cc5 | ||
|
|
eeece34312 | ||
|
|
cf47e0c880 | ||
|
|
6d7351502e | ||
|
|
d61471d3a3 | ||
|
|
564c67fdb7 | ||
|
|
143528fef9 | ||
|
|
4737f9d558 | ||
|
|
e9d86c058d | ||
|
|
a795fe5ed6 | ||
|
|
17082c916a | ||
|
|
43afd9acb3 | ||
|
|
0fa0680bd7 | ||
|
|
08950a5fbd | ||
|
|
028e0b06ff | ||
|
|
3947640771 | ||
|
|
0447358f5e | ||
|
|
8a13f62911 | ||
|
|
1fd33bc8ed | ||
|
|
1251b8d705 | ||
|
|
2eef3061ce | ||
|
|
a364e689c6 | ||
|
|
b2c2244aa3 | ||
|
|
6eb2e3ff33 | ||
|
|
22931d2bf0 | ||
|
|
10f3b5f6a3 | ||
|
|
98a176f740 | ||
|
|
60b6c219d9 | ||
|
|
4109f1c8e4 | ||
|
|
2e28ad2ee4 | ||
|
|
8108212aa2 | ||
|
|
b43ec9aa81 | ||
|
|
88a2c1b8d2 | ||
|
|
391c01ae35 | ||
|
|
dd6d680e84 | ||
|
|
3de0c08301 | ||
|
|
67c7b3756a | ||
|
|
685f4f4ea3 | ||
|
|
fbb07c0e93 | ||
|
|
61f81df404 | ||
|
|
775f8741a0 | ||
|
|
6a5e3e47bb | ||
|
|
75669466cf | ||
|
|
820ef17871 | ||
|
|
1bb0d725fa | ||
|
|
ffa0bef577 | ||
|
|
05d35d7eb0 | ||
|
|
8c904cf4a8 | ||
|
|
cf614feeb9 | ||
|
|
769b1c0893 | ||
|
|
a24dbed52b | ||
|
|
d4ff811e1d | ||
|
|
eb923a6f6f | ||
|
|
8fd2a597bb | ||
|
|
94b779c586 | ||
|
|
4e0f7e61a2 | ||
|
|
1fdc26f136 | ||
|
|
f85ee6b4bf | ||
|
|
3cafcaf431 | ||
|
|
55307fe8da | ||
|
|
8164594b92 | ||
|
|
0ac8b0c3e4 | ||
|
|
a3e54537d8 | ||
|
|
f69e6ae089 | ||
|
|
d5ae32b132 | ||
|
|
ab6264bd5e | ||
|
|
966267ebb9 | ||
|
|
5b58af4d6f | ||
|
|
eb419822cd | ||
|
|
832235aa55 | ||
|
|
12086af9be | ||
|
|
779a9f1d15 | ||
|
|
52e117df3c | ||
|
|
552bb93212 | ||
|
|
3b16242cfa | ||
|
|
8972357dbc | ||
|
|
e855976f05 | ||
|
|
44b0ab19bf | ||
|
|
ff6e284e64 | ||
|
|
cae9ad9a21 | ||
|
|
75d9b858d7 | ||
|
|
5ef5e00da9 | ||
|
|
831b4fa16c | ||
|
|
1470ebe6fa | ||
|
|
a84b6bd31a | ||
|
|
b7419ecb3a | ||
|
|
b8b9bbe53a | ||
|
|
d1823afd04 | ||
|
|
6cd4a0a988 | ||
|
|
d732b4f518 | ||
|
|
5e9c110ef6 | ||
|
|
2f64902983 | ||
|
|
635cfc7d9e | ||
|
|
301e58148e | ||
|
|
5b2eb6892f | ||
|
|
9d45d2060c | ||
|
|
2104009984 | ||
|
|
bef7be3030 | ||
|
|
965e6fda8d | ||
|
|
e03cc67195 | ||
|
|
37738e38e9 | ||
|
|
db505ec78e | ||
|
|
f084671d30 | ||
|
|
cda5b70e7c | ||
|
|
03e05af39a | ||
|
|
fb2a9986d8 | ||
|
|
6c385327ff | ||
|
|
f5a6fe35a9 | ||
|
|
3048fc7923 | ||
|
|
dd52a85cf6 | ||
|
|
272ea08adf | ||
|
|
f23d009d0c | ||
|
|
f6fab6415e | ||
|
|
3d8f16b9c6 | ||
|
|
51e15d01c2 | ||
|
|
01f92b6f19 | ||
|
|
9f4cc35a75 | ||
|
|
cb6a6ed1d6 | ||
|
|
f0ffbe5b4a | ||
|
|
c42bb2b7ef | ||
|
|
029908e20c | ||
|
|
97678bba80 | ||
|
|
3271f2d46f | ||
|
|
f3b4168a2b | ||
|
|
e418390348 | ||
|
|
9f3c0c3799 | ||
|
|
af07e4cba4 | ||
|
|
1872dfb465 | ||
|
|
151463447e | ||
|
|
31a213385d | ||
|
|
79947cccf0 | ||
|
|
1307966531 | ||
|
|
bf0da305c7 | ||
|
|
b7d4c7abe6 | ||
|
|
94d5eb9451 | ||
|
|
090bb3866a | ||
|
|
67bc2b0e08 | ||
|
|
976130bcd9 | ||
|
|
fa40676136 | ||
|
|
13dcbc0c62 | ||
|
|
5dc05e87f8 | ||
|
|
7f1461371d | ||
|
|
3c1681fd2b | ||
|
|
b261c2695c | ||
|
|
8abe4b1ac9 | ||
|
|
10f8c2b335 | ||
|
|
f6214191af | ||
|
|
da952424ef | ||
|
|
b8abf790f2 | ||
|
|
1aa568c718 | ||
|
|
920c33d37e | ||
|
|
7b5e59852e | ||
|
|
b4ef91838e | ||
|
|
c124e63d6d | ||
|
|
096064cfbc | ||
|
|
97e2d9128c | ||
|
|
372bf2a4af | ||
|
|
af1e09067b | ||
|
|
a02ce60f7e | ||
|
|
8e211acc13 | ||
|
|
cae86d9302 | ||
|
|
7ee3d585e8 | ||
|
|
d42e04b808 | ||
|
|
1a3ec60911 | ||
|
|
f08a94ae0f | ||
|
|
34da341edc | ||
|
|
c0c1febf72 | ||
|
|
64615cf3b5 | ||
|
|
b126f06170 | ||
|
|
62dd6b96b5 | ||
|
|
7d1afc869c | ||
|
|
943f71f5a6 | ||
|
|
96cffd60fa | ||
|
|
97373f2a02 | ||
|
|
7edf264220 | ||
|
|
7b4818ed15 | ||
|
|
e58ad66da9 | ||
|
|
a88ad42501 | ||
|
|
b34dd28d6a | ||
|
|
f5075fba40 | ||
|
|
35a40614e5 | ||
|
|
74449c81ad | ||
|
|
f8a4f59e13 | ||
|
|
9bfdc16481 | ||
|
|
259dc208b2 | ||
|
|
818fffa420 | ||
|
|
b65ac65108 | ||
|
|
881509719f | ||
|
|
cc726d7f84 | ||
|
|
8ef581352e | ||
|
|
958c113c2f | ||
|
|
0fd333d73b | ||
|
|
f6d44f2464 | ||
|
|
5dfd310ea3 | ||
|
|
4a44f4857c | ||
|
|
ad5b3c0a0e | ||
|
|
bc3a15aba3 | ||
|
|
149c0611f8 | ||
|
|
e97d48b363 | ||
|
|
a073113f38 | ||
|
|
ff20346c23 | ||
|
|
da660d02cd | ||
|
|
f5bbfeb8b5 | ||
|
|
853964ac3a | ||
|
|
4d668e9c1a | ||
|
|
f71c06a9a9 | ||
|
|
56ae6a5d90 | ||
|
|
05e9dca03c | ||
|
|
08eeb3c19f | ||
|
|
57cb22d7d2 | ||
|
|
8cc5f631ca | ||
|
|
74931a8096 | ||
|
|
816437ac63 | ||
|
|
41ae2b89b5 | ||
|
|
b106716ce0 | ||
|
|
4e262c7c00 | ||
|
|
f590546554 | ||
|
|
bcae85c8b9 | ||
|
|
5b8ac7ba70 | ||
|
|
eb445ca45d | ||
|
|
f29c5296cb | ||
|
|
ce6cb3057a | ||
|
|
e1b7e4fbcd | ||
|
|
7d6d6fa6f9 | ||
|
|
a089334371 | ||
|
|
a60e4142b8 | ||
|
|
8f43d23089 | ||
|
|
1968aca5c4 | ||
|
|
1c116f08f7 | ||
|
|
925c8b52d7 | ||
|
|
7fc7cf75d7 | ||
|
|
2bd55ded82 | ||
|
|
e56b0cfbab | ||
|
|
fb8b7843d0 | ||
|
|
7b3880d198 | ||
|
|
31c74a1c30 | ||
|
|
ebe1255921 | ||
|
|
c16e4c953c | ||
|
|
31c17bb583 | ||
|
|
cbebefc6c9 | ||
|
|
5e1e3cdf64 | ||
|
|
2f767573d3 | ||
|
|
bf9e004002 | ||
|
|
df3e2875d7 | ||
|
|
5c4e8f7962 | ||
|
|
5d437c58e3 | ||
|
|
cfe0c07543 | ||
|
|
d3d885e180 | ||
|
|
e97a2ea251 | ||
|
|
aee005787c | ||
|
|
661828502e | ||
|
|
3c84447778 | ||
|
|
44f3a278f1 | ||
|
|
973536dc55 | ||
|
|
20e0bb4100 | ||
|
|
3840c69bfa | ||
|
|
3b7a84d0d7 | ||
|
|
aaa60e63a4 | ||
|
|
f6e02e7219 | ||
|
|
300d4603ca | ||
|
|
313e2c77fd | ||
|
|
e8f0b361e3 | ||
|
|
a2f91fb741 | ||
|
|
3808f3f8c9 | ||
|
|
35bd5ac719 | ||
|
|
67f13df5b8 | ||
|
|
22d329c1fb | ||
|
|
57b8df0106 | ||
|
|
6ce9f4c7a9 | ||
|
|
8214a20d4a | ||
|
|
ab7a16a4f7 | ||
|
|
ca2eabc01f | ||
|
|
2535892723 | ||
|
|
e17889ba42 | ||
|
|
447904e468 | ||
|
|
0492f7953e | ||
|
|
5303ed996b | ||
|
|
d55a8b1bd1 | ||
|
|
47d7e4f234 | ||
|
|
692dbcac11 | ||
|
|
9aa464240c | ||
|
|
cc34b2ae4b | ||
|
|
43602b0d78 | ||
|
|
8507637adf | ||
|
|
2d3ae6be4f | ||
|
|
0b3f8281ff | ||
|
|
7e8d5edf13 | ||
|
|
efbedb222d | ||
|
|
ad83678eb3 | ||
|
|
9737b926b8 | ||
|
|
3cd2e7bb52 | ||
|
|
7b98777ed0 | ||
|
|
46e4f89b56 | ||
|
|
66e30489a5 | ||
|
|
0f844b7ac9 | ||
|
|
b57fcf60d9 | ||
|
|
98468bfa30 | ||
|
|
ad97aecaf4 | ||
|
|
dfe58d81ef | ||
|
|
ae791c363c | ||
|
|
ef3c62a7af | ||
|
|
ff270591b0 | ||
|
|
071fd62f41 | ||
|
|
8a40b1f062 | ||
|
|
a7649f9cf7 | ||
|
|
528bdf6a6d | ||
|
|
c7a2e445d0 | ||
|
|
376ab295bd | ||
|
|
f21f1d2836 | ||
|
|
81a9e1fa07 | ||
|
|
2c9781b8ac | ||
|
|
a6aaa21287 | ||
|
|
675abed41a | ||
|
|
8306b0e9a6 | ||
|
|
b71977d29a | ||
|
|
21dc292687 | ||
|
|
e8d0e67eeb | ||
|
|
bf34f7b3fa | ||
|
|
8d83a8b898 | ||
|
|
d2f9d12bc5 | ||
|
|
67d62cd452 | ||
|
|
5181b09db8 | ||
|
|
77a7498731 | ||
|
|
445f2f9e63 | ||
|
|
85c67ffcbb | ||
|
|
0f4b990eae | ||
|
|
288fb05ea5 | ||
|
|
6d7996924f | ||
|
|
8aa333ba89 | ||
|
|
234aa8bda4 | ||
|
|
13a51f2f46 | ||
|
|
2977bb1b23 | ||
|
|
ea856561c5 | ||
|
|
d1266ea09b | ||
|
|
eb61c48ef0 | ||
|
|
7037bb0cfa | ||
|
|
187a195011 | ||
|
|
b9e6ffee97 | ||
|
|
d5d07c48c0 | ||
|
|
b623e5405b | ||
|
|
197c4ff668 | ||
|
|
cf2ed326a3 | ||
|
|
447e3c2d9e | ||
|
|
294a94fc0c | ||
|
|
d1a61de9f1 | ||
|
|
3a4d79423e | ||
|
|
80e6d2ec9c | ||
|
|
3f45adfcd8 | ||
|
|
ea41e48b4e | ||
|
|
5c398feeba | ||
|
|
0d95b98b48 | ||
|
|
92a974dc7c | ||
|
|
18fa69b779 | ||
|
|
03c3caa35e | ||
|
|
def5346b4b | ||
|
|
a972e35f7a | ||
|
|
4901cf78ad | ||
|
|
5f5a6a9a81 | ||
|
|
eccb9a41e7 | ||
|
|
5dd3327031 | ||
|
|
a7409e3a7a | ||
|
|
f1c86cca4f | ||
|
|
374ff9cf9e | ||
|
|
84b68bd0a8 | ||
|
|
04277a7c52 | ||
|
|
fb9b1b555d | ||
|
|
76bc1bcea6 | ||
|
|
d0df1ba91a | ||
|
|
6857fcf257 | ||
|
|
47641bf914 | ||
|
|
e13b5027d6 | ||
|
|
26338c5acf | ||
|
|
ca32a1ce3c | ||
|
|
0fd43c2a8c | ||
|
|
bffc3e13e8 | ||
|
|
0bde12e24d | ||
|
|
380b1d15e3 | ||
|
|
d4c597e945 | ||
|
|
493d160a6e | ||
|
|
3476f52da9 | ||
|
|
c40f13e2d7 | ||
|
|
a89612e5ac | ||
|
|
73bfd715e3 | ||
|
|
3d64401b11 | ||
|
|
3ecd337b3a | ||
|
|
87435dd5c5 | ||
|
|
94dc4e76b4 | ||
|
|
5a80d98f04 | ||
|
|
4e108c35e8 | ||
|
|
8c285d4c32 | ||
|
|
e941769fdc | ||
|
|
33bf0e03d7 | ||
|
|
9f78c7e637 | ||
|
|
da46733840 | ||
|
|
b1e2d5967a | ||
|
|
bc0deaee5f | ||
|
|
92260645c5 | ||
|
|
cb56aeea0a | ||
|
|
4353735e93 | ||
|
|
38445f2a95 | ||
|
|
0c82937d3c | ||
|
|
5bf758e232 | ||
|
|
428e4840ac | ||
|
|
782aba16a4 | ||
|
|
c5c189c708 | ||
|
|
a168ce9d8f | ||
|
|
060140d654 | ||
|
|
c59f8bdaf1 | ||
|
|
4ec9374e3d | ||
|
|
4ed7dfb7ef | ||
|
|
8d12c7fda8 | ||
|
|
35c5806661 | ||
|
|
1582972c67 | ||
|
|
4a0f74897c | ||
|
|
07c59485fc | ||
|
|
4eb89c9399 | ||
|
|
3dff356345 | ||
|
|
6d1199c95c | ||
|
|
fdba228eed | ||
|
|
8f992214eb | ||
|
|
60849efa72 | ||
|
|
a6028c46a4 | ||
|
|
0460c2e83b | ||
|
|
3a68e82f94 | ||
|
|
dda30309a4 | ||
|
|
d2559c26b6 | ||
|
|
d8a5e38371 | ||
|
|
9243d2a00c | ||
|
|
7eca51f17b | ||
|
|
28c556d92e | ||
|
|
2e67f5b3b5 | ||
|
|
6c121bf87f | ||
|
|
f426e13907 | ||
|
|
dcd774971a | ||
|
|
3c014db434 | ||
|
|
d4a436be57 | ||
|
|
484a6d729a | ||
|
|
008554ce4b | ||
|
|
b8e3ceef6d | ||
|
|
1d75b738a0 | ||
|
|
73e04b71ed | ||
|
|
70e526b773 | ||
|
|
60a968a4f5 | ||
|
|
303dc91988 | ||
|
|
2acec3f229 | ||
|
|
68f28c69f3 | ||
|
|
67460f872b | ||
|
|
fe2c44391c | ||
|
|
959061a420 | ||
|
|
d049400a97 | ||
|
|
d1a6d79af5 | ||
|
|
87e53ee630 | ||
|
|
9ecb7abbcb | ||
|
|
788c307440 | ||
|
|
e4400a5086 | ||
|
|
70e0a1df45 | ||
|
|
d0be0ef9e8 | ||
|
|
215337cc88 | ||
|
|
7b5588b8d1 | ||
|
|
75443a7116 | ||
|
|
6a0de7c329 | ||
|
|
d555f1d482 | ||
|
|
35075fbe30 | ||
|
|
316700422d | ||
|
|
fe2d9c728a | ||
|
|
0f1ec2b1cd | ||
|
|
315842eed7 | ||
|
|
91350d0ddf | ||
|
|
70d3fe37b2 | ||
|
|
00384c256a | ||
|
|
8fe0a21445 | ||
|
|
8171575058 | ||
|
|
af52c3680d | ||
|
|
ce72abddf7 | ||
|
|
68a6695578 | ||
|
|
e4988085cb | ||
|
|
d38662c70f | ||
|
|
db00664f94 | ||
|
|
64054989c6 | ||
|
|
c42dc07f0b | ||
|
|
fccfd11150 | ||
|
|
cca04b10e0 | ||
|
|
9841988dcd | ||
|
|
45fa3da3d7 | ||
|
|
10498811a6 | ||
|
|
849c1ce67e | ||
|
|
303715ee61 | ||
|
|
7d79f48fd8 | ||
|
|
cdddf10b5d | ||
|
|
afc4918f34 | ||
|
|
c8cdcaf512 | ||
|
|
d2a6fa78c7 | ||
|
|
ca90f39687 | ||
|
|
06a0b77e35 | ||
|
|
9d13982a51 | ||
|
|
d603a216a3 | ||
|
|
8550ace4a1 | ||
|
|
251720ef9d | ||
|
|
8ae714ab3c | ||
|
|
d743b2780a | ||
|
|
649957fdc9 | ||
|
|
444128940a | ||
|
|
b6931bfa36 | ||
|
|
8d3c0ec010 | ||
|
|
5166891dcd | ||
|
|
e22426155d | ||
|
|
686f2a8bd4 | ||
|
|
066b3def4c | ||
|
|
fb235dd3a8 | ||
|
|
4c0683735a | ||
|
|
c6a4a33d05 | ||
|
|
de1bed956c | ||
|
|
5bec2ff144 | ||
|
|
e20553bfc6 | ||
|
|
010c7e042f | ||
|
|
120b9d380a | ||
|
|
a4e7808c5e | ||
|
|
69a60b2186 | ||
|
|
e887159a18 | ||
|
|
28f2875e7e | ||
|
|
1ee5c81417 | ||
|
|
3e7b5bf049 | ||
|
|
8867b32356 | ||
|
|
94050d5a49 | ||
|
|
4fb188b93e | ||
|
|
568e6cb022 | ||
|
|
31982bd99a | ||
|
|
876c89609f | ||
|
|
eeecf78796 | ||
|
|
9bd83b886e | ||
|
|
2ffbbdc0db | ||
|
|
68c21d0ccd | ||
|
|
18842fdd35 | ||
|
|
b8df7a71fe | ||
|
|
aa8d0aa01d | ||
|
|
0492ff2e02 | ||
|
|
6626e514b3 | ||
|
|
d7fb06d22e | ||
|
|
e5dfc9e306 | ||
|
|
88bbdf322f | ||
|
|
9750833dd9 | ||
|
|
0d0fdd9b71 | ||
|
|
860a48dd84 | ||
|
|
1e266fbd3f | ||
|
|
9f38e003cb | ||
|
|
510300df35 | ||
|
|
d652a02ac9 | ||
|
|
3c33bd3719 | ||
|
|
3445766a50 | ||
|
|
1c64b7b0e8 | ||
|
|
972c4928cc | ||
|
|
d92e2e2d1b | ||
|
|
014884f9ac | ||
|
|
197e7cad6a | ||
|
|
8229363ff6 | ||
|
|
78e773cf82 | ||
|
|
7b6f4b20ea | ||
|
|
d4d15d8b74 | ||
|
|
4f901d2f78 | ||
|
|
a57e5cdaa9 | ||
|
|
3a98909688 | ||
|
|
a761c41242 | ||
|
|
9d5481ff04 | ||
|
|
20e8d0ddd3 | ||
|
|
f62715be13 | ||
|
|
ad6a66ac8f | ||
|
|
a6d4545baf | ||
|
|
5f7834724a | ||
|
|
5407f983c8 | ||
|
|
fe4afd7623 | ||
|
|
6c2d8900f5 | ||
|
|
2cea16a978 | ||
|
|
8c3f604e4a | ||
|
|
1897d72b51 | ||
|
|
b5ca09f310 | ||
|
|
26450da996 | ||
|
|
3cc04c1e6e | ||
|
|
35b927a6e1 | ||
|
|
b4639f7bb8 | ||
|
|
610237de15 | ||
|
|
f8bd0eca6a | ||
|
|
26863d5bfd | ||
|
|
c168e73805 | ||
|
|
d060125cd3 | ||
|
|
6c9372a8ff | ||
|
|
97d8d6ea4c | ||
|
|
d3073b9d7e | ||
|
|
a4357162f4 | ||
|
|
4a988136d1 | ||
|
|
c05ed9f2d8 | ||
|
|
a9cf03582f | ||
|
|
948c88799f | ||
|
|
702ed1ea9b | ||
|
|
974b84c5ee | ||
|
|
98b8a693fa | ||
|
|
302d055953 | ||
|
|
ee44df568e | ||
|
|
d8e9d11832 | ||
|
|
a39d498201 | ||
|
|
a59fdc186e | ||
|
|
1e44482a84 | ||
|
|
f38dc912d3 | ||
|
|
9762c82d0a | ||
|
|
51dd9a7428 | ||
|
|
665076e336 | ||
|
|
fe86447c32 | ||
|
|
f44b09da7d | ||
|
|
589e0ba8a4 | ||
|
|
43f161f9c4 | ||
|
|
0bf39f56e2 | ||
|
|
127b22b4be | ||
|
|
f38b6ae595 | ||
|
|
cd6e490d0f | ||
|
|
17c6b9e31f | ||
|
|
4294eed14e | ||
|
|
1ddfc20584 | ||
|
|
1c8e4dbe04 | ||
|
|
7d1a495921 | ||
|
|
b690dbce44 | ||
|
|
e97975fc15 | ||
|
|
10bf4f56b3 | ||
|
|
c315006ea7 | ||
|
|
2a540f7bb9 | ||
|
|
c5544349d2 | ||
|
|
ff2ac423b2 | ||
|
|
2916c7fe06 | ||
|
|
49a09a6ba1 | ||
|
|
a439e9e30a | ||
|
|
5fb74a9241 | ||
|
|
44c9515be4 | ||
|
|
6bf8c49194 | ||
|
|
821da26bbf | ||
|
|
8991ab155f | ||
|
|
311b928b15 | ||
|
|
2838d1d975 | ||
|
|
c38e22591e | ||
|
|
f540114abe | ||
|
|
7795b76644 | ||
|
|
8c391f34b7 | ||
|
|
09dfb42572 | ||
|
|
72003095b3 | ||
|
|
f3fdf336d3 | ||
|
|
d6dd6ebc33 | ||
|
|
dbe4e24e7d | ||
|
|
db388a3e4e | ||
|
|
db9a8221ec | ||
|
|
d18c82da48 | ||
|
|
d97b6639e0 | ||
|
|
1640725cdc | ||
|
|
363bbdac57 | ||
|
|
4927d3e173 | ||
|
|
ce39664059 | ||
|
|
d417779f1c | ||
|
|
cd24c13199 | ||
|
|
a319320152 | ||
|
|
e9dad49ec4 | ||
|
|
236e51d956 | ||
|
|
eb476ffdd2 | ||
|
|
f0ae427d8e | ||
|
|
1ac968e924 | ||
|
|
0879f6e627 | ||
|
|
53da6593b3 | ||
|
|
43bbf725b8 | ||
|
|
9f2c0dd14e | ||
|
|
18a626a30c | ||
|
|
4e49931a25 | ||
|
|
5c0a943055 | ||
|
|
341b9be3d3 | ||
|
|
bdca0e8839 | ||
|
|
63229b0e8e | ||
|
|
e0cab7db58 | ||
|
|
1a06e8d1eb | ||
|
|
bc88a49dcc | ||
|
|
aeed3daac5 | ||
|
|
930577e745 | ||
|
|
1aa71a9a03 | ||
|
|
e87cf11530 | ||
|
|
c65c710962 | ||
|
|
ab342111d0 | ||
|
|
1f54776ce0 | ||
|
|
70665dd49b | ||
|
|
5581300f0d | ||
|
|
95bc1536b2 | ||
|
|
a449b39c52 | ||
|
|
2c241fab44 | ||
|
|
4e6ebbc60e | ||
|
|
09b8c34812 | ||
|
|
5b385718dc | ||
|
|
66f0eb7f30 | ||
|
|
c4e355cdb0 | ||
|
|
5df65b35f4 | ||
|
|
1ce4b86ff7 | ||
|
|
447b949273 | ||
|
|
053755fdc0 | ||
|
|
f3478dc241 | ||
|
|
576ed9e18e | ||
|
|
370b5b672c | ||
|
|
5feb54d3c4 | ||
|
|
125a56e554 | ||
|
|
a87963e300 | ||
|
|
bbaf99c1b4 | ||
|
|
54cc8393a7 | ||
|
|
0d8325bcf7 | ||
|
|
7ffeb1c546 | ||
|
|
ab901acde8 | ||
|
|
ed6a007890 | ||
|
|
f7ccff7647 | ||
|
|
7334288b11 | ||
|
|
0cf50f55aa | ||
|
|
f89918b4bf | ||
|
|
ed067c80cf | ||
|
|
e95e560bdf | ||
|
|
610cabfff4 | ||
|
|
76b95ddfa8 | ||
|
|
f78d45f4a6 | ||
|
|
6d57846ef4 | ||
|
|
7d403822b5 | ||
|
|
24e3606512 | ||
|
|
9e01838184 | ||
|
|
054f8e44db | ||
|
|
8fd196bde8 | ||
|
|
5eee6e0cec | ||
|
|
4702375038 | ||
|
|
81a5311349 | ||
|
|
f3946f102f | ||
|
|
680f14b1f9 | ||
|
|
f7e59139d0 | ||
|
|
089bac2bcd | ||
|
|
940989b6e9 | ||
|
|
6e9a3222ce | ||
|
|
4dfbf5aa17 | ||
|
|
15981e62b5 | ||
|
|
3a68c2ae10 | ||
|
|
87e3b96a90 | ||
|
|
02b7e5b1c2 | ||
|
|
a0e8b3b2d8 | ||
|
|
730361695b | ||
|
|
24133531a5 | ||
|
|
3f40aefafe | ||
|
|
ecb866f57a | ||
|
|
1bf3506d2e | ||
|
|
bc24d2c193 | ||
|
|
16345b1005 | ||
|
|
62a90ed92f | ||
|
|
493b19c8ba | ||
|
|
8aee773c1c | ||
|
|
9a243eaa04 | ||
|
|
a8773eab1e | ||
|
|
47a077a3b7 | ||
|
|
95ea69d43f | ||
|
|
1fdd929f2a | ||
|
|
90a2666215 | ||
|
|
dce12c3e7e | ||
|
|
1c3c1baf9a | ||
|
|
52d2b8a315 | ||
|
|
0468100bba | ||
|
|
a4b6f4fb98 | ||
|
|
0d19451bbe | ||
|
|
3e3fec4d0c | ||
|
|
102b1b666d | ||
|
|
49b83948c0 | ||
|
|
61f7db14a8 | ||
|
|
e389b7a302 | ||
|
|
b1c1428923 | ||
|
|
0a4ab0e429 | ||
|
|
1ab2d57443 | ||
|
|
2f582dd33b | ||
|
|
b687574920 | ||
|
|
1591b8ed35 | ||
|
|
4ef978406f | ||
|
|
765a86c47b | ||
|
|
992abfe2d8 | ||
|
|
1715f26f07 | ||
|
|
5b20016039 | ||
|
|
eaea72275e | ||
|
|
b21e87eefa | ||
|
|
18301d5f54 | ||
|
|
f2dde902ce | ||
|
|
75579aff64 | ||
|
|
8bd515b18d | ||
|
|
b79b7e3975 | ||
|
|
f8a33e4445 | ||
|
|
b2a05bd1ab | ||
|
|
798bc37fce | ||
|
|
43fa2cc2ff | ||
|
|
159c399fb8 | ||
|
|
d4278f914b | ||
|
|
ba650456aa | ||
|
|
3d2282f8f9 | ||
|
|
d68f3b8199 | ||
|
|
b2f3042935 | ||
|
|
48ce26f05d | ||
|
|
96e64d7988 | ||
|
|
1d21ab6bcb | ||
|
|
260d110b0a | ||
|
|
6f9f745588 | ||
|
|
cf4f414b5f | ||
|
|
e3f5d1e4d6 | ||
|
|
f71788bb35 | ||
|
|
af9100593b | ||
|
|
3551ebd9a1 | ||
|
|
d9d433025c | ||
|
|
54c2bb1e86 | ||
|
|
a844e9d152 | ||
|
|
20f7e2cde6 | ||
|
|
a6b9c81636 | ||
|
|
f266b1f408 | ||
|
|
f45efdf2fc | ||
|
|
ff29d85faf | ||
|
|
141d5e858d | ||
|
|
4bacc04d2b | ||
|
|
12f504482c | ||
|
|
1e47b50b54 | ||
|
|
cc268f5a2a | ||
|
|
9a5c583f80 | ||
|
|
cb8e5efbc7 | ||
|
|
1424596b5b | ||
|
|
f6c082039a | ||
|
|
d46bc3dfd1 | ||
|
|
d9dbddeb2f | ||
|
|
3a748859ff | ||
|
|
89fca27520 | ||
|
|
4007730e2e | ||
|
|
35ec51ac06 | ||
|
|
00090ec3aa | ||
|
|
46183aee2a | ||
|
|
72e5e49889 | ||
|
|
0c8f8bc131 | ||
|
|
399ba3836b | ||
|
|
d8b1dfe540 | ||
|
|
5a9b86457c | ||
|
|
8bac7382bb | ||
|
|
55da818b8e | ||
|
|
01e5a8caee | ||
|
|
c3939214bf | ||
|
|
ab48c5e3dd | ||
|
|
af70d123cb | ||
|
|
df7f24e7ca | ||
|
|
1b6cbc6c59 | ||
|
|
2a6e6626af | ||
|
|
8b17332ace | ||
|
|
57ea0c285c | ||
|
|
34d3e9d637 | ||
|
|
dcedf16142 | ||
|
|
d2da0829b9 | ||
|
|
b7d933b6ce | ||
|
|
700b6b4619 | ||
|
|
3c5e2cee2a | ||
|
|
c75d5e5352 | ||
|
|
d1a66cb948 | ||
|
|
bb180b6bf8 | ||
|
|
940fe28a9f | ||
|
|
e2e8001ba8 | ||
|
|
79c92afb7f | ||
|
|
f04f5668f1 | ||
|
|
6c4385b52c | ||
|
|
922e303c70 | ||
|
|
22c060956e | ||
|
|
70b7f73e20 | ||
|
|
d92286ded7 | ||
|
|
c07f811c87 | ||
|
|
434d16d523 | ||
|
|
c462aedad9 | ||
|
|
41576d7f62 | ||
|
|
5f34a1202b | ||
|
|
e05e589ddf | ||
|
|
3f504a1d4c | ||
|
|
08f51b882d | ||
|
|
1f55c63f89 | ||
|
|
32c40c3b3a | ||
|
|
aa437673dd | ||
|
|
3bdcdd580e | ||
|
|
1d4af538a2 | ||
|
|
06cdf5307b | ||
|
|
ad8fb657ad | ||
|
|
a4f4d281b2 | ||
|
|
77e9917b64 | ||
|
|
2598f00143 | ||
|
|
3b12fd6d21 | ||
|
|
1c4a6b0deb | ||
|
|
45bdfd111d | ||
|
|
8fc6b85c0e | ||
|
|
9afb9ffb95 | ||
|
|
514aac8d82 | ||
|
|
caf7f4c99b | ||
|
|
ddabd32807 | ||
|
|
eda2949809 | ||
|
|
bbb92e0a20 | ||
|
|
660ebbf35a | ||
|
|
211401b52c | ||
|
|
52bf4f38e4 | ||
|
|
ac9b1aef7e | ||
|
|
25ddee3fb1 | ||
|
|
fbf3f1981a | ||
|
|
999d3f2457 | ||
|
|
4122ecdb55 | ||
|
|
46e2125de2 | ||
|
|
9853990075 | ||
|
|
2b8d6b215c | ||
|
|
b2f57590b6 | ||
|
|
0ac396f61c | ||
|
|
0a7eafa256 | ||
|
|
73ec9d853e | ||
|
|
e118d270df | ||
|
|
9e1f9ae853 | ||
|
|
74fdc7464b | ||
|
|
5664beda1b | ||
|
|
b73705e275 | ||
|
|
3228e49497 | ||
|
|
9c5a8d122c | ||
|
|
f83b4f674a | ||
|
|
65b3bd8866 | ||
|
|
30f7fc052e | ||
|
|
1f02b77f66 | ||
|
|
2a6883064d | ||
|
|
c7d2f0244b | ||
|
|
698339d77e | ||
|
|
fc434cfc74 | ||
|
|
5238fa64ac | ||
|
|
9c44852aa1 | ||
|
|
796d35ed3b | ||
|
|
7b6b3aafd5 | ||
|
|
901d926fc4 | ||
|
|
ba05ca46d9 | ||
|
|
7548e86a06 | ||
|
|
ff7b7ea9a7 | ||
|
|
44a31ca0ed | ||
|
|
52c94958f7 | ||
|
|
cd0ce2d6be | ||
|
|
ee404dff35 | ||
|
|
498d8b1ecf | ||
|
|
00097cbb98 | ||
|
|
e3504ee69e | ||
|
|
f0c78e966e | ||
|
|
08a36a1fe0 | ||
|
|
c6b6e54875 | ||
|
|
157828997a | ||
|
|
164cfc40a6 | ||
|
|
bc39f096c5 | ||
|
|
008b9ca2f2 | ||
|
|
db56bf90db | ||
|
|
646d2cd996 | ||
|
|
c63e5a39ab | ||
|
|
2485f8e548 | ||
|
|
670be54348 | ||
|
|
dec9aedb19 | ||
|
|
09ba1d7e3c | ||
|
|
6b148b377c | ||
|
|
dbb6e7ebba | ||
|
|
9a4c375509 | ||
|
|
1af71b3215 | ||
|
|
1fe9b4276d | ||
|
|
957c987b79 | ||
|
|
dbe55ea591 | ||
|
|
47fdafb495 | ||
|
|
c53132a2b8 | ||
|
|
f60293783f | ||
|
|
5efc812f42 | ||
|
|
67860c2e8d | ||
|
|
652ec33e11 | ||
|
|
41ce7ff286 | ||
|
|
b1d72e8663 | ||
|
|
c24b6f83f8 | ||
|
|
1fe8475dc4 | ||
|
|
09cccf0ffb | ||
|
|
8c9441e0a3 | ||
|
|
476018aeb8 | ||
|
|
f9a69c7467 | ||
|
|
a72f721b80 | ||
|
|
e71252933a | ||
|
|
a33965b6a5 | ||
|
|
66eac2ca1e | ||
|
|
033ad8922c | ||
|
|
fa3d894172 | ||
|
|
fb60b0dd60 | ||
|
|
67439d6194 | ||
|
|
95a5bbb367 | ||
|
|
72206539d6 | ||
|
|
3466da9467 | ||
|
|
9bd99aa223 | ||
|
|
5e0b565f93 | ||
|
|
c4d861cc35 | ||
|
|
8fd506fa1b | ||
|
|
0582398521 | ||
|
|
87f8cb350b | ||
|
|
54faa8ab7e | ||
|
|
a396b67618 | ||
|
|
682a93e757 | ||
|
|
61603c4f7b | ||
|
|
ef8b496d47 | ||
|
|
d921d0d6c4 | ||
|
|
c0aee64246 | ||
|
|
0cfb3c5dbc | ||
|
|
d77c88e25f | ||
|
|
66a883397d | ||
|
|
de9600c81a | ||
|
|
00de047b84 | ||
|
|
c0ee171edb | ||
|
|
5589ecbac4 | ||
|
|
93e28c62e5 | ||
|
|
607e5a9877 | ||
|
|
8fccd50717 | ||
|
|
01f93b905a | ||
|
|
c1e8c2a024 | ||
|
|
aea601d115 | ||
|
|
be88d455c8 | ||
|
|
996428f34e | ||
|
|
5fef349a0e | ||
|
|
177de47371 | ||
|
|
917b786cd0 | ||
|
|
6a24de5f90 | ||
|
|
b06bf44e33 | ||
|
|
9237bb020d | ||
|
|
23070a3d23 | ||
|
|
ed331feab1 | ||
|
|
54430fed31 | ||
|
|
65bee96fef | ||
|
|
d9c0e62cec | ||
|
|
5925957b96 | ||
|
|
ba3c49a816 | ||
|
|
89164b184a | ||
|
|
0178a35d6b | ||
|
|
e8595665c0 | ||
|
|
cac56cd92f | ||
|
|
0a3ab57639 | ||
|
|
ab87784b75 | ||
|
|
055f3a141a | ||
|
|
30134ba3c6 | ||
|
|
1a419cc52d | ||
|
|
3fefb0d519 | ||
|
|
4804aa53b5 | ||
|
|
4c145f363f |
19
.bumpversion.cfg
Normal file
19
.bumpversion.cfg
Normal file
@@ -0,0 +1,19 @@
|
||||
[bumpversion]
|
||||
commit = True
|
||||
tag = True
|
||||
current_version = 4.49
|
||||
parse = (?P<major>\d+)\.(?P<minor>\d+)(\.(?P<patch>\d+)(\-(?P<release>[a-z]+))?)?
|
||||
serialize =
|
||||
{major}.{minor}
|
||||
|
||||
[bumpversion:file:kvmd/__init__.py]
|
||||
search = __version__ = "{current_version}"
|
||||
replace = __version__ = "{new_version}"
|
||||
|
||||
[bumpversion:file:setup.py]
|
||||
search = version="{current_version}"
|
||||
replace = version="{new_version}"
|
||||
|
||||
[bumpversion:file:PKGBUILD]
|
||||
search = pkgver={current_version}
|
||||
replace = pkgver={new_version}
|
||||
23
.dockerignore
Normal file
23
.dockerignore
Normal file
@@ -0,0 +1,23 @@
|
||||
/pkg/
|
||||
/src/
|
||||
/site/
|
||||
/dist/
|
||||
/kvmd.egg-info/
|
||||
/testenv/run/
|
||||
/testenv/.tox/
|
||||
/testenv/.mypy_cache/
|
||||
/testenv/.ssl/
|
||||
/hid/arduino/.pio/
|
||||
/hid/arduino/.platformio/
|
||||
/hid/pico/.pico-sdk.tmp/
|
||||
/hid/pico/.pico-sdk/
|
||||
/hid/pico/.tinyusb.tmp/
|
||||
/hid/pico/.tinyusb/
|
||||
/hid/pico/.build/
|
||||
/hid/pico/*.uf2
|
||||
/.git/
|
||||
/v*.tar.gz
|
||||
/*.pkg.tar.xz
|
||||
/*.pkg.tar.zst
|
||||
/*.egg-info
|
||||
/*kvmd-*.tar.gz
|
||||
10
.editorconfig
Normal file
10
.editorconfig
Normal file
@@ -0,0 +1,10 @@
|
||||
root = true
|
||||
|
||||
[*]
|
||||
end_of_file = lf
|
||||
indent_style = tab
|
||||
indent_size = 4
|
||||
|
||||
[*.{py,yaml}]
|
||||
indent_style = space
|
||||
indent_size = 4
|
||||
2
.github/FUNDING.yml
vendored
Normal file
2
.github/FUNDING.yml
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
# These are supported funding model platforms
|
||||
custom: https://afdian.com/a/silentwind
|
||||
23
.github/workflows/arduino-hid.yml
vendored
Normal file
23
.github/workflows/arduino-hid.yml
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
name: Arduino HID CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [master]
|
||||
pull_request:
|
||||
branches: [master]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
container:
|
||||
image: python
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Prepare platformio
|
||||
run: pip install platformio
|
||||
|
||||
- name: Build all
|
||||
run: make -C hid/arduino _build_all
|
||||
41
.github/workflows/pico-hid-release.yml
vendored
Normal file
41
.github/workflows/pico-hid-release.yml
vendored
Normal file
@@ -0,0 +1,41 @@
|
||||
name: Pico HID Release
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- "v*"
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Installing deps ...
|
||||
run: sudo apt-get install cmake gcc-arm-none-eabi build-essential
|
||||
|
||||
- name: Building ...
|
||||
run: make -C hid/pico all
|
||||
|
||||
- name: Releasing ...
|
||||
id: create_release
|
||||
uses: actions/create-release@v1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
tag_name: ${{ github.ref }}
|
||||
release_name: Release ${{ github.ref }}
|
||||
draft: false
|
||||
prerelease: false
|
||||
|
||||
- name: Uploading firmware ...
|
||||
id: upload-release-asset
|
||||
uses: actions/upload-release-asset@v1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
with:
|
||||
upload_url: ${{ steps.create_release.outputs.upload_url }}
|
||||
asset_path: ./hid/pico/hid.uf2
|
||||
asset_name: pico-hid.uf2
|
||||
asset_content_type: application/octet-stream
|
||||
20
.github/workflows/pico-hid.yml
vendored
Normal file
20
.github/workflows/pico-hid.yml
vendored
Normal file
@@ -0,0 +1,20 @@
|
||||
name: Pico HID CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [master]
|
||||
pull_request:
|
||||
branches: [master]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Installing deps ...
|
||||
run: sudo apt-get install cmake gcc-arm-none-eabi build-essential
|
||||
|
||||
- name: Running tests ...
|
||||
run: make -C hid/pico all
|
||||
20
.github/workflows/tox.yml
vendored
Normal file
20
.github/workflows/tox.yml
vendored
Normal file
@@ -0,0 +1,20 @@
|
||||
name: TOX CI
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [master]
|
||||
pull_request:
|
||||
branches: [master]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Building testenv ...
|
||||
run: make testenv
|
||||
|
||||
- name: Running tests ...
|
||||
run: make tox CMD="tox -c testenv/tox.ini"
|
||||
23
.gitignore
vendored
Normal file
23
.gitignore
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
/pkg/
|
||||
/src/**/*.img
|
||||
/src/tmp
|
||||
/site/
|
||||
/dist/
|
||||
/kvmd.egg-info/
|
||||
/config.mk
|
||||
/testenv/.tox/
|
||||
/testenv/.mypy_cache/
|
||||
/testenv/.coverage*
|
||||
/testenv/run/*.sock
|
||||
/testenv/run/*.pid
|
||||
/testenv/.ssl/
|
||||
/v*.tar.gz
|
||||
/*.pkg.tar.xz
|
||||
/*.pkg.tar.zst
|
||||
/*.egg-info
|
||||
/*kvmd-*.tar.gz
|
||||
*.pyc
|
||||
*.swp
|
||||
/venv/
|
||||
.vscode/settings.j/son
|
||||
kvmd_config/
|
||||
4
.vscode/settings.json
vendored
Normal file
4
.vscode/settings.json
vendored
Normal file
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"cmake.ignoreCMakeListsMissing": true,
|
||||
"makefile.configureOnOpen": false
|
||||
}
|
||||
@@ -1,9 +0,0 @@
|
||||
更新日志
|
||||
- V0.53: 调整dts CPU频率和版本,添加H.264支持(来自群友 自.知 )
|
||||
- V0.52:[Build-Armbian]添加MSD内核补丁;完全使用hzyitc的uboot,减小boot分区从512M至128M,引导和分区表使用UUID,默认关闭线刷刷机;dtb切换为外围设备模式;led颜色修改,红色(UBoot)-紫色(内核)-绿色(完全启>
|
||||
- V0.51: [Build-Armbian]5.9内核构建,初步完成直刷镜像构建。
|
||||
- V0.5:通过锁定CPU频率修复ustreamer mjpeg视频流异常的问题;屏蔽主程序找不到温度传感器的报错;优化中文翻译;更新VNC依赖;优化安装流程。
|
||||
- V0.4:利用玩客云自动GPIO实现ATX开关机物理控制功能;初步建立飞书使用文档;制作一键安装脚本,优化安装流程。
|
||||
- V0.3:添加简体中文补丁;实现MSD功能在EMMC和TF卡上的使用;添加WOL和中文OCR功能;优化了安装流程。
|
||||
- V0.2:通过替换系统解决OTG拔插死机问题;初步实现MSD功能;修改启动分区解决开机卡线刷检测;优化安装流程。
|
||||
- V0.1:PiKVM在玩客云上初步运行。
|
||||
2
LICENSE
2
LICENSE
@@ -671,4 +671,4 @@ into proprietary programs. If your program is a subroutine library, you
|
||||
may consider it more useful to permit linking proprietary applications with
|
||||
the library. If this is what you want to do, use the GNU Lesser General
|
||||
Public License instead of this License. But first, please read
|
||||
<https://www.gnu.org/licenses/why-not-lgpl.html>.
|
||||
<https://www.gnu.org/licenses/why-not-lgpl.html>.
|
||||
|
||||
338
Makefile
Normal file
338
Makefile
Normal file
@@ -0,0 +1,338 @@
|
||||
-include config.mk
|
||||
|
||||
TESTENV_IMAGE ?= kvmd-testenv
|
||||
TESTENV_HID ?= /dev/ttyS10
|
||||
TESTENV_VIDEO ?= /dev/video0
|
||||
TESTENV_GPIO ?= /dev/gpiochip0
|
||||
TESTENV_RELAY ?= $(if $(shell ls /dev/hidraw0 2>/dev/null || true),/dev/hidraw0,)
|
||||
|
||||
LIBGPIOD_VERSION ?= 1.6.3
|
||||
|
||||
USTREAMER_MIN_VERSION ?= $(shell grep -o 'ustreamer>=[^"]\+' PKGBUILD | sed 's/ustreamer>=//g')
|
||||
|
||||
DEFAULT_PLATFORM ?= v2-hdmiusb-rpi4
|
||||
|
||||
DOCKER ?= docker
|
||||
|
||||
|
||||
# =====
|
||||
define optbool
|
||||
$(filter $(shell echo $(1) | tr A-Z a-z),yes on 1)
|
||||
endef
|
||||
|
||||
|
||||
# =====
|
||||
all:
|
||||
@ echo "Useful commands:"
|
||||
@ echo " make # Print this help"
|
||||
@ echo " make testenv # Build test environment"
|
||||
@ echo " make tox # Run tests and linters"
|
||||
@ echo " make tox E=pytest # Run selected test environment"
|
||||
@ echo " make gpio # Create gpio mockup"
|
||||
@ echo " make run # Run kvmd"
|
||||
@ echo " make run CMD=... # Run specified command inside kvmd environment"
|
||||
@ echo " make run-cfg # Run kvmd -m"
|
||||
@ echo " make run-ipmi # Run kvmd-ipmi"
|
||||
@ echo " make run-ipmi CMD=... # Run specified command inside kvmd-ipmi environment"
|
||||
@ echo " make run-vnc # Run kvmd-vnc"
|
||||
@ echo " make run-vnc CMD=... # Run specified command inside kvmd-vnc environment"
|
||||
@ echo " make regen # Regen some sources like keymap"
|
||||
@ echo " make bump # Bump minor version"
|
||||
@ echo " make bump V=major # Bump major version"
|
||||
@ echo " make release # Publish the new release (include bump minor)"
|
||||
@ echo " make clean # Remove garbage"
|
||||
@ echo " make clean-all # Remove garbage and test results"
|
||||
@ echo
|
||||
@ echo "Also you can add option NC=1 to rebuild docker test environment"
|
||||
|
||||
|
||||
testenv:
|
||||
$(DOCKER) build \
|
||||
$(if $(call optbool,$(NC)),--no-cache,) \
|
||||
--rm \
|
||||
--tag $(TESTENV_IMAGE) \
|
||||
--build-arg LIBGPIOD_VERSION=$(LIBGPIOD_VERSION) \
|
||||
--build-arg USTREAMER_MIN_VERSION=$(USTREAMER_MIN_VERSION) \
|
||||
-f testenv/Dockerfile .
|
||||
test -d testenv/.ssl || $(DOCKER) run --rm \
|
||||
--volume `pwd`:/src:ro \
|
||||
--volume `pwd`/testenv:/src/testenv:rw \
|
||||
-t $(TESTENV_IMAGE) bash -c " \
|
||||
groupadd kvmd-nginx \
|
||||
&& groupadd kvmd-vnc \
|
||||
&& /src/scripts/kvmd-gencert --do-the-thing \
|
||||
&& /src/scripts/kvmd-gencert --do-the-thing --vnc \
|
||||
&& chown -R root:root /etc/kvmd/{nginx,vnc}/ssl \
|
||||
&& chmod 664 /etc/kvmd/{nginx,vnc}/ssl/* \
|
||||
&& chmod 775 /etc/kvmd/{nginx,vnc}/ssl \
|
||||
&& mkdir /src/testenv/.ssl \
|
||||
&& mv /etc/kvmd/nginx/ssl /src/testenv/.ssl/nginx \
|
||||
&& mv /etc/kvmd/vnc/ssl /src/testenv/.ssl/vnc \
|
||||
"
|
||||
|
||||
|
||||
tox: testenv
|
||||
time $(DOCKER) run --rm \
|
||||
--volume `pwd`:/src:ro \
|
||||
--volume `pwd`/testenv:/src/testenv:rw \
|
||||
--volume `pwd`/testenv/tests:/src/testenv/tests:ro \
|
||||
--volume `pwd`/extras:/usr/share/kvmd/extras:ro \
|
||||
--volume `pwd`/configs:/usr/share/kvmd/configs.default:ro \
|
||||
--volume `pwd`/contrib/keymaps:/usr/share/kvmd/keymaps:ro \
|
||||
-t $(TESTENV_IMAGE) bash -c " \
|
||||
cp -a /src/testenv/.ssl/nginx /etc/kvmd/nginx/ssl \
|
||||
&& cp -a /src/testenv/.ssl/vnc /etc/kvmd/vnc/ssl \
|
||||
&& cp /src/testenv/platform /usr/share/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/*.yaml /etc/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/*passwd /etc/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/*.secret /etc/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/edid/v2.hex /etc/kvmd/switch-edid.hex \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/main/$(if $(P),$(P),$(DEFAULT_PLATFORM)).yaml /etc/kvmd/main.yaml \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/main.yaml /etc/kvmd/main.yaml \
|
||||
&& mkdir -p /etc/kvmd/override.d \
|
||||
&& cp /src/testenv/$(if $(P),$(P),$(DEFAULT_PLATFORM)).override.yaml /etc/kvmd/override.yaml \
|
||||
&& cd /src \
|
||||
&& $(if $(CMD),$(CMD),tox -q -c testenv/tox.ini $(if $(E),-e $(E),-p auto)) \
|
||||
"
|
||||
|
||||
|
||||
$(TESTENV_GPIO):
|
||||
test ! -e $(TESTENV_GPIO)
|
||||
sudo modprobe gpio-mockup gpio_mockup_ranges=0,40
|
||||
test -c $(TESTENV_GPIO)
|
||||
|
||||
|
||||
run: testenv $(TESTENV_GPIO)
|
||||
- $(DOCKER) run --rm --name kvmd \
|
||||
--ipc=shareable \
|
||||
--privileged \
|
||||
--volume `pwd`/testenv/run:/run/kvmd:rw \
|
||||
--volume `pwd`/testenv:/testenv:ro \
|
||||
--volume `pwd`/kvmd:/kvmd:ro \
|
||||
--volume `pwd`/testenv/env.py:/kvmd/env.py:ro \
|
||||
--volume `pwd`/web:/usr/share/kvmd/web:ro \
|
||||
--volume `pwd`/extras:/usr/share/kvmd/extras:ro \
|
||||
--volume `pwd`/configs:/usr/share/kvmd/configs.default:ro \
|
||||
--volume `pwd`/contrib/keymaps:/usr/share/kvmd/keymaps:ro \
|
||||
--device $(TESTENV_VIDEO):$(TESTENV_VIDEO) \
|
||||
--device $(TESTENV_GPIO):$(TESTENV_GPIO) \
|
||||
$(if $(TESTENV_RELAY),--device $(TESTENV_RELAY):$(TESTENV_RELAY),) \
|
||||
--publish 8080:8080/tcp \
|
||||
--publish 4430:4430/tcp \
|
||||
-it $(TESTENV_IMAGE) /bin/bash -c " \
|
||||
mkdir -p /tmp/kvmd-nginx \
|
||||
&& mount -t debugfs none /sys/kernel/debug \
|
||||
&& test -d /sys/kernel/debug/gpio-mockup/`basename $(TESTENV_GPIO)`/ || (echo \"Missing GPIO mockup\" && exit 1) \
|
||||
&& (socat PTY,link=$(TESTENV_HID) PTY,link=/dev/ttyS11 &) \
|
||||
&& cp -r /usr/share/kvmd/configs.default/nginx/* /etc/kvmd/nginx \
|
||||
&& cp -a /testenv/.ssl/nginx /etc/kvmd/nginx/ssl \
|
||||
&& cp -a /testenv/.ssl/vnc /etc/kvmd/vnc/ssl \
|
||||
&& cp /testenv/platform /usr/share/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/*.yaml /etc/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/*passwd /etc/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/*.secret /etc/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/edid/v2.hex /etc/kvmd/switch-edid.hex \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/main/$(if $(P),$(P),$(DEFAULT_PLATFORM)).yaml /etc/kvmd/main.yaml \
|
||||
&& ln -s /testenv/web.css /etc/kvmd/web.css \
|
||||
&& mkdir -p /etc/kvmd/override.d \
|
||||
&& cp /testenv/$(if $(P),$(P),$(DEFAULT_PLATFORM)).override.yaml /etc/kvmd/override.yaml \
|
||||
&& python -m kvmd.apps.ngxmkconf /etc/kvmd/nginx/nginx.conf.mako /etc/kvmd/nginx/nginx.conf \
|
||||
&& nginx -c /etc/kvmd/nginx/nginx.conf -g 'user http; error_log stderr;' \
|
||||
&& ln -s $(TESTENV_VIDEO) /dev/kvmd-video \
|
||||
&& ln -s $(TESTENV_GPIO) /dev/kvmd-gpio \
|
||||
&& $(if $(CMD),$(CMD),python -m kvmd.apps.kvmd --run) \
|
||||
"
|
||||
|
||||
|
||||
run-cfg: testenv
|
||||
- $(DOCKER) run --rm --name kvmd-cfg \
|
||||
--volume `pwd`/testenv/run:/run/kvmd:rw \
|
||||
--volume `pwd`/testenv:/testenv:ro \
|
||||
--volume `pwd`/kvmd:/kvmd:ro \
|
||||
--volume `pwd`/extras:/usr/share/kvmd/extras:ro \
|
||||
--volume `pwd`/configs:/usr/share/kvmd/configs.default:ro \
|
||||
--volume `pwd`/contrib/keymaps:/usr/share/kvmd/keymaps:ro \
|
||||
-it $(TESTENV_IMAGE) /bin/bash -c " \
|
||||
cp -a /testenv/.ssl/nginx /etc/kvmd/nginx/ssl \
|
||||
&& cp -a /testenv/.ssl/vnc /etc/kvmd/vnc/ssl \
|
||||
&& cp /testenv/platform /usr/share/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/*.yaml /etc/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/*passwd /etc/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/*.secret /etc/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/edid/v2.hex /etc/kvmd/switch-edid.hex \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/main/$(if $(P),$(P),$(DEFAULT_PLATFORM)).yaml /etc/kvmd/main.yaml \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/main.yaml /etc/kvmd/main.yaml \
|
||||
&& mkdir -p /etc/kvmd/override.d \
|
||||
&& cp /testenv/$(if $(P),$(P),$(DEFAULT_PLATFORM)).override.yaml /etc/kvmd/override.yaml \
|
||||
&& $(if $(CMD),$(CMD),python -m kvmd.apps.kvmd -m) \
|
||||
"
|
||||
|
||||
|
||||
run-ipmi: testenv
|
||||
- $(DOCKER) run --rm --name kvmd-ipmi \
|
||||
--volume `pwd`/testenv/run:/run/kvmd:rw \
|
||||
--volume `pwd`/testenv:/testenv:ro \
|
||||
--volume `pwd`/kvmd:/kvmd:ro \
|
||||
--volume `pwd`/extras:/usr/share/kvmd/extras:ro \
|
||||
--volume `pwd`/configs:/usr/share/kvmd/configs.default:ro \
|
||||
--volume `pwd`/contrib/keymaps:/usr/share/kvmd/keymaps:ro \
|
||||
--publish 6230:623/udp \
|
||||
-it $(TESTENV_IMAGE) /bin/bash -c " \
|
||||
cp -a /testenv/.ssl/nginx /etc/kvmd/nginx/ssl \
|
||||
&& cp -a /testenv/.ssl/vnc /etc/kvmd/vnc/ssl \
|
||||
&& cp /testenv/platform /usr/share/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/*.yaml /etc/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/*passwd /etc/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/*.secret /etc/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/edid/v2.hex /etc/kvmd/switch-edid.hex \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/main/$(if $(P),$(P),$(DEFAULT_PLATFORM)).yaml /etc/kvmd/main.yaml \
|
||||
&& mkdir -p /etc/kvmd/override.d \
|
||||
&& cp /testenv/$(if $(P),$(P),$(DEFAULT_PLATFORM)).override.yaml /etc/kvmd/override.yaml \
|
||||
&& $(if $(CMD),$(CMD),python -m kvmd.apps.ipmi --run) \
|
||||
"
|
||||
|
||||
|
||||
run-vnc: testenv
|
||||
- $(DOCKER) run --rm --name kvmd-vnc \
|
||||
--ipc=container:kvmd \
|
||||
--volume `pwd`/testenv/run:/run/kvmd:rw \
|
||||
--volume `pwd`/testenv:/testenv:ro \
|
||||
--volume `pwd`/kvmd:/kvmd:ro \
|
||||
--volume `pwd`/extras:/usr/share/kvmd/extras:ro \
|
||||
--volume `pwd`/configs:/usr/share/kvmd/configs.default:ro \
|
||||
--volume `pwd`/contrib/keymaps:/usr/share/kvmd/keymaps:ro \
|
||||
--publish 5900:5900/tcp \
|
||||
-it $(TESTENV_IMAGE) /bin/bash -c " \
|
||||
cp -a /testenv/.ssl/nginx /etc/kvmd/nginx/ssl \
|
||||
&& cp -a /testenv/.ssl/vnc /etc/kvmd/vnc/ssl \
|
||||
&& cp /testenv/platform /usr/share/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/*.yaml /etc/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/*passwd /etc/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/*.secret /etc/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/edid/v2.hex /etc/kvmd/switch-edid.hex \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/main/$(if $(P),$(P),$(DEFAULT_PLATFORM)).yaml /etc/kvmd/main.yaml \
|
||||
&& mkdir -p /etc/kvmd/override.d \
|
||||
&& cp /testenv/$(if $(P),$(P),$(DEFAULT_PLATFORM)).override.yaml /etc/kvmd/override.yaml \
|
||||
&& $(if $(CMD),$(CMD),python -m kvmd.apps.vnc --run) \
|
||||
"
|
||||
|
||||
|
||||
regen: keymap pug
|
||||
|
||||
|
||||
keymap: testenv
|
||||
$(DOCKER) run --user `id -u`:`id -g` --rm \
|
||||
--volume `pwd`:/src \
|
||||
-it $(TESTENV_IMAGE) bash -c "cd src \
|
||||
&& ./genmap.py keymap.csv kvmd/keyboard/mappings.py.mako kvmd/keyboard/mappings.py \
|
||||
&& ./genmap.py keymap.csv hid/arduino/lib/drivers/usb-keymap.h.mako hid/arduino/lib/drivers/usb-keymap.h \
|
||||
&& ./genmap.py keymap.csv hid/arduino/lib/drivers-avr/ps2/keymap.h.mako hid/arduino/lib/drivers-avr/ps2/keymap.h \
|
||||
&& ./genmap.py keymap.csv hid/pico/src/ph_usb_keymap.h.mako hid/pico/src/ph_usb_keymap.h \
|
||||
"
|
||||
|
||||
|
||||
pug: testenv
|
||||
$(DOCKER) run --user `id -u`:`id -g` --rm \
|
||||
--volume `pwd`:/src \
|
||||
-it $(TESTENV_IMAGE) bash -c "cd src \
|
||||
&& pug --pretty web/index.pug -o web \
|
||||
&& pug --pretty web/login/index.pug -o web/login \
|
||||
&& pug --pretty web/kvm/index.pug -o web/kvm \
|
||||
&& pug --pretty web/ipmi/index.pug -o web/ipmi \
|
||||
&& pug --pretty web/vnc/index.pug -o web/vnc \
|
||||
"
|
||||
|
||||
|
||||
release:
|
||||
make clean
|
||||
make tox
|
||||
make clean
|
||||
make push
|
||||
make bump V=$(V)
|
||||
make push
|
||||
make clean
|
||||
|
||||
|
||||
bump:
|
||||
bumpversion $(if $(V),$(V),minor)
|
||||
|
||||
|
||||
push:
|
||||
git push
|
||||
git push --tags
|
||||
|
||||
|
||||
clean:
|
||||
rm -rf testenv/run/*.{pid,sock} build site dist pkg src v*.tar.gz *.pkg.tar.{xz,zst} *.egg-info kvmd-*.tar.gz
|
||||
find kvmd testenv/tests -name __pycache__ | xargs rm -rf
|
||||
make -C hid/arduino clean
|
||||
make -C hid/pico clean
|
||||
|
||||
|
||||
clean-all: testenv clean
|
||||
make -C hid/arduino clean-all
|
||||
make -C hid/pico clean-all
|
||||
- $(DOCKER) run --rm \
|
||||
--volume `pwd`:/src \
|
||||
-it $(TESTENV_IMAGE) bash -c "cd src && rm -rf testenv/{.ssl,.tox,.mypy_cache,.coverage}"
|
||||
|
||||
|
||||
.PHONY: testenv
|
||||
|
||||
run-stage-0:
|
||||
$(DOCKER) buildx build -t registry.cn-hangzhou.aliyuncs.com/silentwind/kvmd-stage-0 -t silentwind0/kvmd-stage-0 \
|
||||
--allow security.insecure --progress plain \
|
||||
--platform linux/amd64,linux/arm64,linux/arm/v7 \
|
||||
-f build/Dockerfile-stage-0 . \
|
||||
--push
|
||||
|
||||
run-build-dev:
|
||||
$(DOCKER) buildx build -t registry.cn-hangzhou.aliyuncs.com/silentwind/kvmd:dev -t silentwind0/kvmd:dev \
|
||||
--platform linux/amd64,linux/arm64,linux/arm/v7 \
|
||||
--build-arg CACHEBUST=$(date +%s) \
|
||||
-f build/Dockerfile . \
|
||||
--push
|
||||
|
||||
run-build-release:
|
||||
$(DOCKER) buildx build -t registry.cn-hangzhou.aliyuncs.com/silentwind/kvmd -t silentwind0/kvmd \
|
||||
--progress plain \
|
||||
--platform linux/amd64,linux/arm64,linux/arm/v7 \
|
||||
--build-arg CACHEBUST=$(date +%s) \
|
||||
-f build/Dockerfile . \
|
||||
--push
|
||||
|
||||
run-nogpio: testenv
|
||||
- $(DOCKER) run --rm --name kvmd \
|
||||
--privileged \
|
||||
--volume `pwd`/testenv/run:/run/kvmd:rw \
|
||||
--volume `pwd`/testenv:/testenv:ro \
|
||||
--volume `pwd`/kvmd:/kvmd:ro \
|
||||
--volume `pwd`/testenv/env.py:/kvmd/env.py:ro \
|
||||
--volume `pwd`/web:/usr/share/kvmd/web:ro \
|
||||
--volume `pwd`/extras:/usr/share/kvmd/extras:ro \
|
||||
--volume `pwd`/configs:/usr/share/kvmd/configs.default:ro \
|
||||
--volume `pwd`/contrib/keymaps:/usr/share/kvmd/keymaps:ro \
|
||||
--device $(TESTENV_VIDEO):$(TESTENV_VIDEO) \
|
||||
$(if $(TESTENV_RELAY),--device $(TESTENV_RELAY):$(TESTENV_RELAY),) \
|
||||
--publish 8080:8080/tcp \
|
||||
--publish 4430:4430/tcp \
|
||||
-it $(TESTENV_IMAGE) /bin/bash -c " \
|
||||
mkdir -p /tmp/kvmd-nginx \
|
||||
&& mount -t debugfs none /sys/kernel/debug \
|
||||
&& (socat PTY,link=$(TESTENV_HID) PTY,link=/dev/ttyS11 &) \
|
||||
&& cp -r /usr/share/kvmd/configs.default/nginx/* /etc/kvmd/nginx \
|
||||
&& cp -a /testenv/.ssl/nginx /etc/kvmd/nginx/ssl \
|
||||
&& cp -a /testenv/.ssl/vnc /etc/kvmd/vnc/ssl \
|
||||
&& touch /etc/kvmd/.docker_flag \
|
||||
&& cp /testenv/platform /usr/share/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/*.yaml /etc/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/*passwd /etc/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/*.secret /etc/kvmd \
|
||||
&& cp /usr/share/kvmd/configs.default/kvmd/main.yaml /etc/kvmd/main.yaml \
|
||||
&& ln -s /testenv/web.css /etc/kvmd/web.css \
|
||||
&& mkdir -p /etc/kvmd/override.d \
|
||||
&& cp /testenv/$(if $(P),$(P),$(DEFAULT_PLATFORM)).override.yaml /etc/kvmd/override.yaml \
|
||||
&& python -m kvmd.apps.ngxmkconf /etc/kvmd/nginx/nginx.conf.mako /etc/kvmd/nginx/nginx.conf \
|
||||
&& nginx -c /etc/kvmd/nginx/nginx.conf -g 'user http; error_log stderr;' \
|
||||
&& $(if $(CMD),$(CMD),python -m kvmd.apps.kvmd --run) \
|
||||
"
|
||||
273
PKGBUILD
Normal file
273
PKGBUILD
Normal file
@@ -0,0 +1,273 @@
|
||||
# Contributor: Maxim Devaev <mdevaev@gmail.com>
|
||||
# Author: Maxim Devaev <mdevaev@gmail.com>
|
||||
|
||||
|
||||
_variants=(
|
||||
v0-hdmi:zero2w
|
||||
v0-hdmi:rpi2
|
||||
v0-hdmi:rpi3
|
||||
|
||||
v0-hdmiusb:zero2w
|
||||
v0-hdmiusb:rpi2
|
||||
v0-hdmiusb:rpi3
|
||||
|
||||
v1-hdmi:zero2w
|
||||
v1-hdmi:rpi2
|
||||
v1-hdmi:rpi3
|
||||
|
||||
v1-hdmiusb:zero2w
|
||||
v1-hdmiusb:rpi2
|
||||
v1-hdmiusb:rpi3
|
||||
|
||||
v2-hdmi:zero2w
|
||||
v2-hdmi:rpi3
|
||||
v2-hdmi:rpi4
|
||||
|
||||
v2-hdmiusb:rpi4
|
||||
|
||||
v3-hdmi:rpi4
|
||||
|
||||
v4mini-hdmi:rpi4
|
||||
v4plus-hdmi:rpi4
|
||||
)
|
||||
|
||||
|
||||
pkgname=(kvmd)
|
||||
for _variant in "${_variants[@]}"; do
|
||||
_platform=${_variant%:*}
|
||||
_board=${_variant#*:}
|
||||
pkgname+=(kvmd-platform-$_platform-$_board)
|
||||
done
|
||||
pkgbase=kvmd
|
||||
pkgver=4.49
|
||||
pkgrel=1
|
||||
pkgdesc="The main PiKVM daemon"
|
||||
url="https://github.com/pikvm/kvmd"
|
||||
license=(GPL)
|
||||
arch=(any)
|
||||
depends=(
|
||||
"python>=3.13"
|
||||
"python<3.14"
|
||||
python-yaml
|
||||
python-aiohttp
|
||||
python-aiofiles
|
||||
python-async-lru
|
||||
python-passlib
|
||||
python-pyotp
|
||||
python-qrcode
|
||||
python-periphery
|
||||
python-pyserial
|
||||
python-pyserial-asyncio
|
||||
python-spidev
|
||||
python-setproctitle
|
||||
python-psutil
|
||||
python-netifaces
|
||||
python-systemd
|
||||
python-dbus
|
||||
python-dbus-next
|
||||
python-pygments
|
||||
python-pyghmi
|
||||
python-pam
|
||||
python-pillow
|
||||
python-xlib
|
||||
libxkbcommon
|
||||
python-hidapi
|
||||
python-six
|
||||
python-pyrad
|
||||
python-ldap
|
||||
python-zstandard
|
||||
python-mako
|
||||
python-luma-oled
|
||||
python-pyusb
|
||||
python-pyudev
|
||||
"libgpiod>=2.1"
|
||||
freetype2
|
||||
"v4l-utils>=1.22.1-1"
|
||||
"nginx-mainline>=1.25.1"
|
||||
openssl
|
||||
sudo
|
||||
iptables
|
||||
iproute2
|
||||
dnsmasq
|
||||
ipmitool
|
||||
"janus-gateway-pikvm>=1.3.0"
|
||||
certbot
|
||||
platform-io-access
|
||||
raspberrypi-utils
|
||||
"ustreamer>=6.26"
|
||||
|
||||
# Systemd UDEV bug
|
||||
"systemd>=248.3-2"
|
||||
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=2035802
|
||||
# https://archlinuxarm.org/forum/viewtopic.php?f=15&t=15725&start=40
|
||||
"zstd>=1.5.1-2.1"
|
||||
|
||||
# Possible hotfix for the new os update
|
||||
openssl-1.1
|
||||
|
||||
# Bootconfig
|
||||
dos2unix
|
||||
parted
|
||||
e2fsprogs
|
||||
openssh
|
||||
# FIXME:
|
||||
# - https://archlinuxarm.org/forum/viewtopic.php?f=15&t=17007&p=72789
|
||||
# - https://github.com/pikvm/pikvm/issues/1375
|
||||
wpa_supplicant-pikvm
|
||||
run-parts
|
||||
|
||||
# fsck for /boot
|
||||
dosfstools
|
||||
|
||||
# pgrep for kvmd-udev-restart-pass
|
||||
procps-ng
|
||||
|
||||
# Misc
|
||||
hostapd
|
||||
)
|
||||
optdepends=(
|
||||
tesseract
|
||||
)
|
||||
conflicts=(
|
||||
python-pikvm
|
||||
python-aiohttp-pikvm
|
||||
platformio
|
||||
avrdude-pikvm
|
||||
kvmd-oled
|
||||
)
|
||||
makedepends=(
|
||||
python-setuptools
|
||||
python-pip
|
||||
)
|
||||
source=("$url/archive/v$pkgver.tar.gz")
|
||||
md5sums=(SKIP)
|
||||
backup=(
|
||||
etc/kvmd/{override,logging,auth,meta}.yaml
|
||||
etc/kvmd/{ht,ipmi,vnc}passwd
|
||||
etc/kvmd/totp.secret
|
||||
etc/kvmd/nginx/{kvmd.ctx-{http,server},certbot.ctx-server}.conf
|
||||
etc/kvmd/nginx/loc-{login,nocache,proxy,websocket,nobuffering,bigpost}.conf
|
||||
etc/kvmd/nginx/{mime-types,ssl}.conf
|
||||
etc/kvmd/nginx/nginx.conf.mako
|
||||
etc/kvmd/janus/janus{,.plugin.ustreamer,.transport.websockets}.jcfg
|
||||
etc/kvmd/web.css
|
||||
)
|
||||
|
||||
|
||||
package_kvmd() {
|
||||
install=$pkgname.install
|
||||
|
||||
cd "$srcdir/kvmd-$pkgver"
|
||||
pip install --root="$pkgdir" --no-deps .
|
||||
|
||||
install -Dm755 -t "$pkgdir/usr/bin" scripts/kvmd-{bootconfig,gencert,certbot}
|
||||
|
||||
install -Dm644 -t "$pkgdir/usr/lib/systemd/system" configs/os/services/*
|
||||
install -DTm644 configs/os/sysusers.conf "$pkgdir/usr/lib/sysusers.d/kvmd.conf"
|
||||
install -DTm644 configs/os/tmpfiles.conf "$pkgdir/usr/lib/tmpfiles.d/kvmd.conf"
|
||||
|
||||
mkdir -p "$pkgdir/usr/share/kvmd"
|
||||
cp -r {switch,hid,web,extras,contrib/keymaps} "$pkgdir/usr/share/kvmd"
|
||||
find "$pkgdir/usr/share/kvmd/web" -name '*.pug' -exec rm -f '{}' \;
|
||||
|
||||
local _cfg_default="$pkgdir/usr/share/kvmd/configs.default"
|
||||
mkdir -p "$_cfg_default"
|
||||
cp -r configs/* "$_cfg_default"
|
||||
|
||||
find "$pkgdir" -name ".gitignore" -delete
|
||||
find "$_cfg_default" -type f -exec chmod 444 '{}' \;
|
||||
chmod 400 "$_cfg_default/kvmd"/*passwd
|
||||
chmod 400 "$_cfg_default/kvmd"/*.secret
|
||||
chmod 750 "$_cfg_default/os/sudoers"
|
||||
chmod 400 "$_cfg_default/os/sudoers"/*
|
||||
|
||||
mkdir -p "$pkgdir/etc/kvmd/"{nginx,vnc}"/ssl"
|
||||
chmod 755 "$pkgdir/etc/kvmd/"{nginx,vnc}"/ssl"
|
||||
install -Dm444 -t "$pkgdir/etc/kvmd/nginx" "$_cfg_default/nginx"/*.conf*
|
||||
chmod 644 "$pkgdir/etc/kvmd/nginx/"{nginx,ssl}.conf*
|
||||
|
||||
mkdir -p "$pkgdir/etc/kvmd/janus"
|
||||
chmod 755 "$pkgdir/etc/kvmd/janus"
|
||||
install -Dm444 -t "$pkgdir/etc/kvmd/janus" "$_cfg_default/janus"/*.jcfg
|
||||
|
||||
install -Dm644 -t "$pkgdir/etc/kvmd" "$_cfg_default/kvmd"/*.yaml
|
||||
install -Dm600 -t "$pkgdir/etc/kvmd" "$_cfg_default/kvmd"/*passwd
|
||||
install -Dm600 -t "$pkgdir/etc/kvmd" "$_cfg_default/kvmd"/*.secret
|
||||
install -Dm644 -t "$pkgdir/etc/kvmd" "$_cfg_default/kvmd"/web.css
|
||||
mkdir -p "$pkgdir/etc/kvmd/override.d"
|
||||
|
||||
mkdir -p "$pkgdir/var/lib/kvmd/"{msd,pst}
|
||||
}
|
||||
|
||||
|
||||
for _variant in "${_variants[@]}"; do
|
||||
_platform=${_variant%:*}
|
||||
_board=${_variant#*:}
|
||||
_base=${_platform%-*}
|
||||
_video=${_platform#*-}
|
||||
eval "package_kvmd-platform-$_platform-$_board() {
|
||||
cd \"kvmd-\$pkgver\"
|
||||
|
||||
pkgdesc=\"PiKVM platform configs - $_platform for $_board\"
|
||||
depends=(kvmd=$pkgver-$pkgrel \"linux-rpi-pikvm>=6.6.45-10\" \"raspberrypi-bootloader-pikvm>=20240818-1\")
|
||||
|
||||
backup=(
|
||||
etc/sysctl.d/99-kvmd.conf
|
||||
etc/udev/rules.d/99-kvmd.rules
|
||||
etc/kvmd/main.yaml
|
||||
)
|
||||
|
||||
if [[ $_base == v0 ]]; then
|
||||
depends=(\"\${depends[@]}\" platformio-core avrdude make patch)
|
||||
elif [[ $_base == v4plus ]]; then
|
||||
depends=(\"\${depends[@]}\" flashrom-pikvm)
|
||||
fi
|
||||
|
||||
if [[ $_platform =~ ^.*-hdmiusb$ ]]; then
|
||||
install -Dm755 -t \"\$pkgdir/usr/bin\" scripts/kvmd-udev-hdmiusb-check
|
||||
fi
|
||||
if [[ $_base == v4plus ]]; then
|
||||
install -Dm755 -t \"\$pkgdir/usr/bin\" scripts/kvmd-udev-restart-pass
|
||||
fi
|
||||
|
||||
install -DTm644 configs/os/sysctl.conf \"\$pkgdir/etc/sysctl.d/99-kvmd.conf\"
|
||||
install -DTm644 configs/os/udev/common.rules \"\$pkgdir/usr/lib/udev/rules.d/99-kvmd-common.rules\"
|
||||
install -DTm644 configs/os/udev/$_platform-$_board.rules \"\$pkgdir/etc/udev/rules.d/99-kvmd.rules\"
|
||||
install -DTm444 configs/kvmd/main/$_platform-$_board.yaml \"\$pkgdir/etc/kvmd/main.yaml\"
|
||||
|
||||
if [ -f configs/kvmd/fan/$_platform.ini ]; then
|
||||
backup=(\"\${backup[@]}\" etc/kvmd/fan.ini)
|
||||
depends=(\"\${depends[@]}\" \"kvmd-fan>=0.18\")
|
||||
install -DTm444 configs/kvmd/fan/$_platform.ini \"\$pkgdir/etc/kvmd/fan.ini\"
|
||||
fi
|
||||
|
||||
if [ -f configs/os/modules-load/$_platform.conf ]; then
|
||||
backup=(\"\${backup[@]}\" etc/modules-load.d/kvmd.conf)
|
||||
install -DTm644 configs/os/modules-load/$_platform.conf \"\$pkgdir/etc/modules-load.d/kvmd.conf\"
|
||||
fi
|
||||
|
||||
if [ -f configs/os/sudoers/$_platform ]; then
|
||||
backup=(\"\${backup[@]}\" etc/sudoers.d/99_kvmd)
|
||||
install -DTm440 configs/os/sudoers/$_platform \"\$pkgdir/etc/sudoers.d/99_kvmd\"
|
||||
chmod 750 \"\$pkgdir/etc/sudoers.d\"
|
||||
fi
|
||||
|
||||
if [[ $_platform =~ ^.*-hdmi$ ]]; then
|
||||
backup=(\"\${backup[@]}\" etc/kvmd/tc358743-edid.hex etc/kvmd/switch-edid.hex)
|
||||
install -DTm444 configs/kvmd/edid/$_base.hex \"\$pkgdir/etc/kvmd/tc358743-edid.hex\"
|
||||
ln -s tc358743-edid.hex \"\$pkgdir/etc/kvmd/switch-edid.hex\"
|
||||
else
|
||||
backup=(\"\${backup[@]}\" etc/kvmd/switch-edid.hex)
|
||||
install -DTm444 configs/kvmd/edid/_no-1920x1200.hex \"\$pkgdir/etc/kvmd/switch-edid.hex\"
|
||||
fi
|
||||
|
||||
mkdir -p \"\$pkgdir/usr/share/kvmd\"
|
||||
local _platform=\"\$pkgdir/usr/share/kvmd/platform\"
|
||||
rm -f \"\$_platform\"
|
||||
echo PIKVM_MODEL=$_base > \"\$_platform\"
|
||||
echo PIKVM_VIDEO=$_video >> \"\$_platform\"
|
||||
echo PIKVM_BOARD=$_board >> \"\$_platform\"
|
||||
chmod 444 \"\$_platform\"
|
||||
}"
|
||||
done
|
||||
129
README.md
129
README.md
@@ -4,53 +4,103 @@
|
||||
|
||||
### 介绍
|
||||
|
||||
One-KVM是基于玩客云硬件和PiKVM软件的远控设备。通过移植PiKVM该软件至玩客云设备上,实现了极高的性价比,不到百元功能即可接近甚至超越部分昂贵的商业设备。
|
||||
One-KVM 是基于廉价计算机硬件和 [PiKVM]((https://github.com/pikvm/pikvm)) 软件二次开发的 BIOS 级远程控制项目。可以实现远程管理服务器或工作站,无需在被控机安装软件调整设置,实现无侵入式控制,适用范围广泛。
|
||||
|
||||
该软件可以帮助用户通过得到控制设备的HDMI 画面和鼠标键盘,去远程管理服务器、工作站或个人PC等。 和基于软件的远程管理方式不同,无需在被控电脑安装任何软件,实现无侵入式控制。
|
||||
使用文档:[https://one-kvm.mofeng.run](https://one-kvm.mofeng.run)
|
||||
|
||||
该项目基于PiKVM和Fruity PiKVM,提供了玩客云兼容PiKVM操作的自动处理脚本。
|
||||
演示网站:[https://kvmd-demo.mofeng.run](https://kvmd-demo.mofeng.run)
|
||||
|
||||

|
||||

|
||||
|
||||
**功能特性**
|
||||
### 软件功能
|
||||
|
||||

|
||||
表格仅为 One-KVM 与其他基于 PiKVM 的项目的功能对比,无不良导向,如有错漏请联系更正。
|
||||
|
||||
| 功能 | One-KVM | PiKVM | ArmKVM | BLIKVM |
|
||||
| :-------------------: | :-------------: | :-----------------------: | :---------: | :---------: |
|
||||
| 系统开源 | √ | √ | √ | √ |
|
||||
| 简体中文 WebUI | √ | x | √ | √ |
|
||||
| 远程视频流 | MJPEG/H.264 | MJPEG/H.264 | MJPEG/H.264 | MJPEG/H.264 |
|
||||
| H.264 视频编码 | CPU | GPU | 未知 | GPU |
|
||||
| 远程音频流 | √ | √ | √ | √ |
|
||||
| 远程鼠键控制 | OTG/CH9329 | OTG/CH9329/Pico/Bluetooth | OTG | OTG |
|
||||
| VNC 控制 | √ | √ | √ | √ |
|
||||
| ATX 电源控制 | GPIO/USB 继电器 | GPIO | GPIO | GPIO |
|
||||
| 虚拟存储驱动器挂载 | √ | √ | √ | √ |
|
||||
| 2.2G 以上 CD-ROM 挂载 | x | x | √ | √ |
|
||||
| WOL 远程唤醒 | √ | √ | √ | √ |
|
||||
| 网页剪切板 | √ | √ | √ | √ |
|
||||
| OCR 文字识别 | √ | √ | √ | √ |
|
||||
| 网页终端 | √ | √ | √ | √ |
|
||||
| 网络串口终端 | x | x | √ | √ |
|
||||
| HDMI 切换器支持 | √ | √ | √ | √ |
|
||||
| 视频录制 | √ | x | x | x |
|
||||
| Docker 部署 | √ | x | x | x |
|
||||
| 官方商业化成品 | x | √ | √ | √ |
|
||||
| 技术支持 | √ | √ | √ | √ |
|
||||
|
||||
### 快速开始
|
||||
|
||||
**方式一:直刷One-KVM镜像**
|
||||
更多详细内容可以查阅 [One-KVM文档](https://one-kvm.mofeng.run/)。
|
||||
|
||||
本项目Releases页可以找到包含PiKVM的预编译镜像,内核版本为5.9.0-rc7。镜像名称带One-KVM前缀、burn后缀的为线刷镜像,可使用USB_Burning_Tool软件线刷至玩客云。预编译线刷镜像为开箱即用,刷好后启动设备就可以开始使用One-KVM。
|
||||
**方式一:Docker 镜像部署(推荐)**
|
||||
|
||||
**方式二:One-KVM脚本安装**
|
||||
Docker 版本可以使用 OTG 或 CH9329 作为虚拟 HID ,支持 amd64、arm64、armv7 架构的 Linux 系统安装。
|
||||
|
||||
一键脚本适用于玩客云Armbian 22.11.0-trunk Jammy Linux onecloud 5.10.xxx(如5.10.149 5.10.158)镜像。如若使用此项目发布的Armbian基础镜像,需注释掉脚本尾部的两个函数`override-uboot` `change-device-tree`。
|
||||
**脚本部署**
|
||||
|
||||
```bash
|
||||
git clone https://github.com/mofeng-git/One-KVM.git
|
||||
cd One-KVM && ./install.sh
|
||||
|
||||
#对于大陆网络环境,可以尝试使用下命令
|
||||
wget https://mirror.ghproxy.com/https://github.com/mofeng-git/One-KVM/archive/refs/heads/main.zip -o One-KVM-main.zip && unzip One-KVM-main.zip
|
||||
cd One-KVM-main && ./install.sh
|
||||
curl -sSL https://one-kvm.mofeng.run/quick_start.sh -o quick_start.sh && bash quick_start.sh
|
||||
```
|
||||
**方式三:docker镜像部署**
|
||||
|
||||
目前仅有pikvm-ch9329_amd64,后续将支持更多控制方式和处理器架构。
|
||||
**手动部署**
|
||||
|
||||
如果使用 OTG 作为虚拟 HID,可以使用如下部署命令:
|
||||
```bash
|
||||
#使用示例:
|
||||
docker run -itd -p443:443 -p80:80 --name pikvm-docker --device=/dev/ttyUSB0:/dev/kvmd-hid --device=/dev/video0:/dev/kvmd-video pikvm-ch9329:0.61
|
||||
sudo docker run --name kvmd -itd --privileged=true \
|
||||
-v /lib/modules:/lib/modules:ro -v /dev:/dev \
|
||||
-v /sys/kernel/config:/sys/kernel/config -e OTG=1 \
|
||||
-p 8080:8080 -p 4430:4430 -p 5900:5900 -p 623:623 \
|
||||
silentwind0/kvmd
|
||||
```
|
||||
|
||||
详细内容可以参照飞书文档:[One-KVM使用文档](https://p1b237lu9xm.feishu.cn/drive/folder/IsOifWmMKlzYpRdWfcocI7jdnQA?from=from_copylink)
|
||||
如果使用 CH9329 作为虚拟 HID,可以使用如下部署命令:
|
||||
```bash
|
||||
sudo docker run --name kvmd -itd \
|
||||
--device /dev/video0:/dev/video0 \
|
||||
--device /dev/ttyUSB0:/dev/ttyUSB0 \
|
||||
--device /dev/snd:/dev/snd \
|
||||
-p 8080:8080 -p 4430:4430 -p 5900:5900 -p 623:623 \
|
||||
silentwind0/kvmd
|
||||
```
|
||||
|
||||
### 其他
|
||||
**方式二:直刷 One-KVM 整合包**
|
||||
|
||||
对于部分平台硬件,本项目制作了深度适配的 One-KVM 打包镜像,开箱即用,刷好后启动设备就可以开始使用 One-KVM。免费 One-KVM 整合包也可以在本项目 Releases 页可以找到。
|
||||
|
||||
| 整合包适配概况 | | | |
|
||||
| :-------------: | :-------------: | :-------------: | :-------------: |
|
||||
| **固件型号** | **固件代号** | **硬件情况** | **最新版本** |
|
||||
| 玩客云 | Onecloud | USB 采集卡、OTG | 241018 |
|
||||
| 私家云二代 | Cumebox2 | USB 采集卡、OTG | 241004 |
|
||||
| Vmare | Vmare-uefi | USB 采集卡、CH9329 | 241004 |
|
||||
| Virtualbox | Virtualbox-uefi | USB 采集卡、CH9329 | 241004 |
|
||||
| s905l3a 通用包 | E900v22c | USB 采集卡、OTG | 241004 |
|
||||
| 我家云 | Chainedbox | USB 采集卡、OTG | 241004 |
|
||||
| 龙芯久久派 | 2k0300 | USB 采集卡、CH9329 | 241025 |
|
||||
|
||||
### 赞助方式
|
||||
|
||||
这个项目基于众多开源项目二次开发,作者为此花费了大量的时间和精力进行测试和维护。若此项目对您有用,您可以考虑通过 **[为爱发电](https://afdian.com/a/silentwind)** 赞助一笔小钱支持作者。作者将能有更多的金钱来测试和维护 One-KVM 的各种配置,并在项目上投入更多的时间和精力。
|
||||
|
||||
**感谢名单**
|
||||
|
||||
<details>
|
||||
|
||||
浩龙的电子嵌入式之路(赞助)
|
||||
|
||||
Tsuki(赞助)
|
||||
|
||||
H_xiaoming
|
||||
|
||||
0蓝蓝0
|
||||
@@ -65,13 +115,38 @@ Will
|
||||
|
||||
观棋不语٩ ི۶
|
||||
|
||||
以及各位讨论交流的网友
|
||||
爱发电用户_a57a4
|
||||
|
||||
爱发电用户_2c769
|
||||
|
||||
霜序
|
||||
|
||||
[远方](https://runyf.cn/)(闲鱼用户名:小远技术店铺)
|
||||
|
||||
爱发电用户_399fc
|
||||
|
||||
[斐斐の](https://www.mmuaa.com/)
|
||||
|
||||
爱发电用户_09451
|
||||
|
||||
超高校级的錆鱼
|
||||
|
||||
爱发电用户_08cff
|
||||
|
||||
guoke
|
||||
|
||||
mgt
|
||||
|
||||
......
|
||||
</details>
|
||||
|
||||
本项目间接或直接使用了下下列开源项目:
|
||||
本项目使用了下列开源项目:
|
||||
1. [pikvm/pikvm: Open and inexpensive DIY IP-KVM based on Raspberry Pi (github.com)](https://github.com/pikvm/pikvm)
|
||||
2. [hzyitc/armbian-onecloud: Armbian for onecloud. 玩客云用armbian (github.com)](https://github.com/hzyitc/armbian-onecloud/)
|
||||
3. [jacobbar/fruity-pikvm: Install Pi-KVM on debian SBCs such as Orange Pi, Banana Pi, Mango Pi, etc (github.com)](https://github.com/jacobbar/fruity-pikvm)
|
||||
|
||||
|
||||
### 项目状态
|
||||
|
||||
[](https://star-history.com/#mofeng-git/One-KVM&Date)
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
81
build/Dockerfile
Normal file
81
build/Dockerfile
Normal file
@@ -0,0 +1,81 @@
|
||||
FROM registry.cn-hangzhou.aliyuncs.com/silentwind/kvmd-stage-0 AS builder
|
||||
|
||||
FROM python:3.11.11-slim-bookworm
|
||||
|
||||
LABEL maintainer="mofeng654321@hotmail.com"
|
||||
|
||||
COPY --from=builder /tmp/lib/* /tmp/lib/
|
||||
COPY --from=builder /tmp/ustreamer/ustreamer /tmp/ustreamer/ustreamer-dump /usr/bin/janus /usr/bin/
|
||||
COPY --from=builder /tmp/wheel/*.whl /tmp/wheel/
|
||||
COPY --from=builder /tmp/ustreamer/libjanus_ustreamer.so /usr/lib/ustreamer/janus/
|
||||
COPY --from=builder /usr/lib/janus/transports/* /usr/lib/janus/transports/
|
||||
|
||||
ARG TARGETARCH
|
||||
|
||||
ENV PYTHONDONTWRITEBYTECODE=1 \
|
||||
PYTHONUNBUFFERED=1 \
|
||||
TZ=Asia/Shanghai
|
||||
|
||||
RUN sed -i 's/deb.debian.org/mirrors.tuna.tsinghua.edu.cn/' /etc/apt/sources.list.d/debian.sources \
|
||||
&& apt-get update \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
libxkbcommon-x11-0 \
|
||||
nginx \
|
||||
tesseract-ocr \
|
||||
tesseract-ocr-eng \
|
||||
tesseract-ocr-chi-sim \
|
||||
iptables \
|
||||
sudo \
|
||||
curl \
|
||||
kmod \
|
||||
libmicrohttpd12 \
|
||||
libjansson4 \
|
||||
libssl3 \
|
||||
libsofia-sip-ua0 \
|
||||
libglib2.0-0 \
|
||||
libopus0 \
|
||||
libogg0 \
|
||||
libcurl4 \
|
||||
libconfig9 \
|
||||
libusrsctp2 \
|
||||
libwebsockets17 \
|
||||
libnss3 \
|
||||
libasound2 \
|
||||
nano \
|
||||
&& cp /tmp/lib/* /lib/*-linux-*/ \
|
||||
&& pip install --no-cache-dir --root-user-action=ignore --disable-pip-version-check /tmp/wheel/*.whl \
|
||||
&& pip install --no-cache-dir --root-user-action=ignore --disable-pip-version-check pyfatfs \
|
||||
&& if [ ${TARGETARCH} = arm ]; then ARCH=armhf; \
|
||||
elif [ ${TARGETARCH} = arm64 ]; then ARCH=aarch64; \
|
||||
elif [ ${TARGETARCH} = amd64 ]; then ARCH=x86_64; \
|
||||
fi \
|
||||
&& curl https://github.com/tsl0922/ttyd/releases/download/1.7.7/ttyd.$ARCH -L -o /usr/local/bin/ttyd \
|
||||
&& chmod +x /usr/local/bin/ttyd \
|
||||
&& adduser kvmd --gecos "" --disabled-password \
|
||||
&& ln -sf /usr/share/tesseract-ocr/*/tessdata /usr/share/tessdata \
|
||||
&& mkdir -p /etc/kvmd_backup/override.d \
|
||||
/var/lib/kvmd/msd/images \
|
||||
/var/lib/kvmd/msd/meta \
|
||||
/var/lib/kvmd/pst/data \
|
||||
/var/lib/kvmd/msd/NormalFiles \
|
||||
/opt/vc/bin \
|
||||
/run/kvmd \
|
||||
/tmp/kvmd-nginx \
|
||||
&& touch /run/kvmd/ustreamer.sock \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& rm -rf /tmp/lib /tmp/wheel
|
||||
|
||||
COPY testenv/fakes/vcgencmd scripts/kvmd* /usr/bin/
|
||||
COPY extras/ /usr/share/kvmd/extras/
|
||||
COPY web/ /usr/share/kvmd/web/
|
||||
COPY scripts/kvmd-gencert /usr/share/kvmd/
|
||||
COPY build/platform/docker /usr/share/kvmd/platform
|
||||
COPY contrib/keymaps /usr/share/kvmd/keymaps
|
||||
COPY kvmd/ build/init.sh /kvmd/
|
||||
COPY configs/kvmd/ /etc/kvmd_backup/
|
||||
COPY configs/nginx/ /etc/kvmd_backup/nginx/
|
||||
COPY configs/janus/ /etc/kvmd_backup/janus/
|
||||
COPY configs/hw_info/ /etc/kvmd_backup/hw_info/
|
||||
COPY testenv/js/ /usr/share/janus/javascript/
|
||||
|
||||
ENTRYPOINT ["/kvmd/init.sh"]
|
||||
118
build/Dockerfile-stage-0
Normal file
118
build/Dockerfile-stage-0
Normal file
@@ -0,0 +1,118 @@
|
||||
# syntax = docker/dockerfile:experimental
|
||||
FROM debian:bookworm-slim AS builder
|
||||
|
||||
ARG TARGETARCH
|
||||
|
||||
# 设置环境变量
|
||||
ENV DEBIAN_FRONTEND=noninteractive \
|
||||
PIP_NO_CACHE_DIR=1 \
|
||||
RUSTUP_DIST_SERVER="https://mirrors.tuna.tsinghua.edu.cn/rustup"
|
||||
|
||||
# 更新源并安装依赖
|
||||
RUN sed -i 's/deb.debian.org/mirrors.tuna.tsinghua.edu.cn/' /etc/apt/sources.list.d/debian.sources \
|
||||
&& apt-get update \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
python3-full \
|
||||
python3-pip \
|
||||
python3-dev \
|
||||
build-essential \
|
||||
libssl-dev \
|
||||
libffi-dev \
|
||||
python3-dev \
|
||||
libevent-dev \
|
||||
libjpeg-dev \
|
||||
libbsd-dev \
|
||||
libudev-dev \
|
||||
git \
|
||||
pkg-config \
|
||||
wget \
|
||||
curl \
|
||||
libmicrohttpd-dev \
|
||||
libjansson-dev \
|
||||
libsofia-sip-ua-dev \
|
||||
libglib2.0-dev \
|
||||
libopus-dev \
|
||||
libogg-dev \
|
||||
libcurl4-openssl-dev \
|
||||
liblua5.3-dev \
|
||||
libconfig-dev \
|
||||
libtool \
|
||||
automake \
|
||||
autoconf \
|
||||
meson \
|
||||
cmake \
|
||||
libx264-dev \
|
||||
libyuv-dev \
|
||||
libasound2-dev \
|
||||
libspeex-dev \
|
||||
libspeexdsp-dev \
|
||||
libusb-1.0-0-dev \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
COPY build/cargo_config /tmp/config
|
||||
|
||||
# 配置 pip 源并安装 Python 依赖
|
||||
RUN --security=insecure pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple \
|
||||
&& if [ ${TARGETARCH} = arm ]; then \
|
||||
mkdir -p /root/.cargo \
|
||||
&& chmod 777 /root/.cargo && mount -t tmpfs none /root/.cargo \
|
||||
&& wget https://sh.rustup.rs -O /root/rustup-init.sh \
|
||||
&& sh /root/rustup-init.sh -y \
|
||||
&& export PATH=$PATH:/root/.cargo/bin \
|
||||
&& cp /tmp/config /root/.cargo/config.toml; \
|
||||
fi \
|
||||
&& pip install --root-user-action=ignore --disable-pip-version-check --upgrade --break-system-packages build setuptools pip \
|
||||
&& pip wheel --wheel-dir=/tmp/wheel/ cryptography \
|
||||
&& pip wheel --wheel-dir=/tmp/wheel/ \
|
||||
aiofiles aiohttp appdirs asn1crypto async_lru async-timeout bottle cffi \
|
||||
chardet click colorama dbus_next gpiod hidapi idna mako marshmallow \
|
||||
more-itertools multidict netifaces packaging passlib pillow ply psutil \
|
||||
pycparser pyelftools pyghmi pygments pyparsing pyotp qrcode requests \
|
||||
semantic-version setproctitle six spidev tabulate urllib3 wrapt xlib \
|
||||
yarl pyserial pyyaml zstandard supervisor
|
||||
|
||||
# 编译安装 libnice、libsrtp、libwebsockets 和 janus-gateway
|
||||
RUN git clone --depth=1 https://gitlab.freedesktop.org/libnice/libnice /tmp/libnice \
|
||||
&& cd /tmp/libnice \
|
||||
&& meson --prefix=/usr build && ninja -C build && ninja -C build install \
|
||||
&& rm -rf /tmp/libnice \
|
||||
&& curl https://github.com/cisco/libsrtp/archive/v2.2.0.tar.gz -L -o /tmp/libsrtp-2.2.0.tar.gz \
|
||||
&& cd /tmp \
|
||||
&& tar xf libsrtp-2.2.0.tar.gz \
|
||||
&& cd libsrtp-2.2.0 \
|
||||
&& ./configure --prefix=/usr --enable-openssl \
|
||||
&& make shared_library && make install \
|
||||
&& cd /tmp \
|
||||
&& rm -rf /tmp/libsrtp* \
|
||||
&& git clone --depth=1 https://libwebsockets.org/repo/libwebsockets /tmp/libwebsockets \
|
||||
&& cd /tmp/libwebsockets \
|
||||
&& mkdir build && cd build \
|
||||
&& cmake -DLWS_MAX_SMP=1 -DLWS_WITHOUT_EXTENSIONS=0 -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_C_FLAGS="-fpic" .. \
|
||||
&& make && make install \
|
||||
&& cd /tmp \
|
||||
&& rm -rf /tmp/libwebsockets \
|
||||
&& git clone --depth=1 https://github.com/meetecho/janus-gateway.git /tmp/janus-gateway \
|
||||
&& cd /tmp/janus-gateway \
|
||||
&& sh autogen.sh \
|
||||
&& ./configure --enable-static --enable-websockets --enable-plugin-audiobridge \
|
||||
--disable-data-channels --disable-rabbitmq --disable-mqtt --disable-all-plugins \
|
||||
--disable-all-loggers --prefix=/usr \
|
||||
&& make && make install \
|
||||
&& cd /tmp \
|
||||
&& rm -rf /tmp/janus-gateway
|
||||
|
||||
# 编译 ustreamer
|
||||
RUN sed --in-place --expression 's|^#include "refcount.h"$|#include "../refcount.h"|g' /usr/include/janus/plugins/plugin.h \
|
||||
&& git clone --depth=1 https://github.com/mofeng-git/ustreamer /tmp/ustreamer \
|
||||
&& sed -i '68s/-Wl,-Bstatic//' /tmp/ustreamer/src/Makefile \
|
||||
&& make -j WITH_PYTHON=1 WITH_JANUS=1 WITH_LIBX264=1 -C /tmp/ustreamer \
|
||||
&& /tmp/ustreamer/ustreamer -v \
|
||||
&& cp /tmp/ustreamer/python/dist/*.whl /tmp/wheel/
|
||||
|
||||
# 复制必要的库文件
|
||||
RUN mkdir /tmp/lib \
|
||||
&& cd /lib/*-linux-*/ \
|
||||
&& cp libevent_core-*.so.7 libbsd.so.0 libevent_pthreads-*.so.7 libspeexdsp.so.1 \
|
||||
libevent-*.so.7 libjpeg.so.62 libx264.so.164 libyuv.so.0 libnice.so.10 \
|
||||
/usr/lib/libsrtp2.so.1 /usr/lib/libwebsockets.so.19 \
|
||||
/tmp/lib/
|
||||
331
build/build_img.sh
Normal file
331
build/build_img.sh
Normal file
@@ -0,0 +1,331 @@
|
||||
#!/bin/bash
|
||||
# ========================================================================== #
|
||||
# #
|
||||
# KVMD - The main PiKVM daemon. #
|
||||
# #
|
||||
# Copyright (C) 2023-2025 SilentWind <mofeng654321@hotmail.com> #
|
||||
# #
|
||||
# This program is free software: you can redistribute it and/or modify #
|
||||
# it under the terms of the GNU General Public License as published by #
|
||||
# the Free Software Foundation, either version 3 of the License, or #
|
||||
# (at your option) any later version. #
|
||||
# #
|
||||
# This program is distributed in the hope that it will be useful, #
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||
# GNU General Public License for more details. #
|
||||
# #
|
||||
# You should have received a copy of the GNU General Public License #
|
||||
# along with this program. If not, see <https://www.gnu.org/licenses/>. #
|
||||
# #
|
||||
# ========================================================================== #
|
||||
|
||||
SRCPATH=/mnt/nas/src
|
||||
BOOTFS=/tmp/bootfs
|
||||
ROOTFS=/tmp/rootfs
|
||||
OUTPUTDIR=/mnt/nas/src/output
|
||||
LOOPDEV=/dev/loop10
|
||||
DATE=241204
|
||||
export LC_ALL=C
|
||||
|
||||
write_meta() {
|
||||
sudo chroot --userspec "root:root" $ROOTFS bash -c "sed -i 's/localhost.localdomain/$1/g' /etc/kvmd/meta.yaml"
|
||||
}
|
||||
|
||||
mount_rootfs() {
|
||||
mkdir $ROOTFS
|
||||
sudo mount $LOOPDEV $ROOTFS || exit -1
|
||||
sudo mount -t proc proc $ROOTFS/proc || exit -1
|
||||
sudo mount -t sysfs sys $ROOTFS/sys || exit -1
|
||||
sudo mount -o bind /dev $ROOTFS/dev || exit -1
|
||||
}
|
||||
|
||||
umount_rootfs() {
|
||||
sudo umount $ROOTFS/sys
|
||||
sudo umount $ROOTFS/dev
|
||||
sudo umount $ROOTFS/proc
|
||||
sudo umount $ROOTFS
|
||||
sudo losetup -d $LOOPDEV
|
||||
}
|
||||
|
||||
parpare_dns() {
|
||||
sudo chroot --userspec "root:root" $ROOTFS bash -c " \
|
||||
mkdir -p /run/systemd/resolve/ \
|
||||
&& touch /run/systemd/resolve/stub-resolv.conf \
|
||||
&& printf '%s\n' 'nameserver 1.1.1.1' 'nameserver 1.0.0.1' > /etc/resolv.conf \
|
||||
&& bash <(curl -sSL https://gitee.com/SuperManito/LinuxMirrors/raw/main/ChangeMirrors.sh) \
|
||||
--source mirrors.tuna.tsinghua.edu.cn --updata-software false --web-protocol http "
|
||||
}
|
||||
|
||||
delete_armbain_verify(){
|
||||
sudo chroot --userspec "root:root" $ROOTFS bash -c "echo 'deb http://mirrors.ustc.edu.cn/armbian bullseye main bullseye-utils bullseye-desktop' > /etc/apt/sources.list.d/armbian.list "
|
||||
}
|
||||
|
||||
config_file() {
|
||||
sudo mkdir -p $ROOTFS/etc/kvmd/override.d $ROOTFS/etc/kvmd/vnc $ROOTFS/var/lib/kvmd/msd $ROOTFS/opt/vc/bin $ROOTFS/usr/share/kvmd $ROOTFS/One-KVM \
|
||||
$ROOTFS/usr/share/janus/javascript $ROOTFS/usr/lib/ustreamer/janus $ROOTFS/run/kvmd $ROOTFS/var/lib/kvmd/msd/images $ROOTFS/var/lib/kvmd/msd/meta
|
||||
sudo rsync -a --exclude={src,.github} . $ROOTFS/One-KVM
|
||||
sudo cp -r configs/kvmd/* configs/nginx configs/janus $ROOTFS/etc/kvmd
|
||||
sudo cp -r web extras contrib/keymaps $ROOTFS/usr/share/kvmd
|
||||
sudo cp testenv/fakes/vcgencmd $ROOTFS/usr/bin/
|
||||
sudo cp -r testenv/js/* $ROOTFS/usr/share/janus/javascript/
|
||||
sudo cp build/platform/$1 $ROOTFS/usr/share/kvmd/platform
|
||||
if [ -f "$SRCPATH/image/$1/rc.local" ]; then
|
||||
sudo cp $SRCPATH/image/$1/rc.local $ROOTFS/etc/
|
||||
fi
|
||||
}
|
||||
|
||||
pack_img() {
|
||||
sudo mv $SRCPATH/tmp/rootfs.img $OUTPUTDIR/One-KVM_by-SilentWind_$1_$DATE.img
|
||||
if [ "$1" = "Vm" ]; then
|
||||
sudo qemu-img convert -f raw -O vmdk $OUTPUTDIR/One-KVM_by-SilentWind_Vm_$DATE.img $OUTPUTDIR/One-KVM_by-SilentWind_Vmare-uefi_$DATE.vmdk
|
||||
sudo qemu-img convert -f raw -O vdi $OUTPUTDIR/One-KVM_by-SilentWind_Vm_$DATE.img $OUTPUTDIR/One-KVM_by-SilentWind_Virtualbox-uefi_$DATE.vdi
|
||||
fi
|
||||
}
|
||||
|
||||
onecloud_rootfs() {
|
||||
$SRCPATH/image/onecloud/AmlImg_v0.3.1_linux_amd64 unpack $SRCPATH/image/onecloud/Armbian_by-SilentWind_24.5.0-trunk_Onecloud_bookworm_legacy_5.9.0-rc7_minimal.burn.img $SRCPATH/tmp
|
||||
simg2img $SRCPATH/tmp/6.boot.PARTITION.sparse $SRCPATH/tmp/bootfs.img
|
||||
simg2img $SRCPATH/tmp/7.rootfs.PARTITION.sparse $SRCPATH/tmp/rootfs.img
|
||||
mkdir $BOOTFS
|
||||
sudo losetup $LOOPDEV $SRCPATH/tmp/bootfs.img || exit -1
|
||||
sudo mount $LOOPDEV $BOOTFS
|
||||
sudo cp $SRCPATH/image/onecloud/meson8b-onecloud-fix.dtb $BOOTFS/dtb/meson8b-onecloud.dtb
|
||||
sudo umount $BOOTFS
|
||||
sudo losetup -d $LOOPDEV
|
||||
dd if=/dev/zero of=/tmp/add.img bs=1M count=1024 && cat /tmp/add.img >> $SRCPATH/tmp/rootfs.img && rm /tmp/add.img
|
||||
e2fsck -f $SRCPATH/tmp/rootfs.img && resize2fs $SRCPATH/tmp/rootfs.img
|
||||
sudo losetup $LOOPDEV $SRCPATH/tmp/rootfs.img
|
||||
}
|
||||
|
||||
cumebox2_rootfs() {
|
||||
cp $SRCPATH/image/cumebox2/Armbian_24.8.1_Khadas-vim1_bookworm_current_6.6.47_minimal.img $SRCPATH/tmp/rootfs.img
|
||||
dd if=/dev/zero of=/tmp/add.img bs=1M count=1500 && cat /tmp/add.img >> $SRCPATH/tmp/rootfs.img && rm /tmp/add.img
|
||||
sudo parted -s $SRCPATH/tmp/rootfs.img resizepart 1 100% || exit -1
|
||||
sudo losetup --offset $((8192*512)) $LOOPDEV $SRCPATH/tmp/rootfs.img || exit -1
|
||||
sudo e2fsck -f $LOOPDEV && sudo resize2fs $LOOPDEV
|
||||
}
|
||||
|
||||
chainedbox_rootfs_and_fix_dtb() {
|
||||
cp $SRCPATH/image/chainedbox/Armbian_24.11.0_rockchip_chainedbox_bookworm_6.1.112_server_2024.10.02_add800m.img $SRCPATH/tmp/rootfs.img
|
||||
mkdir $BOOTFS
|
||||
sudo losetup --offset $((32768*512)) $LOOPDEV $SRCPATH/tmp/rootfs.img || exit -1
|
||||
sudo mount $LOOPDEV $BOOTFS
|
||||
sudo cp $SRCPATH/image/chainedbox/rk3328-l1pro-1296mhz-fix.dtb $BOOTFS/dtb/rockchip/rk3328-l1pro-1296mhz.dtb
|
||||
sudo umount $BOOTFS
|
||||
sudo losetup -d $LOOPDEV
|
||||
sudo losetup --offset $((1081344*512)) $LOOPDEV $SRCPATH/tmp/rootfs.img
|
||||
}
|
||||
|
||||
vm_rootfs() {
|
||||
cp $SRCPATH/image/vm/Armbian_24.8.1_Uefi-x86_bookworm_current_6.6.47_minimal_add1g.img $SRCPATH/tmp/rootfs.img
|
||||
sudo losetup --offset $((540672*512)) $LOOPDEV $SRCPATH/tmp/rootfs.img || exit -1
|
||||
}
|
||||
|
||||
e900v22c_rootfs() {
|
||||
cp $SRCPATH/image/e900v22c/Armbian_23.08.0_amlogic_s905l3a_bookworm_5.15.123_server_2023.08.01.img $SRCPATH/tmp/rootfs.img
|
||||
dd if=/dev/zero of=/tmp/add.img bs=1M count=400 && cat /tmp/add.img >> $SRCPATH/tmp/rootfs.img && rm /tmp/add.img
|
||||
sudo parted -s $SRCPATH/tmp/rootfs.img resizepart 2 100% || exit -1
|
||||
sudo losetup --offset $((532480*512)) $LOOPDEV $SRCPATH/tmp/rootfs.img || exit -1
|
||||
sudo e2fsck -f $LOOPDEV && sudo resize2fs $LOOPDEV
|
||||
}
|
||||
|
||||
|
||||
octopus-flanet_rootfs() {
|
||||
cp $SRCPATH/image/octopus-flanet/Armbian_24.11.0_amlogic_s912_bookworm_6.1.114_server_2024.11.01.img $SRCPATH/tmp/rootfs.img
|
||||
mkdir $BOOTFS
|
||||
sudo losetup --offset $((8192*512)) $LOOPDEV $SRCPATH/tmp/rootfs.img || exit -1
|
||||
sudo mount $LOOPDEV $BOOTFS
|
||||
sudo sed -i "s/meson-gxm-octopus-planet.dtb/meson-gxm-khadas-vim2.dtb/g" $BOOTFS/uEnv.txt
|
||||
sudo umount $BOOTFS
|
||||
sudo losetup -d $LOOPDEV
|
||||
dd if=/dev/zero of=/tmp/add.img bs=1M count=400 && cat /tmp/add.img >> $SRCPATH/tmp/rootfs.img && rm /tmp/add.img
|
||||
sudo parted -s $SRCPATH/tmp/rootfs.img resizepart 2 100% || exit -1
|
||||
sudo losetup --offset $((1056768*512)) $LOOPDEV $SRCPATH/tmp/rootfs.img || exit -1
|
||||
sudo e2fsck -f $LOOPDEV && sudo resize2fs $LOOPDEV
|
||||
}
|
||||
|
||||
|
||||
config_cumebox2_file() {
|
||||
sudo mkdir $ROOTFS/etc/oled
|
||||
sudo cp $SRCPATH/image/cumebox2/v-fix.dtb $ROOTFS/boot/dtb/amlogic/meson-gxl-s905x-khadas-vim.dtb
|
||||
sudo cp $SRCPATH/image/cumebox2/ssd $ROOTFS/usr/bin/
|
||||
sudo cp $SRCPATH/image/cumebox2/config.json $ROOTFS/etc/oled/config.json
|
||||
}
|
||||
|
||||
config_octopus-flanet_file() {
|
||||
sudo cp $SRCPATH/image/octopus-flanet/model_database.conf $ROOTFS/etc/model_database.conf
|
||||
}
|
||||
|
||||
instal_one-kvm() {
|
||||
#$1 arch; $2 deivce: "gpio" or "video1"; $3 network: "systemd-networkd",default is network-manager
|
||||
sudo chroot --userspec "root:root" $ROOTFS bash -c " \
|
||||
df -h \
|
||||
&& apt-get update \
|
||||
&& apt-get install -y python3-aiofiles python3-aiohttp python3-appdirs python3-asn1crypto python3-async-timeout \
|
||||
python3-bottle python3-cffi python3-chardet python3-click python3-colorama python3-cryptography python3-dateutil \
|
||||
python3-dbus python3-dev python3-hidapi python3-hid python3-idna python3-libgpiod python3-mako python3-marshmallow python3-more-itertools \
|
||||
python3-multidict python3-netifaces python3-packaging python3-passlib python3-pillow python3-ply python3-psutil \
|
||||
python3-pycparser python3-pyelftools python3-pyghmi python3-pygments python3-pyparsing python3-requests \
|
||||
python3-semantic-version python3-setproctitle python3-setuptools python3-six python3-spidev python3-systemd \
|
||||
python3-tabulate python3-urllib3 python3-wrapt python3-xlib python3-yaml python3-yarl python3-pyotp python3-qrcode \
|
||||
python3-serial python3-zstandard python3-dbus-next python3-pip python3-dev python3-build python3-wheel \
|
||||
nginx net-tools tesseract-ocr tesseract-ocr-eng tesseract-ocr-chi-sim cpufrequtils iptables network-manager \
|
||||
git gpiod libxkbcommon0 build-essential janus-dev libssl-dev libffi-dev libevent-dev libjpeg-dev libbsd-dev libudev-dev \
|
||||
pkg-config libx264-dev libyuv-dev libasound2-dev libsndfile-dev libspeexdsp-dev \
|
||||
&& rm -rf /var/lib/apt/lists/* "
|
||||
|
||||
sudo chroot --userspec "root:root" $ROOTFS sed --in-place --expression 's|^#include "refcount.h"$|#include "../refcount.h"|g' /usr/include/janus/plugins/plugin.h
|
||||
|
||||
sudo chroot --userspec "root:root" $ROOTFS bash -c " \
|
||||
git clone --depth=1 https://github.com/mofeng-git/ustreamer /tmp/ustreamer \
|
||||
&& make -j WITH_PYTHON=1 WITH_JANUS=1 WITH_LIBX264=1 -C /tmp/ustreamer \
|
||||
&& cp /tmp/ustreamer/src/ustreamer.bin /usr/bin/ustreamer \
|
||||
&& cp /tmp/ustreamer/src/ustreamer-dump.bin /usr/bin/ustreamer-dump \
|
||||
&& chmod +x /usr/bin/ustreamer /usr/bin/ustreamer-dump \
|
||||
&& cp /tmp/ustreamer/janus/libjanus_ustreamer.so /usr/lib/ustreamer/janus \
|
||||
&& pip3 install --target=/usr/lib/python3/dist-packages --break-system-packages /tmp/ustreamer/python/dist/*.whl "
|
||||
|
||||
if [ "$3" = "systemd-networkd" ]; then
|
||||
sudo chroot --userspec "root:root" $ROOTFS bash -c " \
|
||||
echo -e '[Match]\nName=eth0\n\n[Network]\nDHCP=yes\n\n[Link]\nMACAddress=B6:AE:B3:21:42:0C' > /etc/systemd/network/99-eth0.network \
|
||||
&& systemctl mask NetworkManager \
|
||||
&& systemctl unmask systemd-networkd \
|
||||
&& systemctl enable systemd-networkd systemd-resolved "
|
||||
fi
|
||||
sudo chroot --userspec "root:root" $ROOTFS bash -c " \
|
||||
pip3 config set global.index-url https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple \
|
||||
&& pip3 install --target=/usr/lib/python3/dist-packages --break-system-packages async-lru gpiod pyfatfs \
|
||||
&& pip3 cache purge "
|
||||
|
||||
sudo chroot --userspec "root:root" $ROOTFS bash -c " \
|
||||
cd /One-KVM \
|
||||
&& python3 setup.py install \
|
||||
&& bash scripts/kvmd-gencert --do-the-thing \
|
||||
&& bash scripts/kvmd-gencert --do-the-thing --vnc \
|
||||
&& kvmd-nginx-mkconf /etc/kvmd/nginx/nginx.conf.mako /etc/kvmd/nginx/nginx.conf \
|
||||
&& kvmd -m "
|
||||
|
||||
sudo chroot --userspec "root:root" $ROOTFS bash -c " \
|
||||
cat /One-KVM/configs/os/sudoers/v2-hdmiusb >> /etc/sudoers \
|
||||
&& cat /One-KVM/configs/os/udev/v2-hdmiusb-generic.rules > /etc/udev/rules.d/99-kvmd.rules \
|
||||
&& echo 'libcomposite' >> /etc/modules \
|
||||
&& mv /usr/local/bin/kvmd* /usr/bin \
|
||||
&& cp /One-KVM/configs/os/services/* /etc/systemd/system/ \
|
||||
&& cp /One-KVM/configs/os/tmpfiles.conf /usr/lib/tmpfiles.d/ \
|
||||
&& chmod +x /etc/update-motd.d/* \
|
||||
&& echo 'kvmd ALL=(ALL) NOPASSWD: /etc/kvmd/custom_atx/gpio.sh' >> /etc/sudoers \
|
||||
&& echo 'kvmd ALL=(ALL) NOPASSWD: /etc/kvmd/custom_atx/usbrelay_hid.sh' >> /etc/sudoers \
|
||||
&& systemd-sysusers /One-KVM/configs/os/sysusers.conf \
|
||||
&& systemd-sysusers /One-KVM/configs/os/kvmd-webterm.conf \
|
||||
&& ln -sf /usr/share/tesseract-ocr/*/tessdata /usr/share/tessdata \
|
||||
&& sed -i 's/8080/80/g' /etc/kvmd/override.yaml \
|
||||
&& sed -i 's/4430/443/g' /etc/kvmd/override.yaml \
|
||||
&& chown kvmd -R /var/lib/kvmd/msd/ \
|
||||
&& systemctl enable kvmd kvmd-otg kvmd-nginx kvmd-vnc kvmd-ipmi kvmd-webterm kvmd-janus \
|
||||
&& systemctl disable nginx janus \
|
||||
&& rm -r /One-KVM "
|
||||
|
||||
sudo chroot --userspec "root:root" $ROOTFS bash -c " \
|
||||
curl https://github.com/tsl0922/ttyd/releases/download/1.7.7/ttyd.$1 -L -o /usr/bin/ttyd \
|
||||
&& chmod +x /usr/bin/ttyd \
|
||||
&& mkdir -p /home/kvmd-webterm \
|
||||
&& chown kvmd-webterm /home/kvmd-webterm "
|
||||
|
||||
if [ "$1" = "x86_64" ]; then
|
||||
sudo chroot --userspec "root:root" $ROOTFS bash -c " \
|
||||
systemctl disable kvmd-otg \
|
||||
&& sed -i '2c ATX=USBRELAY_HID' /etc/kvmd/atx.sh \
|
||||
&& sed -i 's/device: \/dev\/ttyUSB0/device: \/dev\/kvmd-hid/g' /etc/kvmd/override.yaml "
|
||||
else
|
||||
if [ "$2" = "gpio" ]; then
|
||||
sudo chroot --userspec "root:root" $ROOTFS bash -c " \
|
||||
sed -i '2c ATX=GPIO' /etc/kvmd/atx.sh \
|
||||
&& sed -i 's/SHUTDOWNPIN/gpiochip1 7/g' /etc/kvmd/custom_atx/gpio.sh \
|
||||
&& sed -i 's/REBOOTPIN/gpiochip0 11/g' /etc/kvmd/custom_atx/gpio.sh "
|
||||
else
|
||||
sudo chroot --userspec "root:root" $ROOTFS sed -i '2c ATX=USBRELAY_HID' /etc/kvmd/atx.sh
|
||||
|
||||
fi
|
||||
if [ "$2" = "video1" ]; then
|
||||
sudo chroot --userspec "root:root" $ROOTFS sed -i 's/\/dev\/video0/\/dev\/video1/g' /etc/kvmd/override.yaml
|
||||
fi
|
||||
sudo chroot --userspec "root:root" $ROOTFS bash -c " \
|
||||
sed -i 's/ch9329/otg/g' /etc/kvmd/override.yaml \
|
||||
&& sed -i 's/device: \/dev\/ttyUSB0//g' /etc/kvmd/override.yaml \
|
||||
&& sed -i 's/#type: otg/type: otg/g' /etc/kvmd/override.yaml "
|
||||
fi
|
||||
}
|
||||
|
||||
pack_img_onecloud() {
|
||||
sudo rm $SRCPATH/tmp/7.rootfs.PARTITION.sparse
|
||||
sudo img2simg $SRCPATH/tmp/rootfs.img $SRCPATH/tmp/7.rootfs.PARTITION.sparse
|
||||
sudo $SRCPATH/image/onecloud/AmlImg_v0.3.1_linux_amd64 pack $OUTPUTDIR/One-KVM_by-SilentWind_Onecloud_$DATE.burn.img $SRCPATH/tmp/
|
||||
sudo rm $SRCPATH/tmp/*
|
||||
}
|
||||
|
||||
case $1 in
|
||||
onecloud)
|
||||
onecloud_rootfs
|
||||
mount_rootfs
|
||||
config_file $1
|
||||
instal_one-kvm armhf gpio systemd-networkd
|
||||
write_meta $1
|
||||
umount_rootfs
|
||||
pack_img_onecloud
|
||||
;;
|
||||
cumebox2)
|
||||
cumebox2_rootfs
|
||||
mount_rootfs
|
||||
config_file $1
|
||||
config_cumebox2_file
|
||||
parpare_dns
|
||||
instal_one-kvm aarch64 video1
|
||||
write_meta $1
|
||||
umount_rootfs
|
||||
pack_img Cumebox2
|
||||
;;
|
||||
chainedbox)
|
||||
chainedbox_rootfs_and_fix_dtb
|
||||
mount_rootfs
|
||||
config_file $1
|
||||
parpare_dns
|
||||
instal_one-kvm aarch64 video1
|
||||
write_meta $1
|
||||
umount_rootfs
|
||||
pack_img Chainedbox
|
||||
;;
|
||||
vm)
|
||||
vm_rootfs
|
||||
mount_rootfs
|
||||
config_file $1
|
||||
parpare_dns
|
||||
instal_one-kvm x86_64
|
||||
write_meta $1
|
||||
umount_rootfs
|
||||
pack_img Vm
|
||||
;;
|
||||
e900v22c)
|
||||
e900v22c_rootfs
|
||||
mount_rootfs
|
||||
config_file $1
|
||||
instal_one-kvm aarch64 video1
|
||||
write_meta $1
|
||||
umount_rootfs
|
||||
pack_img E900v22c
|
||||
;;
|
||||
octopus-flanet)
|
||||
octopus-flanet_rootfs
|
||||
mount_rootfs
|
||||
config_file $1
|
||||
config_octopus-flanet_file
|
||||
parpare_dns
|
||||
instal_one-kvm aarch64 video1
|
||||
write_meta $1
|
||||
umount_rootfs
|
||||
pack_img Octopus-Flanet
|
||||
;;
|
||||
*)
|
||||
echo "Do no thing."
|
||||
;;
|
||||
esac
|
||||
5
build/cargo_config
Normal file
5
build/cargo_config
Normal file
@@ -0,0 +1,5 @@
|
||||
[source.crates-io]
|
||||
replace-with = 'ustc'
|
||||
|
||||
[source.ustc]
|
||||
registry = "sparse+https://mirrors.ustc.edu.cn/crates.io-index/"
|
||||
244
build/init.sh
Executable file
244
build/init.sh
Executable file
@@ -0,0 +1,244 @@
|
||||
#!/bin/bash
|
||||
# ========================================================================== #
|
||||
# #
|
||||
# KVMD - The main PiKVM daemon. #
|
||||
# #
|
||||
# Copyright (C) 2023-2025 SilentWind <mofeng654321@hotmail.com> #
|
||||
# #
|
||||
# This program is free software: you can redistribute it and/or modify #
|
||||
# it under the terms of the GNU General Public License as published by #
|
||||
# the Free Software Foundation, either version 3 of the License, or #
|
||||
# (at your option) any later version. #
|
||||
# #
|
||||
# This program is distributed in the hope that it will be useful, #
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||
# GNU General Public License for more details. #
|
||||
# #
|
||||
# You should have received a copy of the GNU General Public License #
|
||||
# along with this program. If not, see <https://www.gnu.org/licenses/>. #
|
||||
# #
|
||||
# ========================================================================== #
|
||||
|
||||
# 定义颜色代码
|
||||
RED='\033[0;31m'
|
||||
GREEN='\033[0;32m'
|
||||
YELLOW='\033[0;33m'
|
||||
BLUE='\033[0;34m'
|
||||
NC='\033[0m'
|
||||
|
||||
# 输出日志的函数
|
||||
log_info() {
|
||||
echo -e "${GREEN}[INFO] $1${NC}"
|
||||
}
|
||||
|
||||
log_warn() {
|
||||
echo -e "${YELLOW}[WARN] $1${NC}"
|
||||
}
|
||||
|
||||
log_error() {
|
||||
echo -e "${RED}[ERROR] $1${NC}"
|
||||
}
|
||||
|
||||
# 初始化检查
|
||||
log_info "One-KVM 正在启动..."
|
||||
|
||||
# 首次初始化配置
|
||||
if [ ! -f /etc/kvmd/.init_flag ]; then
|
||||
log_info "首次初始化配置..."
|
||||
|
||||
# 创建必要目录并移动配置文件
|
||||
if mkdir -p /etc/kvmd/ && \
|
||||
mv /etc/kvmd_backup/* /etc/kvmd/ && \
|
||||
touch /etc/kvmd/.docker_flag && \
|
||||
sed -i 's/localhost.localdomain/docker/g' /etc/kvmd/meta.yaml && \
|
||||
sed -i 's/localhost/localhost:4430/g' /etc/kvmd/kvm_input.sh; then
|
||||
log_info "移动配置文件完成"
|
||||
else
|
||||
log_error "移动配置文件失败"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# SSL证书配置
|
||||
if ! /usr/share/kvmd/kvmd-gencert --do-the-thing; then
|
||||
log_error "Nginx SSL 证书生成失败"
|
||||
exit 1
|
||||
fi
|
||||
if ! /usr/share/kvmd/kvmd-gencert --do-the-thing --vnc; then
|
||||
log_error "VNC SSL 证书生成失败"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 设置用户名和密码
|
||||
if [ ! -z "$USERNAME" ] && [ ! -z "$PASSWORD" ]; then
|
||||
if python -m kvmd.apps.htpasswd del admin \
|
||||
&& echo "$PASSWORD" | python -m kvmd.apps.htpasswd set -i "$USERNAME" \
|
||||
&& echo "$PASSWORD -> $USERNAME:$PASSWORD" > /etc/kvmd/vncpasswd \
|
||||
&& echo "$USERNAME:$PASSWORD -> $USERNAME:$PASSWORD" > /etc/kvmd/ipmipasswd; then
|
||||
log_info "用户凭据设置成功"
|
||||
else
|
||||
log_error "用户凭据设置失败"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
log_warn "未设置 USERNAME 和 PASSWORD 环境变量,使用默认值(admin/admin)"
|
||||
fi
|
||||
|
||||
# SSL开关配置
|
||||
if [ "$NOSSL" == 1 ]; then
|
||||
log_info "已禁用SSL"
|
||||
if ! python -m kvmd.apps.ngxmkconf /etc/kvmd/nginx/nginx.conf.mako /etc/kvmd/nginx/nginx.conf -o nginx/https/enabled=false; then
|
||||
log_error "Nginx 配置失败"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
if ! python -m kvmd.apps.ngxmkconf /etc/kvmd/nginx/nginx.conf.mako /etc/kvmd/nginx/nginx.conf; then
|
||||
log_error "Nginx 配置失败"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
# 认证配置
|
||||
if [ "$NOAUTH" == "1" ]; then
|
||||
sed -i "s/enabled: true/enabled: false/g" /etc/kvmd/override.yaml
|
||||
log_info "已禁用认证"
|
||||
fi
|
||||
|
||||
#add supervisord conf
|
||||
if [ "$NOWEBTERM" == "1" ]; then
|
||||
log_info "已禁用 WebTerm 功能"
|
||||
rm -r /usr/share/kvmd/extras/webterm
|
||||
else
|
||||
cat >> /etc/kvmd/supervisord.conf << EOF
|
||||
|
||||
[program:kvmd-webterm]
|
||||
command=/usr/local/bin/ttyd --interface=/run/kvmd/ttyd.sock --port=0 --writable /bin/bash -c '/etc/kvmd/armbain-motd; bash'
|
||||
directory=/
|
||||
autostart=true
|
||||
autorestart=true
|
||||
priority=14
|
||||
stopasgroup=true
|
||||
stdout_logfile=/dev/stdout
|
||||
stdout_logfile_maxbytes = 0
|
||||
redirect_stderr=true
|
||||
EOF
|
||||
fi
|
||||
|
||||
if [ "$NOWEBTERMWRITE" == "1" ]; then
|
||||
sed -i "s/--writable//g" /etc/kvmd/supervisord.conf
|
||||
fi
|
||||
|
||||
if [ "$NOVNC" == "1" ]; then
|
||||
log_info "已禁用 VNC 功能"
|
||||
rm -r /usr/share/kvmd/extras/vnc
|
||||
else
|
||||
cat >> /etc/kvmd/supervisord.conf << EOF
|
||||
|
||||
[program:kvmd-vnc]
|
||||
command=python -m kvmd.apps.vnc --run
|
||||
directory=/
|
||||
autostart=true
|
||||
autorestart=true
|
||||
priority=11
|
||||
stopasgroup=true
|
||||
stdout_logfile=/dev/stdout
|
||||
stdout_logfile_maxbytes = 0
|
||||
redirect_stderr=true
|
||||
EOF
|
||||
fi
|
||||
|
||||
if [ "$NOIPMI" == "1" ]; then
|
||||
log_info "已禁用IPMI功能"
|
||||
rm -r /usr/share/kvmd/extras/ipmi
|
||||
else
|
||||
cat >> /etc/kvmd/supervisord.conf << EOF
|
||||
|
||||
[program:kvmd-ipmi]
|
||||
command=python -m kvmd.apps.ipmi --run
|
||||
directory=/
|
||||
autostart=true
|
||||
autorestart=true
|
||||
priority=12
|
||||
stopasgroup=true
|
||||
stdout_logfile=/dev/stdout
|
||||
stdout_logfile_maxbytes = 0
|
||||
redirect_stderr=true
|
||||
EOF
|
||||
fi
|
||||
|
||||
#switch OTG config
|
||||
if [ "$OTG" == "1" ]; then
|
||||
log_info "已启用 OTG 功能"
|
||||
sed -i "s/ch9329/otg/g" /etc/kvmd/override.yaml
|
||||
sed -i "s/device: \/dev\/ttyUSB0//g" /etc/kvmd/override.yaml
|
||||
if [ "$NOMSD" == 1 ]; then
|
||||
log_info "已禁用 MSD 功能"
|
||||
else
|
||||
sed -i "s/#type: otg/type: otg/g" /etc/kvmd/override.yaml
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -z "$VIDEONUM" ]; then
|
||||
if sed -i "s/\/dev\/video0/\/dev\/video$VIDEONUM/g" /etc/kvmd/override.yaml && \
|
||||
sed -i "s/\/dev\/video0/\/dev\/video$VIDEONUM/g" /etc/kvmd/janus/janus.plugin.ustreamer.jcfg; then
|
||||
log_info "视频设备已设置为 /dev/video$VIDEONUM"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -z "$AUDIONUM" ]; then
|
||||
if sed -i "s/hw:0/hw:$AUDIONUM/g" /etc/kvmd/janus/janus.plugin.ustreamer.jcfg; then
|
||||
log_info "音频设备已设置为 hw:$AUDIONUM"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -z "$CH9329SPEED" ]; then
|
||||
if sed -i "s/speed: 9600/speed: $CH9329SPEED/g" /etc/kvmd/override.yaml; then
|
||||
log_info "CH9329 串口速率已设置为 $CH9329SPEED"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -z "$CH9329TIMEOUT" ]; then
|
||||
if sed -i "s/read_timeout: 0.3/read_timeout: $CH9329TIMEOUT/g" /etc/kvmd/override.yaml; then
|
||||
log_info "CH9329 超时已设置为 $CH9329TIMEOUT 秒"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -z "$H264PRESET" ]; then
|
||||
if sed -i "s/ultrafast/$H264PRESET/g" /etc/kvmd/override.yaml; then
|
||||
log_info "H264 预设已设置为 $H264PRESET"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -z "$VIDEOFORMAT" ]; then
|
||||
if sed -i "s/format=mjpeg/format=$VIDFORMAT/g" /etc/kvmd/override.yaml; then
|
||||
log_info "视频输入格式已设置为 $VIDFORMAT"
|
||||
fi
|
||||
fi
|
||||
|
||||
touch /etc/kvmd/.init_flag
|
||||
log_info "初始化配置完成"
|
||||
fi
|
||||
|
||||
# OTG设备配置
|
||||
if [ "$OTG" == "1" ]; then
|
||||
log_info "正在配置 OTG 设备..."
|
||||
rm -r /run/kvmd/otg &> /dev/null
|
||||
|
||||
if ! modprobe libcomposite; then
|
||||
log_error "加载 libcomposite 模块失败"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if python -m kvmd.apps.otg start; then
|
||||
ln -s /dev/hidg1 /dev/kvmd-hid-mouse
|
||||
ln -s /dev/hidg0 /dev/kvmd-hid-keyboard
|
||||
ln -s /dev/hidg2 /dev/kvmd-hid-mouse-alt
|
||||
log_info "OTG 设备配置完成"
|
||||
else
|
||||
log_warn "OTG 设备挂载失败"
|
||||
#exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
log_info "One-KVM 配置文件准备完成,正在启动服务..."
|
||||
exec supervisord -c /etc/kvmd/supervisord.conf
|
||||
3
build/platform/chainedbox
Normal file
3
build/platform/chainedbox
Normal file
@@ -0,0 +1,3 @@
|
||||
PIKVM_MODEL=v2_model
|
||||
PIKVM_VIDEO=usb_video
|
||||
PIKVM_BOARD=chainedbox
|
||||
3
build/platform/cumebox2
Normal file
3
build/platform/cumebox2
Normal file
@@ -0,0 +1,3 @@
|
||||
PIKVM_MODEL=v2_model
|
||||
PIKVM_VIDEO=usb_video
|
||||
PIKVM_BOARD=cumebox2
|
||||
3
build/platform/docker
Normal file
3
build/platform/docker
Normal file
@@ -0,0 +1,3 @@
|
||||
PIKVM_MODEL=docker_model
|
||||
PIKVM_VIDEO=docker_video
|
||||
PIKVM_BOARD=docker_board
|
||||
3
build/platform/e900v22c
Normal file
3
build/platform/e900v22c
Normal file
@@ -0,0 +1,3 @@
|
||||
PIKVM_MODEL=v2_model
|
||||
PIKVM_VIDEO=usb_video
|
||||
PIKVM_BOARD=e900v22c
|
||||
3
build/platform/octopus-flanet
Normal file
3
build/platform/octopus-flanet
Normal file
@@ -0,0 +1,3 @@
|
||||
PIKVM_MODEL=v2_model
|
||||
PIKVM_VIDEO=usb_video
|
||||
PIKVM_BOARD=octopus-flanet
|
||||
3
build/platform/onecloud
Normal file
3
build/platform/onecloud
Normal file
@@ -0,0 +1,3 @@
|
||||
PIKVM_MODEL=v2_model
|
||||
PIKVM_VIDEO=usb_video
|
||||
PIKVM_BOARD=onecloud
|
||||
3
build/platform/vm
Normal file
3
build/platform/vm
Normal file
@@ -0,0 +1,3 @@
|
||||
PIKVM_MODEL=v2_model
|
||||
PIKVM_VIDEO=usb_video
|
||||
PIKVM_BOARD=vm
|
||||
@@ -1,58 +0,0 @@
|
||||
####################################################################
|
||||
# #
|
||||
# Override Pi-KVM system settings. This file uses the YAML syntax. #
|
||||
# #
|
||||
# https://github.com/pikvm/pikvm/blob/master/pages/config.md #
|
||||
# #
|
||||
# All overridden parameters will be applied AFTER other configs #
|
||||
# and "!include" directives and BEFORE validation. #
|
||||
# Not: Sections should be combined under shared keys. #
|
||||
# #
|
||||
####################################################################
|
||||
vnc:
|
||||
# See https://github.com/pikvm/pikvm/blob/master/pages/vnc.md
|
||||
keymap: /usr/share/kvmd/keymaps/ru # Set russian keymap
|
||||
auth:
|
||||
vncauth:
|
||||
enabled: true # Enable auth via /etc/kvmd/vncpasswd
|
||||
kvmd:
|
||||
msd:
|
||||
type: disabled
|
||||
gpio:
|
||||
drivers:
|
||||
wol_server1:
|
||||
type: wol
|
||||
mac: 2c:56:dc:db:7c:1e
|
||||
short_press:
|
||||
type: cmd
|
||||
cmd: [/usr/bin/sudo, short_press_gpio420]
|
||||
long_press:
|
||||
type: cmd
|
||||
cmd: [/usr/bin/sudo, long_press_gpio420]
|
||||
scheme:
|
||||
wol_server1:
|
||||
driver: wol_server1
|
||||
pin: 0
|
||||
mode: output
|
||||
switch: false
|
||||
short_button:
|
||||
driver: short_press
|
||||
pin: 0
|
||||
mode: output
|
||||
switch: false
|
||||
long_button:
|
||||
driver: long_press
|
||||
pin: 0
|
||||
mode: output
|
||||
switch: false
|
||||
view:
|
||||
header:
|
||||
title: ATX
|
||||
table:
|
||||
- ["#电源管理"]
|
||||
- []
|
||||
- ["#短按(开/关机):", short_button|按下]
|
||||
- ["#长按(强制关机):", long_button|按下]
|
||||
- []
|
||||
- ["#网络唤醒"]
|
||||
- ["#被控机设备", wol_server1|网络唤醒]
|
||||
1
configs/hw_info/model
Normal file
1
configs/hw_info/model
Normal file
@@ -0,0 +1 @@
|
||||
Docker
|
||||
1
configs/hw_info/serial-number
Normal file
1
configs/hw_info/serial-number
Normal file
@@ -0,0 +1 @@
|
||||
docker1000000000
|
||||
18
configs/janus/janus.jcfg
Normal file
18
configs/janus/janus.jcfg
Normal file
@@ -0,0 +1,18 @@
|
||||
general: {
|
||||
debug_level = 0
|
||||
}
|
||||
nat: {
|
||||
nice_debug = false
|
||||
ignore_mdns = true
|
||||
}
|
||||
media: {
|
||||
ipv6 = true
|
||||
ipv6_linklocal = true
|
||||
min_nack_queue = 2000
|
||||
rtp_port_range = "20000-40000"
|
||||
no_media_timer = 0
|
||||
slowlink_threshold = 10
|
||||
twcc_period = 100
|
||||
dtls_timeout = 1000
|
||||
nack_optimizations = true
|
||||
}
|
||||
7
configs/janus/janus.plugin.ustreamer.jcfg
Normal file
7
configs/janus/janus.plugin.ustreamer.jcfg
Normal file
@@ -0,0 +1,7 @@
|
||||
video: {
|
||||
sink = "kvmd::ustreamer::h264"
|
||||
}
|
||||
audio: {
|
||||
device = "hw:0"
|
||||
tc358743 = "/dev/video0"
|
||||
}
|
||||
4
configs/janus/janus.transport.websockets.jcfg
Normal file
4
configs/janus/janus.transport.websockets.jcfg
Normal file
@@ -0,0 +1,4 @@
|
||||
general: {
|
||||
ws = true
|
||||
ws_unix = "/run/kvmd/janus-ws.sock"
|
||||
}
|
||||
46
configs/kvmd/armbain-motd
Executable file
46
configs/kvmd/armbain-motd
Executable file
@@ -0,0 +1,46 @@
|
||||
#!/bin/bash
|
||||
# ========================================================================== #
|
||||
# #
|
||||
# KVMD - The main PiKVM daemon. #
|
||||
# #
|
||||
# Copyright (C) 2023-2025 SilentWind <mofeng654321@hotmail.com> #
|
||||
# #
|
||||
# This program is free software: you can redistribute it and/or modify #
|
||||
# it under the terms of the GNU General Public License as published by #
|
||||
# the Free Software Foundation, either version 3 of the License, or #
|
||||
# (at your option) any later version. #
|
||||
# #
|
||||
# This program is distributed in the hope that it will be useful, #
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||
# GNU General Public License for more details. #
|
||||
# #
|
||||
# You should have received a copy of the GNU General Public License #
|
||||
# along with this program. If not, see <https://www.gnu.org/licenses/>. #
|
||||
# #
|
||||
# ========================================================================== #
|
||||
|
||||
if [ -e /etc/update-motd.d/10-armbian-header ]; then /etc/update-motd.d/10-armbian-header; fi
|
||||
if [ -e /etc/update-motd.d/30-armbian-sysinfo ]; then /etc/update-motd.d/30-armbian-sysinfo; fi
|
||||
if [ -e /etc/update-motd.d/41-armbian-config ]; then /etc/update-motd.d/41-armbian-config; fi
|
||||
|
||||
printf "
|
||||
|
||||
██████╗ ███╗ ██╗███████╗ ██╗ ██╗██╗ ██╗███╗ ███╗
|
||||
██╔═══██╗████╗ ██║██╔════╝ ██║ ██╔╝██║ ██║████╗ ████║
|
||||
██║ ██║██╔██╗ ██║█████╗█████╗█████╔╝ ██║ ██║██╔████╔██║
|
||||
██║ ██║██║╚██╗██║██╔══╝╚════╝██╔═██╗ ╚██╗ ██╔╝██║╚██╔╝██║
|
||||
╚██████╔╝██║ ╚████║███████╗ ██║ ██╗ ╚████╔╝ ██║ ╚═╝ ██║
|
||||
╚═════╝ ╚═╝ ╚═══╝╚══════╝ ╚═╝ ╚═╝ ╚═══╝ ╚═╝ ╚═╝
|
||||
|
||||
____________________________________________________________________________
|
||||
|
||||
项目链接:
|
||||
* One-KVM:https://github.com/mofeng-git/One-KVM
|
||||
|
||||
文档链接:
|
||||
* One-KVM:https://one-kvm.mofeng.run
|
||||
|
||||
____________________________________________________________________________
|
||||
|
||||
"
|
||||
34
configs/kvmd/atx.sh
Executable file
34
configs/kvmd/atx.sh
Executable file
@@ -0,0 +1,34 @@
|
||||
#!/bin/bash
|
||||
# ========================================================================== #
|
||||
# #
|
||||
# KVMD - The main PiKVM daemon. #
|
||||
# #
|
||||
# Copyright (C) 2023-2025 SilentWind <mofeng654321@hotmail.com> #
|
||||
# #
|
||||
# This program is free software: you can redistribute it and/or modify #
|
||||
# it under the terms of the GNU General Public License as published by #
|
||||
# the Free Software Foundation, either version 3 of the License, or #
|
||||
# (at your option) any later version. #
|
||||
# #
|
||||
# This program is distributed in the hope that it will be useful, #
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||
# GNU General Public License for more details. #
|
||||
# #
|
||||
# You should have received a copy of the GNU General Public License #
|
||||
# along with this program. If not, see <https://www.gnu.org/licenses/>. #
|
||||
# #
|
||||
# ========================================================================== #
|
||||
|
||||
echo $ATX
|
||||
case $ATX in
|
||||
GPIO)
|
||||
sudo /etc/kvmd/custom_atx/gpio.sh $1
|
||||
;;
|
||||
USBRELAY_HID)
|
||||
sudo /etc/kvmd/custom_atx/usbrelay_hid.sh $1
|
||||
;;
|
||||
*)
|
||||
echo "No thing."
|
||||
exit -1
|
||||
esac
|
||||
1
configs/kvmd/auth.yaml
Normal file
1
configs/kvmd/auth.yaml
Normal file
@@ -0,0 +1 @@
|
||||
{}
|
||||
43
configs/kvmd/clean_when_exit.sh
Executable file
43
configs/kvmd/clean_when_exit.sh
Executable file
@@ -0,0 +1,43 @@
|
||||
#!/bin/bash
|
||||
# ========================================================================== #
|
||||
# #
|
||||
# KVMD - The main PiKVM daemon. #
|
||||
# #
|
||||
# Copyright (C) 2023-2025 SilentWind <mofeng654321@hotmail.com> #
|
||||
# #
|
||||
# This program is free software: you can redistribute it and/or modify #
|
||||
# it under the terms of the GNU General Public License as published by #
|
||||
# the Free Software Foundation, either version 3 of the License, or #
|
||||
# (at your option) any later version. #
|
||||
# #
|
||||
# This program is distributed in the hope that it will be useful, #
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||
# GNU General Public License for more details. #
|
||||
# #
|
||||
# You should have received a copy of the GNU General Public License #
|
||||
# along with this program. If not, see <https://www.gnu.org/licenses/>. #
|
||||
# #
|
||||
# ========================================================================== #
|
||||
|
||||
RED='\033[0;31m'
|
||||
GREEN='\033[0;32m'
|
||||
YELLOW='\033[0;33m'
|
||||
BLUE='\033[0;34m'
|
||||
NC='\033[0m'
|
||||
|
||||
cleanup() {
|
||||
if [ "$OTG" == "1" ]; then
|
||||
echo "Trying exit OTG Port..." \
|
||||
&& python -m kvmd.apps.otg stop \
|
||||
|| echo -e "${RED}Failed to exit OTG Port${NC}"
|
||||
rm -r /run/kvmd/otg
|
||||
fi
|
||||
exit 0
|
||||
}
|
||||
|
||||
trap cleanup SIGTERM
|
||||
|
||||
while true; do
|
||||
sleep 3600
|
||||
done
|
||||
37
configs/kvmd/custom_atx/gpio.sh
Executable file
37
configs/kvmd/custom_atx/gpio.sh
Executable file
@@ -0,0 +1,37 @@
|
||||
#!/bin/bash
|
||||
# ========================================================================== #
|
||||
# #
|
||||
# KVMD - The main PiKVM daemon. #
|
||||
# #
|
||||
# Copyright (C) 2023-2025 SilentWind <mofeng654321@hotmail.com> #
|
||||
# #
|
||||
# This program is free software: you can redistribute it and/or modify #
|
||||
# it under the terms of the GNU General Public License as published by #
|
||||
# the Free Software Foundation, either version 3 of the License, or #
|
||||
# (at your option) any later version. #
|
||||
# #
|
||||
# This program is distributed in the hope that it will be useful, #
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||
# GNU General Public License for more details. #
|
||||
# #
|
||||
# You should have received a copy of the GNU General Public License #
|
||||
# along with this program. If not, see <https://www.gnu.org/licenses/>. #
|
||||
# #
|
||||
# ========================================================================== #
|
||||
case $1 in
|
||||
short)
|
||||
gpioset -m time -s 1 SHUTDOWNPIN=0
|
||||
gpioset SHUTDOWNPIN=1
|
||||
;;
|
||||
long)
|
||||
gpioset -m time -s 5 SHUTDOWNPIN=0
|
||||
gpioset SHUTDOWNPIN=1
|
||||
;;
|
||||
reset)
|
||||
gpioset -m time -s 1 REBOOTPIN=0
|
||||
gpioset REBOOTPIN=1
|
||||
;;
|
||||
*)
|
||||
echo "No thing."
|
||||
esac
|
||||
73
configs/kvmd/custom_atx/usbrelay_hid.py
Executable file
73
configs/kvmd/custom_atx/usbrelay_hid.py
Executable file
@@ -0,0 +1,73 @@
|
||||
# ========================================================================== #
|
||||
# #
|
||||
# KVMD - The main PiKVM daemon. #
|
||||
# #
|
||||
# Copyright (C) 2023-2025 SilentWind <mofeng654321@hotmail.com> #
|
||||
# #
|
||||
# This program is free software: you can redistribute it and/or modify #
|
||||
# it under the terms of the GNU General Public License as published by #
|
||||
# the Free Software Foundation, either version 3 of the License, or #
|
||||
# (at your option) any later version. #
|
||||
# #
|
||||
# This program is distributed in the hope that it will be useful, #
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||
# GNU General Public License for more details. #
|
||||
# #
|
||||
# You should have received a copy of the GNU General Public License #
|
||||
# along with this program. If not, see <https://www.gnu.org/licenses/>. #
|
||||
# #
|
||||
# ========================================================================== #
|
||||
|
||||
import sys
|
||||
import hid
|
||||
|
||||
VENDOR_ID = 0x5131
|
||||
PRODUCT_ID = 0x2007
|
||||
|
||||
def find_usbrelay():
|
||||
for device in hid.enumerate():
|
||||
if device.get("vendor_id") == VENDOR_ID and device.get("product_id") == PRODUCT_ID:
|
||||
return device
|
||||
return None
|
||||
|
||||
def send_command(device_info, channel, onoff):
|
||||
device = hid.device()
|
||||
device.open(device_info['vendor_id'], device_info['product_id'])
|
||||
if device is None:
|
||||
print("Failed to open device.")
|
||||
return
|
||||
|
||||
try:
|
||||
cmd = [0xA0, channel, onoff, 0xA0 + channel + onoff]
|
||||
device.write(bytearray(cmd))
|
||||
finally:
|
||||
device.close()
|
||||
|
||||
def main():
|
||||
if len(sys.argv) != 3:
|
||||
print("Usage:\n"
|
||||
"\tpython script.py id on|off")
|
||||
return
|
||||
|
||||
try:
|
||||
id = int(sys.argv[1])
|
||||
if sys.argv[2].lower() == 'on':
|
||||
onoff = 1
|
||||
elif sys.argv[2].lower() == 'off':
|
||||
onoff = 0
|
||||
else:
|
||||
raise ValueError
|
||||
except ValueError:
|
||||
print("Invalid command, use 'on' or 'off'")
|
||||
return
|
||||
|
||||
device_info = find_usbrelay()
|
||||
if device_info is None:
|
||||
print("USB relay not found")
|
||||
else:
|
||||
send_command(device_info, id, onoff)
|
||||
print(f"Sent command to channel {id}: {'ON' if onoff else 'OFF'}")
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
40
configs/kvmd/custom_atx/usbrelay_hid.sh
Executable file
40
configs/kvmd/custom_atx/usbrelay_hid.sh
Executable file
@@ -0,0 +1,40 @@
|
||||
#!/bin/bash
|
||||
# ========================================================================== #
|
||||
# #
|
||||
# KVMD - The main PiKVM daemon. #
|
||||
# #
|
||||
# Copyright (C) 2023-2025 SilentWind <mofeng654321@hotmail.com> #
|
||||
# #
|
||||
# This program is free software: you can redistribute it and/or modify #
|
||||
# it under the terms of the GNU General Public License as published by #
|
||||
# the Free Software Foundation, either version 3 of the License, or #
|
||||
# (at your option) any later version. #
|
||||
# #
|
||||
# This program is distributed in the hope that it will be useful, #
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
||||
# GNU General Public License for more details. #
|
||||
# #
|
||||
# You should have received a copy of the GNU General Public License #
|
||||
# along with this program. If not, see <https://www.gnu.org/licenses/>. #
|
||||
# #
|
||||
# ========================================================================== #
|
||||
case $1 in
|
||||
short)
|
||||
python3 /etc/kvmd/custom_atx/usbrelay_hid.py 1 on
|
||||
sleep 1
|
||||
python3 /etc/kvmd/custom_atx/usbrelay_hid.py 1 off
|
||||
;;
|
||||
long)
|
||||
python3 /etc/kvmd/custom_atx/usbrelay_hid.py 1 on
|
||||
sleep 5
|
||||
python3 /etc/kvmd/custom_atx/usbrelay_hid.py 1 off
|
||||
;;
|
||||
reset)
|
||||
python3 /etc/kvmd/custom_atx/usbrelay_hid.py 2 on
|
||||
sleep 1
|
||||
python3 /etc/kvmd/custom_atx/usbrelay_hid.py 2 off
|
||||
;;
|
||||
*)
|
||||
echo "No thing."
|
||||
esac
|
||||
1
configs/kvmd/htpasswd
Normal file
1
configs/kvmd/htpasswd
Normal file
@@ -0,0 +1 @@
|
||||
admin:$apr1$.6mu9N8n$xOuGesr4JZZkdiZo/j318.
|
||||
14
configs/kvmd/ipmipasswd
Normal file
14
configs/kvmd/ipmipasswd
Normal file
@@ -0,0 +1,14 @@
|
||||
# This file describes the credentials for IPMI users. The first pair separated by colon
|
||||
# is the login and password with which the user can access to IPMI. The second pair
|
||||
# is the name and password with which the user can access to KVMD API. The arrow is used
|
||||
# as a separator and shows the direction of user registration in the system.
|
||||
#
|
||||
# WARNING! IPMI protocol is completely unsafe by design. In short, the authentication
|
||||
# process for IPMI 2.0 mandates that the server send a salted SHA1 or MD5 hash of the
|
||||
# requested user's password to the client, prior to the client authenticating. Never use
|
||||
# the same passwords for KVMD and IPMI users. This default configuration is shown here
|
||||
# for example only.
|
||||
#
|
||||
# And even better not to use IPMI. Instead, you can directly use KVMD API via curl.
|
||||
|
||||
admin:admin -> admin:admin
|
||||
32
configs/kvmd/kvm_input.sh
Executable file
32
configs/kvmd/kvm_input.sh
Executable file
@@ -0,0 +1,32 @@
|
||||
#!/bin/bash
|
||||
# Written by @srepac FILENAME: input.sh
|
||||
# Input switcher script for use with KVM switches that use CTRL+CTRL+#
|
||||
# ... pass in # into the script
|
||||
#
|
||||
usage() {
|
||||
echo "usage: $0 <#> <pikvm-name-or-ip> where # is the input number on the KVM switch"
|
||||
exit 1
|
||||
}
|
||||
password=admin
|
||||
|
||||
#HOTKEY="ScrollLock"
|
||||
HOTKEY="ControlLeft"
|
||||
|
||||
if [[ "$1" == "" ]]; then
|
||||
usage
|
||||
else
|
||||
NUM="$1"
|
||||
fi
|
||||
|
||||
if [[ "$2" == "" ]]; then
|
||||
IP="localhost"
|
||||
else
|
||||
IP="$2"
|
||||
fi
|
||||
|
||||
OSD=$( echo $HOTKEY | sed -e 's/ControlLeft/CTRL/g' )
|
||||
echo "Sending $OSD + $OSD + $NUM to $IP"
|
||||
|
||||
curl -X POST -k -u admin:$password "https://$IP/api/hid/events/send_key?key=$HOTKEY" 2> /dev/null
|
||||
curl -X POST -k -u admin:$password "https://$IP/api/hid/events/send_key?key=$HOTKEY" 2> /dev/null
|
||||
curl -X POST -k -u admin:$password "https://$IP/api/hid/events/send_key?key=Digit${NUM}" 2> /dev/null
|
||||
20
configs/kvmd/logging.yaml
Normal file
20
configs/kvmd/logging.yaml
Normal file
@@ -0,0 +1,20 @@
|
||||
version: 1
|
||||
disable_existing_loggers: false
|
||||
|
||||
formatters:
|
||||
console:
|
||||
(): logging.Formatter
|
||||
style: "{"
|
||||
format: "{name:30.30} {levelname:>7} --- {message}"
|
||||
|
||||
handlers:
|
||||
console:
|
||||
level: DEBUG
|
||||
class: logging.StreamHandler
|
||||
stream: ext://sys.stderr
|
||||
formatter: console
|
||||
|
||||
root:
|
||||
level: INFO
|
||||
handlers:
|
||||
- console
|
||||
@@ -11,19 +11,17 @@ kvmd:
|
||||
|
||||
hid:
|
||||
type: otg
|
||||
mouse_alt:
|
||||
device: /dev/kvmd-hid-mouse-alt
|
||||
|
||||
atx:
|
||||
type: disabled
|
||||
type: gpio
|
||||
|
||||
msd:
|
||||
type: otg
|
||||
type: disabled
|
||||
|
||||
streamer:
|
||||
quality: 0
|
||||
resolution:
|
||||
default: 1280x720
|
||||
default: 1920x1080
|
||||
available:
|
||||
- 1920x1080
|
||||
- 1600x1200
|
||||
@@ -44,7 +42,6 @@ kvmd:
|
||||
- "--resolution={resolution}"
|
||||
- "--desired-fps={desired_fps}"
|
||||
- "--drop-same-frames=30"
|
||||
- "--last-as-blank=0"
|
||||
- "--unix={unix}"
|
||||
- "--unix-rm"
|
||||
- "--unix-mode=0660"
|
||||
@@ -52,8 +49,8 @@ kvmd:
|
||||
- "--process-name-prefix={process_name_prefix}"
|
||||
- "--notify-parent"
|
||||
- "--no-log-colors"
|
||||
- "--sink=kvmd::ustreamer::jpeg"
|
||||
- "--sink-mode=0660"
|
||||
- "--jpeg-sink=kvmd::ustreamer::jpeg"
|
||||
- "--jpeg-sink-mode=0660"
|
||||
|
||||
|
||||
vnc:
|
||||
100
configs/kvmd/main/v4plus-hdmi-rpi4.yaml
Normal file
100
configs/kvmd/main/v4plus-hdmi-rpi4.yaml
Normal file
@@ -0,0 +1,100 @@
|
||||
# Don't touch this file otherwise your device may stop working.
|
||||
# Use override.yaml to modify required settings.
|
||||
# You can find a working configuration in /usr/share/kvmd/configs.default/kvmd.
|
||||
|
||||
override: !include [override.d, override.yaml]
|
||||
|
||||
logging: !include logging.yaml
|
||||
|
||||
kvmd:
|
||||
auth: !include auth.yaml
|
||||
|
||||
info:
|
||||
hw:
|
||||
ignore_past: true
|
||||
fan:
|
||||
unix: /run/kvmd/fan.sock
|
||||
|
||||
hid:
|
||||
type: otg
|
||||
mouse_alt:
|
||||
device: /dev/kvmd-hid-mouse-alt
|
||||
|
||||
atx:
|
||||
type: gpio
|
||||
power_led_pin: 4
|
||||
hdd_led_pin: 5
|
||||
power_switch_pin: 23
|
||||
reset_switch_pin: 27
|
||||
|
||||
msd:
|
||||
type: otg
|
||||
|
||||
streamer:
|
||||
h264_bitrate:
|
||||
default: 5000
|
||||
cmd:
|
||||
- "/usr/bin/ustreamer"
|
||||
- "--device=/dev/kvmd-video"
|
||||
- "--persistent"
|
||||
- "--dv-timings"
|
||||
- "--format=uyvy"
|
||||
- "--format-swap-rgb"
|
||||
- "--buffers=8"
|
||||
- "--encoder=m2m-image"
|
||||
- "--workers=3"
|
||||
- "--quality={quality}"
|
||||
- "--desired-fps={desired_fps}"
|
||||
- "--drop-same-frames=30"
|
||||
- "--unix={unix}"
|
||||
- "--unix-rm"
|
||||
- "--unix-mode=0660"
|
||||
- "--exit-on-parent-death"
|
||||
- "--process-name-prefix={process_name_prefix}"
|
||||
- "--notify-parent"
|
||||
- "--no-log-colors"
|
||||
- "--jpeg-sink=kvmd::ustreamer::jpeg"
|
||||
- "--jpeg-sink-mode=0660"
|
||||
- "--h264-sink=kvmd::ustreamer::h264"
|
||||
- "--h264-sink-mode=0660"
|
||||
- "--h264-bitrate={h264_bitrate}"
|
||||
- "--h264-gop={h264_gop}"
|
||||
|
||||
gpio:
|
||||
drivers:
|
||||
__v4_locator__:
|
||||
type: locator
|
||||
|
||||
scheme:
|
||||
__v3_usb_breaker__:
|
||||
pin: 22
|
||||
mode: output
|
||||
initial: true
|
||||
pulse: false
|
||||
|
||||
__v4_locator__:
|
||||
driver: __v4_locator__
|
||||
pin: 12
|
||||
mode: output
|
||||
pulse: false
|
||||
|
||||
__v4_const1__:
|
||||
pin: 6
|
||||
mode: output
|
||||
initial: false
|
||||
switch: false
|
||||
pulse: false
|
||||
|
||||
|
||||
media:
|
||||
memsink:
|
||||
h264:
|
||||
sink: "kvmd::ustreamer::h264"
|
||||
|
||||
|
||||
vnc:
|
||||
memsink:
|
||||
jpeg:
|
||||
sink: "kvmd::ustreamer::jpeg"
|
||||
h264:
|
||||
sink: "kvmd::ustreamer::h264"
|
||||
14
configs/kvmd/meta.yaml
Normal file
14
configs/kvmd/meta.yaml
Normal file
@@ -0,0 +1,14 @@
|
||||
# You can write down any information and it will be available
|
||||
# at the address /api/info (if you use default nginx config).
|
||||
# If server.host (str) will be defined then this value
|
||||
# will be displayed in the web interface.
|
||||
|
||||
server:
|
||||
host: localhost.localdomain
|
||||
|
||||
kvm: {
|
||||
base_on: PiKVM,
|
||||
app_name: One-KVM,
|
||||
main_version: 241204,
|
||||
author: SilentWind
|
||||
}
|
||||
176
configs/kvmd/override.yaml
Normal file
176
configs/kvmd/override.yaml
Normal file
@@ -0,0 +1,176 @@
|
||||
kvmd:
|
||||
auth:
|
||||
enabled: true
|
||||
|
||||
atx:
|
||||
type: disabled
|
||||
|
||||
hid:
|
||||
type: ch9329
|
||||
device: /dev/ttyUSB0
|
||||
speed: 9600
|
||||
read_timeout: 0.3
|
||||
|
||||
jiggler:
|
||||
active: false
|
||||
enabled: true
|
||||
|
||||
mouse_alt:
|
||||
device: /dev/kvmd-hid-mouse-alt
|
||||
|
||||
msd:
|
||||
#type: otg
|
||||
remount_cmd: /bin/true
|
||||
msd_path: /var/lib/kvmd/msd
|
||||
normalfiles_path: NormalFiles
|
||||
normalfiles_size: 256
|
||||
|
||||
ocr:
|
||||
langs:
|
||||
- eng
|
||||
- chi_sim
|
||||
|
||||
streamer:
|
||||
resolution:
|
||||
default: 1920x1080
|
||||
|
||||
forever: true
|
||||
|
||||
desired_fps:
|
||||
default: 30
|
||||
max: 60
|
||||
|
||||
h264_bitrate:
|
||||
default: 8000
|
||||
|
||||
cmd:
|
||||
- "/usr/bin/ustreamer"
|
||||
- "--device=/dev/video0"
|
||||
- "--persistent"
|
||||
- "--format=mjpeg"
|
||||
- "--encoder=LIBX264-VIDEO"
|
||||
- "--resolution={resolution}"
|
||||
- "--desired-fps={desired_fps}"
|
||||
- "--drop-same-frames=30"
|
||||
- "--last-as-blank=0"
|
||||
- "--unix={unix}"
|
||||
- "--unix-rm"
|
||||
- "--unix-mode=0666"
|
||||
- "--exit-on-parent-death"
|
||||
- "--process-name-prefix={process_name_prefix}"
|
||||
- "--notify-parent"
|
||||
- "--no-log-colors"
|
||||
- "--h264-sink=kvmd::ustreamer::h264"
|
||||
- "--h264-sink-mode=0660"
|
||||
- "--jpeg-sink=kvmd::ustreamer::jpeg"
|
||||
- "--jpeg-sink-mode=0660"
|
||||
- "--h264-bitrate={h264_bitrate}"
|
||||
- "--h264-gop={h264_gop}"
|
||||
- "--h264-preset=ultrafast"
|
||||
- "--slowdown"
|
||||
gpio:
|
||||
drivers:
|
||||
wol_server1:
|
||||
type: wol
|
||||
mac: 2c:56:dc:db:7c:1e
|
||||
short_press:
|
||||
type: cmd
|
||||
cmd: [/etc/kvmd/atx.sh, short]
|
||||
long_press:
|
||||
type: cmd
|
||||
cmd: [/etc/kvmd/atx.sh, long]
|
||||
reset_press:
|
||||
type: cmd
|
||||
cmd: [/etc/kvmd/atx.sh, reset]
|
||||
input1:
|
||||
type: cmd
|
||||
cmd: [/etc/kvmd/kvm_input.sh, 1]
|
||||
input2:
|
||||
type: cmd
|
||||
cmd: [/etc/kvmd/kvm_input.sh, 2]
|
||||
scheme:
|
||||
wol_server1:
|
||||
driver: wol_server1
|
||||
pin: 0
|
||||
mode: output
|
||||
switch: false
|
||||
short_button:
|
||||
driver: short_press
|
||||
pin: 0
|
||||
mode: output
|
||||
switch: false
|
||||
long_button:
|
||||
driver: long_press
|
||||
pin: 0
|
||||
mode: output
|
||||
switch: false
|
||||
reset_button:
|
||||
driver: reset_press
|
||||
pin: 0
|
||||
mode: output
|
||||
switch: false
|
||||
input1-button:
|
||||
driver: input1
|
||||
pin: 0
|
||||
mode: output
|
||||
switch: false
|
||||
input2-button:
|
||||
driver: input2
|
||||
pin: 0
|
||||
mode: output
|
||||
switch: false
|
||||
view:
|
||||
header:
|
||||
title: 高级功能
|
||||
table:
|
||||
- ["#电源管理"]
|
||||
- ["#短按(开/关机):", short_button|按下]
|
||||
- ["#长按(强制关机):", long_button|按下]
|
||||
- ["#重启:", reset_button|按下]
|
||||
- []
|
||||
- ["#网络唤醒"]
|
||||
- ["#被控机设备", wol_server1|网络唤醒]
|
||||
- []
|
||||
- ["#KVM 切换"]
|
||||
- ["#HDMI 1", input1-button|切换]
|
||||
- ["#HDMI 2", input2-button|切换]
|
||||
|
||||
|
||||
vnc:
|
||||
keymap: /usr/share/kvmd/keymaps/en-us
|
||||
mouse_output: usb
|
||||
|
||||
auth:
|
||||
vncauth:
|
||||
enabled: true
|
||||
|
||||
memsink:
|
||||
jpeg:
|
||||
sink: "kvmd::ustreamer::jpeg"
|
||||
h264:
|
||||
sink: "kvmd::ustreamer::h264"
|
||||
|
||||
media:
|
||||
memsink:
|
||||
h264:
|
||||
sink: 'kvmd::ustreamer::h264'
|
||||
|
||||
jpeg:
|
||||
sink: 'kvmd::ustreamer::jpeg'
|
||||
janus:
|
||||
stun:
|
||||
host: stun.cloudflare.com
|
||||
port: 3478
|
||||
|
||||
otgnet:
|
||||
commands:
|
||||
post_start_cmd:
|
||||
- "/bin/true"
|
||||
pre_stop_cmd:
|
||||
- "/bin/true"
|
||||
|
||||
nginx:
|
||||
http:
|
||||
port: 8080
|
||||
https:
|
||||
port: 4430
|
||||
66
configs/kvmd/supervisord.conf
Normal file
66
configs/kvmd/supervisord.conf
Normal file
@@ -0,0 +1,66 @@
|
||||
[unix_http_server]
|
||||
file=/tmp/supervisor.sock
|
||||
|
||||
[supervisord]
|
||||
nodaemon=true
|
||||
user=root
|
||||
|
||||
[rpcinterface:supervisor]
|
||||
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
|
||||
|
||||
[supervisorctl]
|
||||
serverurl=unix:///tmp/supervisor.sock
|
||||
|
||||
[program:kvmd]
|
||||
command=python -m kvmd.apps.kvmd --run
|
||||
directory=/
|
||||
autostart=true
|
||||
autorestart=true
|
||||
priority=10
|
||||
stopasgroup=true
|
||||
stdout_logfile=/dev/stdout
|
||||
stdout_logfile_maxbytes = 0
|
||||
redirect_stderr=true
|
||||
|
||||
[program:kvmd-janus]
|
||||
command=python -m kvmd.apps.janus --run
|
||||
autostart=true
|
||||
autorestart=true
|
||||
priority=13
|
||||
stopasgroup=true
|
||||
stdout_logfile=/dev/stdout
|
||||
stdout_logfile_maxbytes = 0
|
||||
redirect_stderr=true
|
||||
|
||||
[program:kvmd-media]
|
||||
command=python -m kvmd.apps.media --run
|
||||
autostart=true
|
||||
autorestart=true
|
||||
priority=13
|
||||
stopasgroup=true
|
||||
stdout_logfile=/dev/stdout
|
||||
stdout_logfile_maxbytes = 0
|
||||
redirect_stderr=true
|
||||
|
||||
[program:kvmd-nginx]
|
||||
command=nginx -c /etc/kvmd/nginx/nginx.conf -g 'daemon off;user root; error_log stderr;'
|
||||
autostart=true
|
||||
autorestart=true
|
||||
startsecs=10
|
||||
priority=100
|
||||
stopasgroup=true
|
||||
stdout_logfile=/dev/stdout
|
||||
stdout_logfile_maxbytes = 0
|
||||
redirect_stderr=true
|
||||
|
||||
[program:clean_when_exit]
|
||||
command=/etc/kvmd/clean_when_exit.sh
|
||||
autostart=true
|
||||
autorestart=true
|
||||
startsecs=10
|
||||
priority=200
|
||||
stopasgroup=true
|
||||
stdout_logfile=/dev/stdout
|
||||
stdout_logfile_maxbytes = 0
|
||||
redirect_stderr=true
|
||||
|
||||
0
configs/kvmd/totp.secret
Normal file
0
configs/kvmd/totp.secret
Normal file
12
configs/kvmd/vncpasswd
Normal file
12
configs/kvmd/vncpasswd
Normal file
@@ -0,0 +1,12 @@
|
||||
# This file describes the credentials for VNCAuth. The left part before arrow is a passphrase
|
||||
# for VNCAuth. The right part is username and password with which the user can access to KVMD API.
|
||||
# The arrow is used as a separator and shows the relationship of user registrations on the system.
|
||||
#
|
||||
# Never use the same passwords for VNC and IPMI users. This default configuration is shown here
|
||||
# for example only.
|
||||
#
|
||||
# If this file does not contain any entries, VNCAuth will be disabled and you will only be able
|
||||
# to login in using your KVMD username and password using VeNCrypt methods.
|
||||
|
||||
# pa$$phr@se -> admin:password
|
||||
admin -> admin:admin
|
||||
1
configs/kvmd/web.css
Normal file
1
configs/kvmd/web.css
Normal file
@@ -0,0 +1 @@
|
||||
/* Here you can customize the Web UI */
|
||||
5
configs/nginx/certbot.ctx-server.conf
Normal file
5
configs/nginx/certbot.ctx-server.conf
Normal file
@@ -0,0 +1,5 @@
|
||||
location /.well-known/acme-challenge {
|
||||
root /run/kvmd-certbot/webroot;
|
||||
include /etc/kvmd/nginx/loc-nocache.conf;
|
||||
auth_request off;
|
||||
}
|
||||
7
configs/nginx/kvmd.ctx-http.conf
Normal file
7
configs/nginx/kvmd.ctx-http.conf
Normal file
@@ -0,0 +1,7 @@
|
||||
upstream kvmd {
|
||||
server unix:/run/kvmd/kvmd.sock fail_timeout=0s max_fails=0;
|
||||
}
|
||||
|
||||
upstream ustreamer {
|
||||
server unix:/run/kvmd/ustreamer.sock fail_timeout=0s max_fails=0;
|
||||
}
|
||||
131
configs/nginx/kvmd.ctx-server.conf
Normal file
131
configs/nginx/kvmd.ctx-server.conf
Normal file
@@ -0,0 +1,131 @@
|
||||
absolute_redirect off;
|
||||
|
||||
index index.html;
|
||||
|
||||
auth_request /auth_check;
|
||||
|
||||
location = /auth_check {
|
||||
internal;
|
||||
proxy_pass http://kvmd/auth/check;
|
||||
proxy_pass_request_body off;
|
||||
proxy_set_header Content-Length "";
|
||||
auth_request off;
|
||||
}
|
||||
|
||||
location / {
|
||||
root /usr/share/kvmd/web;
|
||||
include /etc/kvmd/nginx/loc-login.conf;
|
||||
include /etc/kvmd/nginx/loc-nocache.conf;
|
||||
}
|
||||
|
||||
location @login {
|
||||
return 302 /login;
|
||||
}
|
||||
|
||||
location /login {
|
||||
root /usr/share/kvmd/web;
|
||||
auth_request off;
|
||||
}
|
||||
|
||||
location /share {
|
||||
root /usr/share/kvmd/web;
|
||||
include /etc/kvmd/nginx/loc-nocache.conf;
|
||||
auth_request off;
|
||||
}
|
||||
|
||||
location = /share/css/user.css {
|
||||
alias /etc/kvmd/web.css;
|
||||
auth_request off;
|
||||
}
|
||||
|
||||
location = /favicon.ico {
|
||||
alias /usr/share/kvmd/web/favicon.ico;
|
||||
include /etc/kvmd/nginx/loc-nocache.conf;
|
||||
auth_request off;
|
||||
}
|
||||
|
||||
location = /robots.txt {
|
||||
alias /usr/share/kvmd/web/robots.txt;
|
||||
include /etc/kvmd/nginx/loc-nocache.conf;
|
||||
auth_request off;
|
||||
}
|
||||
|
||||
location /api/ws {
|
||||
rewrite ^/api/ws$ /ws break;
|
||||
rewrite ^/api/ws\?(.*)$ /ws?$1 break;
|
||||
proxy_pass http://kvmd;
|
||||
include /etc/kvmd/nginx/loc-proxy.conf;
|
||||
include /etc/kvmd/nginx/loc-websocket.conf;
|
||||
auth_request off;
|
||||
}
|
||||
|
||||
location /api/hid/print {
|
||||
rewrite ^/api/hid/print$ /hid/print break;
|
||||
rewrite ^/api/hid/print\?(.*)$ /hid/print?$1 break;
|
||||
proxy_pass http://kvmd;
|
||||
include /etc/kvmd/nginx/loc-proxy.conf;
|
||||
include /etc/kvmd/nginx/loc-bigpost.conf;
|
||||
auth_request off;
|
||||
}
|
||||
|
||||
location /api/msd/read {
|
||||
rewrite ^/api/msd/read$ /msd/read break;
|
||||
rewrite ^/api/msd/read\?(.*)$ /msd/read?$1 break;
|
||||
proxy_pass http://kvmd;
|
||||
include /etc/kvmd/nginx/loc-proxy.conf;
|
||||
include /etc/kvmd/nginx/loc-nobuffering.conf;
|
||||
proxy_read_timeout 7d;
|
||||
auth_request off;
|
||||
}
|
||||
|
||||
location /api/msd/write_remote {
|
||||
rewrite ^/api/msd/write_remote$ /msd/write_remote break;
|
||||
rewrite ^/api/msd/write_remote\?(.*)$ /msd/write_remote?$1 break;
|
||||
proxy_pass http://kvmd;
|
||||
include /etc/kvmd/nginx/loc-proxy.conf;
|
||||
include /etc/kvmd/nginx/loc-nobuffering.conf;
|
||||
proxy_read_timeout 7d;
|
||||
auth_request off;
|
||||
}
|
||||
|
||||
location /api/msd/write {
|
||||
rewrite ^/api/msd/write$ /msd/write break;
|
||||
rewrite ^/api/msd/write\?(.*)$ /msd/write?$1 break;
|
||||
proxy_pass http://kvmd;
|
||||
include /etc/kvmd/nginx/loc-proxy.conf;
|
||||
include /etc/kvmd/nginx/loc-bigpost.conf;
|
||||
auth_request off;
|
||||
}
|
||||
|
||||
location /api/log {
|
||||
rewrite ^/api/log$ /log break;
|
||||
rewrite ^/api/log\?(.*)$ /log?$1 break;
|
||||
proxy_pass http://kvmd;
|
||||
include /etc/kvmd/nginx/loc-proxy.conf;
|
||||
include /etc/kvmd/nginx/loc-nobuffering.conf;
|
||||
proxy_read_timeout 7d;
|
||||
auth_request off;
|
||||
}
|
||||
|
||||
location /api {
|
||||
rewrite ^/api$ / break;
|
||||
rewrite ^/api/(.*)$ /$1 break;
|
||||
proxy_pass http://kvmd;
|
||||
include /etc/kvmd/nginx/loc-proxy.conf;
|
||||
auth_request off;
|
||||
}
|
||||
|
||||
location /streamer {
|
||||
rewrite ^/streamer$ / break;
|
||||
rewrite ^/streamer\?(.*)$ ?$1 break;
|
||||
rewrite ^/streamer/(.*)$ /$1 break;
|
||||
proxy_pass http://ustreamer;
|
||||
include /etc/kvmd/nginx/loc-proxy.conf;
|
||||
include /etc/kvmd/nginx/loc-nobuffering.conf;
|
||||
}
|
||||
|
||||
location /redfish {
|
||||
proxy_pass http://kvmd;
|
||||
include /etc/kvmd/nginx/loc-proxy.conf;
|
||||
auth_request off;
|
||||
}
|
||||
4
configs/nginx/loc-bigpost.conf
Normal file
4
configs/nginx/loc-bigpost.conf
Normal file
@@ -0,0 +1,4 @@
|
||||
limit_rate 6250k;
|
||||
limit_rate_after 50k;
|
||||
client_max_body_size 0;
|
||||
proxy_request_buffering off;
|
||||
2
configs/nginx/loc-login.conf
Normal file
2
configs/nginx/loc-login.conf
Normal file
@@ -0,0 +1,2 @@
|
||||
error_page 401 = @login;
|
||||
error_page 403 = @login;
|
||||
3
configs/nginx/loc-nobuffering.conf
Normal file
3
configs/nginx/loc-nobuffering.conf
Normal file
@@ -0,0 +1,3 @@
|
||||
postpone_output 0;
|
||||
proxy_buffering off;
|
||||
proxy_ignore_headers X-Accel-Buffering;
|
||||
2
configs/nginx/loc-nocache.conf
Normal file
2
configs/nginx/loc-nocache.conf
Normal file
@@ -0,0 +1,2 @@
|
||||
add_header Cache-Control "no-store, no-cache, must-revalidate, proxy-revalidate, pre-check=0, post-check=0, max-age=0";
|
||||
expires -1;
|
||||
6
configs/nginx/loc-proxy.conf
Normal file
6
configs/nginx/loc-proxy.conf
Normal file
@@ -0,0 +1,6 @@
|
||||
proxy_set_header Host $host;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Scheme $scheme;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_set_header X-Forwarded-Port $server_port;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
5
configs/nginx/loc-websocket.conf
Normal file
5
configs/nginx/loc-websocket.conf
Normal file
@@ -0,0 +1,5 @@
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "upgrade";
|
||||
proxy_connect_timeout 7d;
|
||||
proxy_send_timeout 7d;
|
||||
proxy_read_timeout 7d;
|
||||
912
configs/nginx/mime-types.conf
Normal file
912
configs/nginx/mime-types.conf
Normal file
@@ -0,0 +1,912 @@
|
||||
types {
|
||||
application/A2L a2l;
|
||||
application/AML aml;
|
||||
application/andrew-inset ez;
|
||||
application/ATF atf;
|
||||
application/ATFX atfx;
|
||||
application/ATXML atxml;
|
||||
application/atom+xml atom;
|
||||
application/atomcat+xml atomcat;
|
||||
application/atomdeleted+xml atomdeleted;
|
||||
application/atomsvc+xml atomsvc;
|
||||
application/auth-policy+xml apxml;
|
||||
application/bacnet-xdd+zip xdd;
|
||||
application/calendar+xml xcs;
|
||||
application/cbor cbor;
|
||||
application/cccex c3ex;
|
||||
application/ccmp+xml ccmp;
|
||||
application/ccxml+xml ccxml;
|
||||
application/CDFX+XML cdfx;
|
||||
application/cdmi-capability cdmia;
|
||||
application/cdmi-container cdmic;
|
||||
application/cdmi-domain cdmid;
|
||||
application/cdmi-object cdmio;
|
||||
application/cdmi-queue cdmiq;
|
||||
application/CEA cea;
|
||||
application/cellml+xml cellml cml;
|
||||
application/clue_info+xml clue;
|
||||
application/cms cmsc;
|
||||
application/cpl+xml cpl;
|
||||
application/csrattrs csrattrs;
|
||||
application/dash+xml mpd;
|
||||
application/dashdelta mpdd;
|
||||
application/davmount+xml davmount;
|
||||
application/DCD dcd;
|
||||
application/dicom dcm;
|
||||
application/DII dii;
|
||||
application/DIT dit;
|
||||
application/dskpp+xml xmls;
|
||||
application/dssc+der dssc;
|
||||
application/dssc+xml xdssc;
|
||||
application/dvcs dvc;
|
||||
application/ecmascript es;
|
||||
application/efi efi;
|
||||
application/emma+xml emma;
|
||||
application/emotionml+xml emotionml;
|
||||
application/epub+zip epub;
|
||||
application/exi exi;
|
||||
application/fastinfoset finf;
|
||||
application/fdt+xml fdt;
|
||||
application/font-tdpfr pfr;
|
||||
application/geo+json geojson;
|
||||
application/gml+xml gml;
|
||||
application/gzip gz tgz;
|
||||
application/hyperstudio stk;
|
||||
application/inkml+xml ink inkml;
|
||||
application/ipfix ipfix;
|
||||
application/its+xml its;
|
||||
application/javascript js;
|
||||
application/jrd+json jrd;
|
||||
application/json json;
|
||||
application/json-patch+json json-patch;
|
||||
application/ld+json jsonld;
|
||||
application/lgr+xml lgr;
|
||||
application/link-format wlnk;
|
||||
application/lost+xml lostxml;
|
||||
application/lostsync+xml lostsyncxml;
|
||||
application/LXF lxf;
|
||||
application/mac-binhex40 hqx;
|
||||
application/mads+xml mads;
|
||||
application/marc mrc;
|
||||
application/marcxml+xml mrcx;
|
||||
application/mathematica nb ma mb;
|
||||
application/mathml+xml mml;
|
||||
application/mbox mbox;
|
||||
application/metalink4+xml meta4;
|
||||
application/mets+xml mets;
|
||||
application/MF4 mf4;
|
||||
application/mmt-usd+xml musd;
|
||||
application/mods+xml mods;
|
||||
application/mp21 m21 mp21;
|
||||
application/msword doc;
|
||||
application/mxf mxf;
|
||||
application/n-quads nq;
|
||||
application/n-triples nt;
|
||||
application/ocsp-request orq;
|
||||
application/ocsp-response ors;
|
||||
application/octet-stream bin lha lzh exe class so dll img iso;
|
||||
application/oda oda;
|
||||
application/ODX odx;
|
||||
application/oebps-package+xml opf;
|
||||
application/ogg ogx;
|
||||
application/oxps oxps;
|
||||
application/p2p-overlay+xml relo;
|
||||
application/pdf pdf;
|
||||
application/PDX pdx;
|
||||
application/pgp-encrypted pgp;
|
||||
application/pgp-signature sig;
|
||||
application/pkcs10 p10;
|
||||
application/pkcs12 p12 pfx;
|
||||
application/pkcs7-mime p7m p7c;
|
||||
application/pkcs7-signature p7s;
|
||||
application/pkcs8 p8;
|
||||
application/pkix-cert cer;
|
||||
application/pkix-crl crl;
|
||||
application/pkix-pkipath pkipath;
|
||||
application/pkixcmp pki;
|
||||
application/pls+xml pls;
|
||||
application/postscript ps eps ai;
|
||||
application/provenance+xml provx;
|
||||
application/prs.cww cw cww;
|
||||
application/prs.hpub+zip hpub;
|
||||
application/prs.nprend rnd rct;
|
||||
application/prs.rdf-xml-crypt rdf-crypt;
|
||||
application/prs.xsf+xml xsf;
|
||||
application/pskc+xml pskcxml;
|
||||
application/rdf+xml rdf;
|
||||
application/route-apd+xml rapd;
|
||||
application/route-s-tsid+xml sls;
|
||||
application/route-usd+xml rusd;
|
||||
application/reginfo+xml rif;
|
||||
application/relax-ng-compact-syntax rnc;
|
||||
application/resource-lists-diff+xml rld;
|
||||
application/resource-lists+xml rl;
|
||||
application/rfc+xml rfcxml;
|
||||
application/rls-services+xml rs;
|
||||
application/rpki-ghostbusters gbr;
|
||||
application/rpki-manifest mft;
|
||||
application/rpki-roa roa;
|
||||
application/rtf rtf;
|
||||
application/scim+json scim;
|
||||
application/scvp-cv-request scq;
|
||||
application/scvp-cv-response scs;
|
||||
application/scvp-vp-request spq;
|
||||
application/scvp-vp-response spp;
|
||||
application/sdp sdp;
|
||||
application/sgml-open-catalog soc;
|
||||
application/shf+xml shf;
|
||||
application/sieve siv sieve;
|
||||
application/simple-filter+xml cl;
|
||||
application/smil+xml smil smi sml;
|
||||
application/sparql-query rq;
|
||||
application/sparql-results+xml srx;
|
||||
application/sql sql;
|
||||
application/srgs gram;
|
||||
application/srgs+xml grxml;
|
||||
application/sru+xml sru;
|
||||
application/ssml+xml ssml;
|
||||
application/tamp-apex-update tau;
|
||||
application/tamp-apex-update-confirm auc;
|
||||
application/tamp-community-update tcu;
|
||||
application/tamp-community-update-confirm cuc;
|
||||
application/tamp-error ter;
|
||||
application/tamp-sequence-adjust tsa;
|
||||
application/tamp-sequence-adjust-confirm sac;
|
||||
application/tamp-update tur;
|
||||
application/tamp-update-confirm tuc;
|
||||
application/tei+xml tei teiCorpus odd;
|
||||
application/thraud+xml tfi;
|
||||
application/timestamp-query tsq;
|
||||
application/timestamp-reply tsr;
|
||||
application/timestamped-data tsd;
|
||||
application/trig trig;
|
||||
application/ttml+xml ttml;
|
||||
application/urc-grpsheet+xml gsheet;
|
||||
application/urc-ressheet+xml rsheet;
|
||||
application/urc-targetdesc+xml td;
|
||||
application/urc-uisocketdesc+xml uis;
|
||||
application/vnd.1000minds.decision-model+xml 1km;
|
||||
application/vnd.3gpp.pic-bw-large plb;
|
||||
application/vnd.3gpp.pic-bw-small psb;
|
||||
application/vnd.3gpp.pic-bw-var pvb;
|
||||
application/vnd.3gpp2.sms sms;
|
||||
application/vnd.3gpp2.tcap tcap;
|
||||
application/vnd.3lightssoftware.imagescal imgcal;
|
||||
application/vnd.3M.Post-it-Notes pwn;
|
||||
application/vnd.accpac.simply.aso aso;
|
||||
application/vnd.accpac.simply.imp imp;
|
||||
application/vnd.acucobol acu;
|
||||
application/vnd.acucorp atc acutc;
|
||||
application/vnd.adobe.flash.movie swf;
|
||||
application/vnd.adobe.formscentral.fcdt fcdt;
|
||||
application/vnd.adobe.fxp fxp fxpl;
|
||||
application/vnd.adobe.xdp+xml xdp;
|
||||
application/vnd.adobe.xfdf xfdf;
|
||||
application/vnd.ahead.space ahead;
|
||||
application/vnd.airzip.filesecure.azf azf;
|
||||
application/vnd.airzip.filesecure.azs azs;
|
||||
application/vnd.amazon.mobi8-ebook azw3;
|
||||
application/vnd.americandynamics.acc acc;
|
||||
application/vnd.amiga.ami ami;
|
||||
application/vnd.anki apkg;
|
||||
application/vnd.anser-web-certificate-issue-initiation cii;
|
||||
application/vnd.anser-web-funds-transfer-initiation fti;
|
||||
application/vnd.apple.installer+xml dist distz pkg mpkg;
|
||||
application/vnd.apple.mpegurl m3u8;
|
||||
application/vnd.aristanetworks.swi swi;
|
||||
application/vnd.astraea-software.iota iota;
|
||||
application/vnd.audiograph aep;
|
||||
application/vnd.autopackage package;
|
||||
application/vnd.balsamiq.bmml+xml bmml;
|
||||
application/vnd.balsamiq.bmpr bmpr;
|
||||
application/vnd.blueice.multipass mpm;
|
||||
application/vnd.bluetooth.ep.oob ep;
|
||||
application/vnd.bluetooth.le.oob le;
|
||||
application/vnd.bmi bmi;
|
||||
application/vnd.businessobjects rep;
|
||||
application/vnd.cendio.thinlinc.clientconf tlclient;
|
||||
application/vnd.chemdraw+xml cdxml;
|
||||
application/vnd.chess-pgn pgn;
|
||||
application/vnd.chipnuts.karaoke-mmd mmd;
|
||||
application/vnd.cinderella cdy;
|
||||
application/vnd.citationstyles.style+xml csl;
|
||||
application/vnd.claymore cla;
|
||||
application/vnd.cloanto.rp9 rp9;
|
||||
application/vnd.clonk.c4group c4g c4d c4f c4p c4u;
|
||||
application/vnd.cluetrust.cartomobile-config c11amc;
|
||||
application/vnd.cluetrust.cartomobile-config-pkg c11amz;
|
||||
application/vnd.coffeescript coffee;
|
||||
application/vnd.comicbook+zip cbz;
|
||||
application/vnd.commerce-battelle ica icf icd ic0 ic1 ic2 ic3 ic4 ic5 ic6 ic7 ic8;
|
||||
application/vnd.commonspace csp cst;
|
||||
application/vnd.contact.cmsg cdbcmsg;
|
||||
application/vnd.coreos.ignition+json ign ignition;
|
||||
application/vnd.cosmocaller cmc;
|
||||
application/vnd.crick.clicker clkx;
|
||||
application/vnd.crick.clicker.keyboard clkk;
|
||||
application/vnd.crick.clicker.palette clkp;
|
||||
application/vnd.crick.clicker.template clkt;
|
||||
application/vnd.crick.clicker.wordbank clkw;
|
||||
application/vnd.criticaltools.wbs+xml wbs;
|
||||
application/vnd.ctc-posml pml;
|
||||
application/vnd.cups-ppd ppd;
|
||||
application/vnd.curl curl;
|
||||
application/vnd.dart dart;
|
||||
application/vnd.data-vision.rdz rdz;
|
||||
application/vnd.debian.binary-package deb udeb;
|
||||
application/vnd.dece.data uvf uvvf uvd uvvd;
|
||||
application/vnd.dece.ttml+xml uvt uvvt;
|
||||
application/vnd.dece.unspecified uvx uvvx;
|
||||
application/vnd.dece.zip uvz uvvz;
|
||||
application/vnd.denovo.fcselayout-link fe_launch;
|
||||
application/vnd.desmume.movie dsm;
|
||||
application/vnd.dna dna;
|
||||
application/vnd.document+json docjson;
|
||||
application/vnd.doremir.scorecloud-binary-document scld;
|
||||
application/vnd.dpgraph dpg mwc dpgraph;
|
||||
application/vnd.dreamfactory dfac;
|
||||
application/vnd.dtg.local.flash fla;
|
||||
application/vnd.dvb.ait ait;
|
||||
application/vnd.dvb.service svc;
|
||||
application/vnd.dynageo geo;
|
||||
application/vnd.dzr dzr;
|
||||
application/vnd.ecowin.chart mag;
|
||||
application/vnd.enliven nml;
|
||||
application/vnd.epson.esf esf;
|
||||
application/vnd.epson.msf msf;
|
||||
application/vnd.epson.quickanime qam;
|
||||
application/vnd.epson.salt slt;
|
||||
application/vnd.epson.ssf ssf;
|
||||
application/vnd.ericsson.quickcall qcall qca;
|
||||
application/vnd.espass-espass+zip espass;
|
||||
application/vnd.eszigno3+xml es3 et3;
|
||||
application/vnd.etsi.asic-e+zip asice sce;
|
||||
application/vnd.etsi.asic-s+zip asics;
|
||||
application/vnd.etsi.timestamp-token tst;
|
||||
application/vnd.evolv.ecig.profile ecigprofile;
|
||||
application/vnd.evolv.ecig.settings ecig;
|
||||
application/vnd.evolv.ecig.theme ecigtheme;
|
||||
application/vnd.ezpix-album ez2;
|
||||
application/vnd.ezpix-package ez3;
|
||||
application/vnd.fastcopy-disk-image dim;
|
||||
application/vnd.fdf fdf;
|
||||
application/vnd.fdsn.mseed msd mseed;
|
||||
application/vnd.fdsn.seed seed dataless;
|
||||
application/vnd.filmit.zfc zfc;
|
||||
application/vnd.FloGraphIt gph;
|
||||
application/vnd.fluxtime.clip ftc;
|
||||
application/vnd.font-fontforge-sfd sfd;
|
||||
application/vnd.framemaker fm;
|
||||
application/vnd.frogans.fnc fnc;
|
||||
application/vnd.frogans.ltf ltf;
|
||||
application/vnd.fsc.weblaunch fsc;
|
||||
application/vnd.fujitsu.oasys oas;
|
||||
application/vnd.fujitsu.oasys2 oa2;
|
||||
application/vnd.fujitsu.oasys3 oa3;
|
||||
application/vnd.fujitsu.oasysgp fg5;
|
||||
application/vnd.fujitsu.oasysprs bh2;
|
||||
application/vnd.fujixerox.ddd ddd;
|
||||
application/vnd.fujixerox.docuworks xdw;
|
||||
application/vnd.fujixerox.docuworks.binder xbd;
|
||||
application/vnd.fujixerox.docuworks.container xct;
|
||||
application/vnd.fuzzysheet fzs;
|
||||
application/vnd.genomatix.tuxedo txd;
|
||||
application/vnd.geocube+xml g3 g³;
|
||||
application/vnd.geogebra.file ggb;
|
||||
application/vnd.geogebra.tool ggt;
|
||||
application/vnd.geometry-explorer gex gre;
|
||||
application/vnd.geonext gxt;
|
||||
application/vnd.geoplan g2w;
|
||||
application/vnd.geospace g3w;
|
||||
application/vnd.gmx gmx;
|
||||
application/vnd.google-earth.kml+xml kml;
|
||||
application/vnd.google-earth.kmz kmz;
|
||||
application/vnd.grafeq gqf gqs;
|
||||
application/vnd.groove-account gac;
|
||||
application/vnd.groove-help ghf;
|
||||
application/vnd.groove-identity-message gim;
|
||||
application/vnd.groove-injector grv;
|
||||
application/vnd.groove-tool-message gtm;
|
||||
application/vnd.groove-tool-template tpl;
|
||||
application/vnd.groove-vcard vcg;
|
||||
application/vnd.hal+xml hal;
|
||||
application/vnd.HandHeld-Entertainment+xml zmm;
|
||||
application/vnd.hbci hbci hbc kom upa pkd bpd;
|
||||
application/vnd.hdt hdt;
|
||||
application/vnd.hhe.lesson-player les;
|
||||
application/vnd.hp-HPGL hpgl;
|
||||
application/vnd.hp-hpid hpi hpid;
|
||||
application/vnd.hp-hps hps;
|
||||
application/vnd.hp-jlyt jlt;
|
||||
application/vnd.hp-PCL pcl;
|
||||
application/vnd.hydrostatix.sof-data sfd-hdstx;
|
||||
application/vnd.hzn-3d-crossword x3d;
|
||||
application/vnd.ibm.electronic-media emm;
|
||||
application/vnd.ibm.MiniPay mpy;
|
||||
application/vnd.ibm.modcap list3820 listafp afp pseg3820;
|
||||
application/vnd.ibm.rights-management irm;
|
||||
application/vnd.ibm.secure-container sc;
|
||||
application/vnd.iccprofile icc icm;
|
||||
application/vnd.ieee.1905 1905.1;
|
||||
application/vnd.igloader igl;
|
||||
application/vnd.imagemeter.folder+zip imf;
|
||||
application/vnd.imagemeter.image+zip imi;
|
||||
application/vnd.immervision-ivp ivp;
|
||||
application/vnd.immervision-ivu ivu;
|
||||
application/vnd.ims.imsccv1p1 imscc;
|
||||
application/vnd.insors.igm igm;
|
||||
application/vnd.intercon.formnet xpw xpx;
|
||||
application/vnd.intergeo i2g;
|
||||
application/vnd.intu.qbo qbo;
|
||||
application/vnd.intu.qfx qfx;
|
||||
application/vnd.ipunplugged.rcprofile rcprofile;
|
||||
application/vnd.irepository.package+xml irp;
|
||||
application/vnd.is-xpr xpr;
|
||||
application/vnd.isac.fcs fcs;
|
||||
application/vnd.jam jam;
|
||||
application/vnd.jcp.javame.midlet-rms rms;
|
||||
application/vnd.jisp jisp;
|
||||
application/vnd.joost.joda-archive joda;
|
||||
application/vnd.kahootz ktz ktr;
|
||||
application/vnd.kde.karbon karbon;
|
||||
application/vnd.kde.kchart chrt;
|
||||
application/vnd.kde.kformula kfo;
|
||||
application/vnd.kde.kivio flw;
|
||||
application/vnd.kde.kontour kon;
|
||||
application/vnd.kde.kpresenter kpr kpt;
|
||||
application/vnd.kde.kspread ksp;
|
||||
application/vnd.kde.kword kwd kwt;
|
||||
application/vnd.kenameaapp htke;
|
||||
application/vnd.kidspiration kia;
|
||||
application/vnd.Kinar kne knp sdf;
|
||||
application/vnd.koan skp skd skm skt;
|
||||
application/vnd.kodak-descriptor sse;
|
||||
application/vnd.las.las+json lasjson;
|
||||
application/vnd.las.las+xml lasxml;
|
||||
application/vnd.llamagraphics.life-balance.desktop lbd;
|
||||
application/vnd.llamagraphics.life-balance.exchange+xml lbe;
|
||||
application/vnd.lotus-1-2-3 123 wk4 wk3 wk1;
|
||||
application/vnd.lotus-approach apr vew;
|
||||
application/vnd.lotus-freelance prz pre;
|
||||
application/vnd.lotus-notes nsf ntf ndl ns4 ns3 ns2 nsh nsg;
|
||||
application/vnd.lotus-organizer or3 or2 org;
|
||||
application/vnd.lotus-screencam scm;
|
||||
application/vnd.lotus-wordpro lwp sam;
|
||||
application/vnd.macports.portpkg portpkg;
|
||||
application/vnd.mapbox-vector-tile mvt;
|
||||
application/vnd.marlin.drm.mdcf mdc;
|
||||
application/vnd.maxmind.maxmind-db mmdb;
|
||||
application/vnd.mcd mcd;
|
||||
application/vnd.medcalcdata mc1;
|
||||
application/vnd.mediastation.cdkey cdkey;
|
||||
application/vnd.MFER mwf;
|
||||
application/vnd.mfmp mfm;
|
||||
application/vnd.micrografx.flo flo;
|
||||
application/vnd.micrografx.igx igx;
|
||||
application/vnd.mif mif;
|
||||
application/vnd.Mobius.DAF daf;
|
||||
application/vnd.Mobius.DIS dis;
|
||||
application/vnd.Mobius.MBK mbk;
|
||||
application/vnd.Mobius.MQY mqy;
|
||||
application/vnd.Mobius.MSL msl;
|
||||
application/vnd.Mobius.PLC plc;
|
||||
application/vnd.Mobius.TXF txf;
|
||||
application/vnd.mophun.application mpn;
|
||||
application/vnd.mophun.certificate mpc;
|
||||
application/vnd.mozilla.xul+xml xul;
|
||||
application/vnd.ms-3mfdocument 3mf;
|
||||
application/vnd.ms-artgalry cil;
|
||||
application/vnd.ms-asf asf;
|
||||
application/vnd.ms-cab-compressed cab;
|
||||
application/vnd.ms-excel xls xlm xla xlc xlt xlw;
|
||||
application/vnd.ms-excel.template.macroEnabled.12 xltm;
|
||||
application/vnd.ms-excel.addin.macroEnabled.12 xlam;
|
||||
application/vnd.ms-excel.sheet.binary.macroEnabled.12 xlsb;
|
||||
application/vnd.ms-excel.sheet.macroEnabled.12 xlsm;
|
||||
application/vnd.ms-fontobject eot;
|
||||
application/vnd.ms-htmlhelp chm;
|
||||
application/vnd.ms-ims ims;
|
||||
application/vnd.ms-lrm lrm;
|
||||
application/vnd.ms-officetheme thmx;
|
||||
application/vnd.ms-powerpoint ppt pps pot;
|
||||
application/vnd.ms-powerpoint.addin.macroEnabled.12 ppam;
|
||||
application/vnd.ms-powerpoint.presentation.macroEnabled.12 pptm;
|
||||
application/vnd.ms-powerpoint.slide.macroEnabled.12 sldm;
|
||||
application/vnd.ms-powerpoint.slideshow.macroEnabled.12 ppsm;
|
||||
application/vnd.ms-powerpoint.template.macroEnabled.12 potm;
|
||||
application/vnd.ms-project mpp mpt;
|
||||
application/vnd.ms-tnef tnef tnf;
|
||||
application/vnd.ms-word.document.macroEnabled.12 docm;
|
||||
application/vnd.ms-word.template.macroEnabled.12 dotm;
|
||||
application/vnd.ms-works wcm wdb wks wps;
|
||||
application/vnd.ms-wpl wpl;
|
||||
application/vnd.ms-xpsdocument xps;
|
||||
application/vnd.msa-disk-image msa;
|
||||
application/vnd.mseq mseq;
|
||||
application/vnd.multiad.creator crtr;
|
||||
application/vnd.multiad.creator.cif cif;
|
||||
application/vnd.musician mus;
|
||||
application/vnd.muvee.style msty;
|
||||
application/vnd.mynfc taglet;
|
||||
application/vnd.nervana entity request bkm kcm;
|
||||
application/vnd.nitf nitf;
|
||||
application/vnd.neurolanguage.nlu nlu;
|
||||
application/vnd.nintendo.nitro.rom nds;
|
||||
application/vnd.nintendo.snes.rom sfc smc;
|
||||
application/vnd.noblenet-directory nnd;
|
||||
application/vnd.noblenet-sealer nns;
|
||||
application/vnd.noblenet-web nnw;
|
||||
application/vnd.nokia.n-gage.ac+xml ac;
|
||||
application/vnd.nokia.n-gage.data ngdat;
|
||||
application/vnd.nokia.n-gage.symbian.install n-gage;
|
||||
application/vnd.nokia.radio-preset rpst;
|
||||
application/vnd.nokia.radio-presets rpss;
|
||||
application/vnd.novadigm.EDM edm;
|
||||
application/vnd.novadigm.EDX edx;
|
||||
application/vnd.novadigm.EXT ext;
|
||||
application/vnd.oasis.opendocument.chart odc;
|
||||
application/vnd.oasis.opendocument.chart-template otc;
|
||||
application/vnd.oasis.opendocument.database odb;
|
||||
application/vnd.oasis.opendocument.formula odf;
|
||||
application/vnd.oasis.opendocument.graphics odg;
|
||||
application/vnd.oasis.opendocument.graphics-template otg;
|
||||
application/vnd.oasis.opendocument.image odi;
|
||||
application/vnd.oasis.opendocument.image-template oti;
|
||||
application/vnd.oasis.opendocument.presentation odp;
|
||||
application/vnd.oasis.opendocument.presentation-template otp;
|
||||
application/vnd.oasis.opendocument.spreadsheet ods;
|
||||
application/vnd.oasis.opendocument.spreadsheet-template ots;
|
||||
application/vnd.oasis.opendocument.text odt;
|
||||
application/vnd.oasis.opendocument.text-master odm;
|
||||
application/vnd.oasis.opendocument.text-template ott;
|
||||
application/vnd.oasis.opendocument.text-web oth;
|
||||
application/vnd.olpc-sugar xo;
|
||||
application/vnd.oma.dd2+xml dd2;
|
||||
application/vnd.onepager tam;
|
||||
application/vnd.onepagertamp tamp;
|
||||
application/vnd.onepagertamx tamx;
|
||||
application/vnd.onepagertat tat;
|
||||
application/vnd.onepagertatp tatp;
|
||||
application/vnd.onepagertatx tatx;
|
||||
application/vnd.openblox.game+xml obgx;
|
||||
application/vnd.openblox.game-binary obg;
|
||||
application/vnd.openeye.oeb oeb;
|
||||
application/vnd.openofficeorg.extension oxt;
|
||||
application/vnd.openstreetmap.data+xml osm;
|
||||
application/vnd.openxmlformats-officedocument.presentationml.presentation pptx;
|
||||
application/vnd.openxmlformats-officedocument.presentationml.slide sldx;
|
||||
application/vnd.openxmlformats-officedocument.presentationml.slideshow ppsx;
|
||||
application/vnd.openxmlformats-officedocument.presentationml.template potx;
|
||||
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet xlsx;
|
||||
application/vnd.openxmlformats-officedocument.spreadsheetml.template xltx;
|
||||
application/vnd.openxmlformats-officedocument.wordprocessingml.document docx;
|
||||
application/vnd.openxmlformats-officedocument.wordprocessingml.template dotx;
|
||||
application/vnd.osa.netdeploy ndc;
|
||||
application/vnd.osgeo.mapguide.package mgp;
|
||||
application/vnd.osgi.dp dp;
|
||||
application/vnd.osgi.subsystem esa;
|
||||
application/vnd.oxli.countgraph oxlicg;
|
||||
application/vnd.palm prc pdb pqa oprc;
|
||||
application/vnd.panoply plp;
|
||||
application/vnd.pawaafile paw;
|
||||
application/vnd.pg.format str;
|
||||
application/vnd.pg.osasli ei6;
|
||||
application/vnd.piaccess.application-license pil;
|
||||
application/vnd.picsel efif;
|
||||
application/vnd.pmi.widget wg;
|
||||
application/vnd.pocketlearn plf;
|
||||
application/vnd.powerbuilder6 pbd;
|
||||
application/vnd.preminet preminet;
|
||||
application/vnd.previewsystems.box box vbox;
|
||||
application/vnd.proteus.magazine mgz;
|
||||
application/vnd.publishare-delta-tree qps;
|
||||
application/vnd.pvi.ptid1 ptid;
|
||||
application/vnd.qualcomm.brew-app-res bar;
|
||||
application/vnd.Quark.QuarkXPress qxd qxt qwd qwt qxl qxb;
|
||||
application/vnd.quobject-quoxdocument quox quiz;
|
||||
application/vnd.rainstor.data tree;
|
||||
application/vnd.rar rar;
|
||||
application/vnd.realvnc.bed bed;
|
||||
application/vnd.recordare.musicxml mxl;
|
||||
application/vnd.rig.cryptonote cryptonote;
|
||||
application/vnd.route66.link66+xml link66;
|
||||
application/vnd.sailingtracker.track st;
|
||||
application/vnd.scribus scd sla slaz;
|
||||
application/vnd.sealed.3df s3df;
|
||||
application/vnd.sealed.csf scsf;
|
||||
application/vnd.sealed.doc sdoc sdo s1w;
|
||||
application/vnd.sealed.eml seml sem;
|
||||
application/vnd.sealed.mht smht smh;
|
||||
application/vnd.sealed.ppt sppt s1p;
|
||||
application/vnd.sealed.tiff stif;
|
||||
application/vnd.sealed.xls sxls sxl s1e;
|
||||
application/vnd.sealedmedia.softseal.html stml s1h;
|
||||
application/vnd.sealedmedia.softseal.pdf spdf spd s1a;
|
||||
application/vnd.seemail see;
|
||||
application/vnd.sema sema;
|
||||
application/vnd.semd semd;
|
||||
application/vnd.semf semf;
|
||||
application/vnd.shana.informed.formdata ifm;
|
||||
application/vnd.shana.informed.formtemplate itp;
|
||||
application/vnd.shana.informed.interchange iif;
|
||||
application/vnd.shana.informed.package ipk;
|
||||
application/vnd.sigrok.session sr;
|
||||
application/vnd.SimTech-MindMapper twd twds;
|
||||
application/vnd.smaf mmf;
|
||||
application/vnd.smart.notebook notebook;
|
||||
application/vnd.smart.teacher teacher;
|
||||
application/vnd.software602.filler.form+xml fo;
|
||||
application/vnd.software602.filler.form-xml-zip zfo;
|
||||
application/vnd.solent.sdkm+xml sdkm sdkd;
|
||||
application/vnd.spotfire.dxp dxp;
|
||||
application/vnd.spotfire.sfs sfs;
|
||||
application/vnd.stepmania.package smzip;
|
||||
application/vnd.stepmania.stepchart sm;
|
||||
application/vnd.sun.wadl+xml wadl;
|
||||
application/vnd.sus-calendar sus susp;
|
||||
application/vnd.syncml+xml xsm;
|
||||
application/vnd.syncml.dm+wbxml bdm;
|
||||
application/vnd.syncml.dm+xml xdm;
|
||||
application/vnd.syncml.dmddf+xml ddf;
|
||||
application/vnd.tao.intent-module-archive tao;
|
||||
application/vnd.tcpdump.pcap pcap cap dmp;
|
||||
application/vnd.theqvd qvd;
|
||||
application/vnd.tml vfr viaframe;
|
||||
application/vnd.tmobile-livetv tmo;
|
||||
application/vnd.trid.tpt tpt;
|
||||
application/vnd.triscape.mxs mxs;
|
||||
application/vnd.trueapp tra;
|
||||
application/vnd.ufdl ufdl ufd frm;
|
||||
application/vnd.uiq.theme utz;
|
||||
application/vnd.umajin umj;
|
||||
application/vnd.unity unityweb;
|
||||
application/vnd.uoml+xml uoml uo;
|
||||
application/vnd.uri-map urim urimap;
|
||||
application/vnd.valve.source.material vmt;
|
||||
application/vnd.vcx vcx;
|
||||
application/vnd.vd-study mxi study-inter model-inter;
|
||||
application/vnd.vectorworks vwx;
|
||||
application/vnd.vidsoft.vidconference vsc;
|
||||
application/vnd.visio vsd vst vsw vss;
|
||||
application/vnd.visionary vis;
|
||||
application/vnd.vsf vsf;
|
||||
application/vnd.wap.sic sic;
|
||||
application/vnd.wap.slc slc;
|
||||
application/vnd.wap.wbxml wbxml;
|
||||
application/vnd.wap.wmlc wmlc;
|
||||
application/vnd.wap.wmlscriptc wmlsc;
|
||||
application/vnd.webturbo wtb;
|
||||
application/vnd.wfa.p2p p2p;
|
||||
application/vnd.wfa.wsc wsc;
|
||||
application/vnd.wmc wmc;
|
||||
application/vnd.wolfram.mathematica.package m;
|
||||
application/vnd.wolfram.player nbp;
|
||||
application/vnd.wordperfect wpd;
|
||||
application/vnd.wqd wqd;
|
||||
application/vnd.wt.stf stf;
|
||||
application/vnd.wv.csp+wbxml wv;
|
||||
application/vnd.xara xar;
|
||||
application/vnd.xfdl xfdl xfd;
|
||||
application/vnd.xmpie.cpkg cpkg;
|
||||
application/vnd.xmpie.dpkg dpkg;
|
||||
application/vnd.xmpie.ppkg ppkg;
|
||||
application/vnd.xmpie.xlim xlim;
|
||||
application/vnd.yamaha.hv-dic hvd;
|
||||
application/vnd.yamaha.hv-script hvs;
|
||||
application/vnd.yamaha.hv-voice hvp;
|
||||
application/vnd.yamaha.openscoreformat osf;
|
||||
application/vnd.yamaha.smaf-audio saf;
|
||||
application/vnd.yamaha.smaf-phrase spf;
|
||||
application/vnd.yaoweme yme;
|
||||
application/vnd.yellowriver-custom-menu cmp;
|
||||
application/vnd.zul zir zirz;
|
||||
application/vnd.zzazz.deck+xml zaz;
|
||||
application/voicexml+xml vxml;
|
||||
application/watcherinfo+xml wif;
|
||||
application/widget wgt;
|
||||
application/wsdl+xml wsdl;
|
||||
application/wspolicy+xml wspolicy;
|
||||
application/xcap-att+xml xav;
|
||||
application/xcap-caps+xml xca;
|
||||
application/xcap-diff+xml xdf;
|
||||
application/xcap-el+xml xel;
|
||||
application/xcap-error+xml xer;
|
||||
application/xcap-ns+xml xns;
|
||||
application/xhtml+xml xhtml xhtm xht;
|
||||
application/xml-dtd dtd;
|
||||
application/xop+xml xop;
|
||||
application/xslt+xml xsl xslt;
|
||||
application/xv+xml mxml xhvml xvml xvm;
|
||||
application/yang yang;
|
||||
application/yin+xml yin;
|
||||
application/zip zip;
|
||||
audio/32kadpcm 726;
|
||||
audio/ac3 ac3;
|
||||
audio/AMR amr;
|
||||
audio/AMR-WB awb;
|
||||
audio/asc acn;
|
||||
audio/ATRAC-ADVANCED-LOSSLESS aal;
|
||||
audio/ATRAC-X atx;
|
||||
audio/ATRAC3 at3 aa3 omg;
|
||||
audio/basic au snd;
|
||||
audio/dls dls;
|
||||
audio/EVRC evc;
|
||||
audio/EVRCB evb;
|
||||
audio/EVRCNW enw;
|
||||
audio/EVRCWB evw;
|
||||
audio/iLBC lbc;
|
||||
audio/L16 l16;
|
||||
audio/mobile-xmf mxmf;
|
||||
audio/mp4 m4a;
|
||||
audio/mpeg mp3 mpga mp1 mp2;
|
||||
audio/ogg oga ogg opus spx;
|
||||
audio/prs.sid sid psid;
|
||||
audio/qcelp qcp;
|
||||
audio/SMV smv;
|
||||
audio/vnd.audikoz koz;
|
||||
audio/vnd.dece.audio uva uvva;
|
||||
audio/vnd.digital-winds eol;
|
||||
audio/vnd.dolby.mlp mlp;
|
||||
audio/vnd.dts dts;
|
||||
audio/vnd.dts.hd dtshd;
|
||||
audio/vnd.everad.plj plj;
|
||||
audio/vnd.lucent.voice lvp;
|
||||
audio/vnd.ms-playready.media.pya pya;
|
||||
audio/vnd.nortel.vbk vbk;
|
||||
audio/vnd.nuera.ecelp4800 ecelp4800;
|
||||
audio/vnd.nuera.ecelp7470 ecelp7470;
|
||||
audio/vnd.nuera.ecelp9600 ecelp9600;
|
||||
audio/vnd.presonus.multitrack multitrack;
|
||||
audio/vnd.rip rip;
|
||||
audio/vnd.sealedmedia.softseal.mpeg smp3 smp s1m;
|
||||
font/collection ttc;
|
||||
font/otf otf;
|
||||
font/ttf ttf;
|
||||
font/woff woff;
|
||||
font/woff2 woff2;
|
||||
image/bmp bmp dib;
|
||||
image/cgm cgm;
|
||||
image/dicom-rle drle;
|
||||
image/emf emf;
|
||||
image/fits fits fit fts;
|
||||
image/gif gif;
|
||||
image/ief ief;
|
||||
image/jls jls;
|
||||
image/jp2 jp2 jpg2;
|
||||
image/jpeg jpg jpeg jpe jfif;
|
||||
image/jpm jpm jpgm;
|
||||
image/jpx jpx jpf;
|
||||
image/ktx ktx;
|
||||
image/png png;
|
||||
image/prs.btif btif btf;
|
||||
image/prs.pti pti;
|
||||
image/svg+xml svg svgz;
|
||||
image/t38 t38;
|
||||
image/tiff tiff tif;
|
||||
image/tiff-fx tfx;
|
||||
image/vnd.adobe.photoshop psd;
|
||||
image/vnd.airzip.accelerator.azv azv;
|
||||
image/vnd.dece.graphic uvi uvvi uvg uvvg;
|
||||
image/vnd.djvu djvu djv;
|
||||
image/vnd.dwg dwg;
|
||||
image/vnd.dxf dxf;
|
||||
image/vnd.fastbidsheet fbs;
|
||||
image/vnd.fpx fpx;
|
||||
image/vnd.fst fst;
|
||||
image/vnd.fujixerox.edmics-mmr mmr;
|
||||
image/vnd.fujixerox.edmics-rlc rlc;
|
||||
image/vnd.globalgraphics.pgb pgb;
|
||||
image/vnd.microsoft.icon ico;
|
||||
image/vnd.mozilla.apng apng;
|
||||
image/vnd.ms-modi mdi;
|
||||
image/vnd.radiance hdr rgbe xyze;
|
||||
image/vnd.sealed.png spng spn s1n;
|
||||
image/vnd.sealedmedia.softseal.gif sgif sgi s1g;
|
||||
image/vnd.sealedmedia.softseal.jpg sjpg sjp s1j;
|
||||
image/vnd.tencent.tap tap;
|
||||
image/vnd.valve.source.texture vtf;
|
||||
image/vnd.wap.wbmp wbmp;
|
||||
image/vnd.xiff xif;
|
||||
image/vnd.zbrush.pcx pcx;
|
||||
image/wmf wmf;
|
||||
message/global u8msg;
|
||||
message/global-delivery-status u8dsn;
|
||||
message/global-disposition-notification u8mdn;
|
||||
message/global-headers u8hdr;
|
||||
message/rfc822 eml mail art;
|
||||
model/gltf+json gltf;
|
||||
model/iges igs iges;
|
||||
model/mesh msh mesh silo;
|
||||
model/vnd.collada+xml dae;
|
||||
model/vnd.dwf dwf;
|
||||
model/vnd.gdl gdl gsm win dor lmp rsm msm ism;
|
||||
model/vnd.gtw gtw;
|
||||
model/vnd.moml+xml moml;
|
||||
model/vnd.mts mts;
|
||||
model/vnd.opengex ogex;
|
||||
model/vnd.parasolid.transmit.binary x_b xmt_bin;
|
||||
model/vnd.parasolid.transmit.text x_t xmt_txt;
|
||||
model/vnd.valve.source.compiled-map bsp;
|
||||
model/vnd.vtu vtu;
|
||||
model/vrml wrl vrml;
|
||||
model/x3d+xml x3db;
|
||||
model/x3d-vrml x3dv x3dvz;
|
||||
multipart/vnd.bint.med-plus bmed;
|
||||
multipart/voice-message vpm;
|
||||
text/cache-manifest appcache manifest;
|
||||
text/calendar ics ifb;
|
||||
text/css css;
|
||||
text/csv csv;
|
||||
text/csv-schema csvs;
|
||||
text/dns soa zone;
|
||||
text/html html htm;
|
||||
text/jcr-cnd cnd;
|
||||
text/markdown markdown md;
|
||||
text/mizar miz;
|
||||
text/n3 n3;
|
||||
text/plain txt asc text pm el c h cc hh cxx hxx f90 conf log;
|
||||
text/provenance-notation provn;
|
||||
text/prs.fallenstein.rst rst;
|
||||
text/prs.lines.tag tag dsc;
|
||||
text/richtext rtx;
|
||||
text/sgml sgml sgm;
|
||||
text/tab-separated-values tsv;
|
||||
text/troff t tr roff;
|
||||
text/turtle ttl;
|
||||
text/uri-list uris uri;
|
||||
text/vcard vcf vcard;
|
||||
text/vnd.a a;
|
||||
text/vnd.abc abc;
|
||||
text/vnd.ascii-art ascii;
|
||||
text/vnd.debian.copyright copyright;
|
||||
text/vnd.DMClientScript dms;
|
||||
text/vnd.dvb.subtitle sub;
|
||||
text/vnd.esmertec.theme-descriptor jtd;
|
||||
text/vnd.fly fly;
|
||||
text/vnd.fmi.flexstor flx;
|
||||
text/vnd.graphviz gv dot;
|
||||
text/vnd.in3d.3dml 3dml 3dm;
|
||||
text/vnd.in3d.spot spot spo;
|
||||
text/vnd.ms-mediapackage mpf;
|
||||
text/vnd.net2phone.commcenter.command ccc;
|
||||
text/vnd.si.uricatalogue uric;
|
||||
text/vnd.sun.j2me.app-descriptor jad;
|
||||
text/vnd.trolltech.linguist ts;
|
||||
text/vnd.wap.si si;
|
||||
text/vnd.wap.sl sl;
|
||||
text/vnd.wap.wml wml;
|
||||
text/vnd.wap.wmlscript wmls;
|
||||
text/xml xml xsd rng;
|
||||
text/xml-external-parsed-entity ent;
|
||||
video/3gpp 3gp 3gpp;
|
||||
video/3gpp2 3g2 3gpp2;
|
||||
video/iso.segment m4s;
|
||||
video/mj2 mj2 mjp2;
|
||||
video/mp4 mp4 mpg4 m4v;
|
||||
video/mpeg mpeg mpg mpe m1v m2v;
|
||||
video/ogg ogv;
|
||||
video/quicktime mov qt;
|
||||
video/vnd.dece.hd uvh uvvh;
|
||||
video/vnd.dece.mobile uvm uvvm;
|
||||
video/vnd.dece.mp4 uvu uvvu;
|
||||
video/vnd.dece.pd uvp uvvp;
|
||||
video/vnd.dece.sd uvs uvvs;
|
||||
video/vnd.dece.video uvv uvvv;
|
||||
video/vnd.dvb.file dvb;
|
||||
video/vnd.fvt fvt;
|
||||
video/vnd.mpegurl mxu m4u;
|
||||
video/vnd.ms-playready.media.pyv pyv;
|
||||
video/vnd.nokia.interleaved-multimedia nim;
|
||||
video/vnd.radgamettools.bink bik bk2;
|
||||
video/vnd.radgamettools.smacker smk;
|
||||
video/vnd.sealed.mpeg1 smpg s11;
|
||||
video/vnd.sealed.mpeg4 s14;
|
||||
video/vnd.sealed.swf sswf ssw;
|
||||
video/vnd.sealedmedia.softseal.mov smov smo s1q;
|
||||
video/vnd.vivo viv;
|
||||
application/mac-compactpro cpt;
|
||||
application/metalink+xml metalink;
|
||||
application/owl+xml owx;
|
||||
application/rss+xml rss;
|
||||
application/vnd.android.package-archive apk;
|
||||
application/vnd.oma.dd+xml dd;
|
||||
application/vnd.oma.drm.content dcf;
|
||||
application/vnd.oma.drm.dcf o4a o4v;
|
||||
application/vnd.oma.drm.message dm;
|
||||
application/vnd.oma.drm.rights+wbxml drc;
|
||||
application/vnd.oma.drm.rights+xml dr;
|
||||
application/vnd.sun.xml.calc sxc;
|
||||
application/vnd.sun.xml.calc.template stc;
|
||||
application/vnd.sun.xml.draw sxd;
|
||||
application/vnd.sun.xml.draw.template std;
|
||||
application/vnd.sun.xml.impress sxi;
|
||||
application/vnd.sun.xml.impress.template sti;
|
||||
application/vnd.sun.xml.math sxm;
|
||||
application/vnd.sun.xml.writer sxw;
|
||||
application/vnd.sun.xml.writer.global sxg;
|
||||
application/vnd.sun.xml.writer.template stw;
|
||||
application/vnd.symbian.install sis;
|
||||
application/vnd.wap.mms-message mms;
|
||||
application/x-annodex anx;
|
||||
application/x-bcpio bcpio;
|
||||
application/x-bittorrent torrent;
|
||||
application/x-bzip2 bz2;
|
||||
application/x-cdlink vcd;
|
||||
application/x-chrome-extension crx;
|
||||
application/x-cpio cpio;
|
||||
application/x-csh csh;
|
||||
application/x-director dcr dir dxr;
|
||||
application/x-dvi dvi;
|
||||
application/x-futuresplash spl;
|
||||
application/x-gtar gtar;
|
||||
application/x-hdf hdf;
|
||||
application/x-java-archive jar;
|
||||
application/x-java-jnlp-file jnlp;
|
||||
application/x-java-pack200 pack;
|
||||
application/x-killustrator kil;
|
||||
application/x-latex latex;
|
||||
application/x-netcdf nc cdf;
|
||||
application/x-perl pl;
|
||||
application/x-rpm rpm;
|
||||
application/x-sh sh;
|
||||
application/x-shar shar;
|
||||
application/x-stuffit sit;
|
||||
application/x-sv4cpio sv4cpio;
|
||||
application/x-sv4crc sv4crc;
|
||||
application/x-tar tar;
|
||||
application/x-tcl tcl;
|
||||
application/x-tex tex;
|
||||
application/x-texinfo texinfo texi;
|
||||
application/x-troff-man man 1 2 3 4 5 6 7 8;
|
||||
application/x-troff-me me;
|
||||
application/x-troff-ms ms;
|
||||
application/x-ustar ustar;
|
||||
application/x-wais-source src;
|
||||
application/x-xpinstall xpi;
|
||||
application/x-xspf+xml xspf;
|
||||
application/x-xz xz;
|
||||
audio/midi mid midi kar;
|
||||
audio/x-aiff aif aiff aifc;
|
||||
audio/x-annodex axa;
|
||||
audio/x-flac flac;
|
||||
audio/x-matroska mka;
|
||||
audio/x-mod mod ult uni m15 mtm 669 med;
|
||||
audio/x-mpegurl m3u;
|
||||
audio/x-ms-wax wax;
|
||||
audio/x-ms-wma wma;
|
||||
audio/x-pn-realaudio ram rm;
|
||||
audio/x-realaudio ra;
|
||||
audio/x-s3m s3m;
|
||||
audio/x-stm stm;
|
||||
audio/x-wav wav;
|
||||
chemical/x-xyz xyz;
|
||||
image/webp webp;
|
||||
image/x-cmu-raster ras;
|
||||
image/x-portable-anymap pnm;
|
||||
image/x-portable-bitmap pbm;
|
||||
image/x-portable-graymap pgm;
|
||||
image/x-portable-pixmap ppm;
|
||||
image/x-rgb rgb;
|
||||
image/x-targa tga;
|
||||
image/x-xbitmap xbm;
|
||||
image/x-xpixmap xpm;
|
||||
image/x-xwindowdump xwd;
|
||||
text/html-sandboxed sandboxed;
|
||||
text/x-pod pod;
|
||||
text/x-setext etx;
|
||||
video/webm webm;
|
||||
video/x-annodex axv;
|
||||
video/x-flv flv;
|
||||
video/x-javafx fxm;
|
||||
video/x-matroska mkv;
|
||||
video/x-matroska-3d mk3d;
|
||||
video/x-ms-asf asx;
|
||||
video/x-ms-wm wm;
|
||||
video/x-ms-wmv wmv;
|
||||
video/x-ms-wmx wmx;
|
||||
video/x-ms-wvx wvx;
|
||||
video/x-msvideo avi;
|
||||
video/x-sgi-movie movie;
|
||||
x-conference/x-cooltalk ice;
|
||||
x-epoc/x-sisx-app sisx;
|
||||
}
|
||||
79
configs/nginx/nginx.conf.mako
Normal file
79
configs/nginx/nginx.conf.mako
Normal file
@@ -0,0 +1,79 @@
|
||||
worker_processes 4;
|
||||
|
||||
# error_log /tmp/kvmd-nginx.error.log;
|
||||
error_log stderr;
|
||||
|
||||
include /usr/share/kvmd/extras/*/nginx.ctx-main.conf;
|
||||
|
||||
events {
|
||||
worker_connections 1024;
|
||||
use epoll;
|
||||
multi_accept on;
|
||||
}
|
||||
|
||||
http {
|
||||
types_hash_max_size 4096;
|
||||
server_names_hash_bucket_size 128;
|
||||
|
||||
access_log off;
|
||||
|
||||
include /etc/kvmd/nginx/mime-types.conf;
|
||||
default_type application/octet-stream;
|
||||
charset utf-8;
|
||||
|
||||
sendfile on;
|
||||
tcp_nodelay on;
|
||||
tcp_nopush on;
|
||||
keepalive_timeout 10;
|
||||
client_max_body_size 4k;
|
||||
|
||||
client_body_temp_path /tmp/kvmd-nginx/client_body_temp;
|
||||
fastcgi_temp_path /tmp/kvmd-nginx/fastcgi_temp;
|
||||
proxy_temp_path /tmp/kvmd-nginx/proxy_temp;
|
||||
scgi_temp_path /tmp/kvmd-nginx/scgi_temp;
|
||||
uwsgi_temp_path /tmp/kvmd-nginx/uwsgi_temp;
|
||||
|
||||
include /etc/kvmd/nginx/kvmd.ctx-http.conf;
|
||||
include /usr/share/kvmd/extras/*/nginx.ctx-http.conf;
|
||||
|
||||
% if https_enabled:
|
||||
|
||||
server {
|
||||
listen ${http_port};
|
||||
% if ipv6_enabled:
|
||||
listen [::]:${http_port};
|
||||
% endif
|
||||
include /etc/kvmd/nginx/certbot.ctx-server.conf;
|
||||
location / {
|
||||
% if https_port == 443:
|
||||
return 301 https://$host$request_uri;
|
||||
% else:
|
||||
return 301 https://$host:${https_port}$request_uri;
|
||||
% endif
|
||||
}
|
||||
}
|
||||
|
||||
server {
|
||||
listen ${https_port} ssl http2;
|
||||
% if ipv6_enabled:
|
||||
listen [::]:${https_port} ssl http2;
|
||||
% endif
|
||||
include /etc/kvmd/nginx/ssl.conf;
|
||||
include /etc/kvmd/nginx/kvmd.ctx-server.conf;
|
||||
include /usr/share/kvmd/extras/*/nginx.ctx-server.conf;
|
||||
}
|
||||
|
||||
% else:
|
||||
|
||||
server {
|
||||
listen ${http_port};
|
||||
% if ipv6_enabled:
|
||||
listen [::]:${http_port};
|
||||
% endif
|
||||
include /etc/kvmd/nginx/certbot.ctx-server.conf;
|
||||
include /etc/kvmd/nginx/kvmd.ctx-server.conf;
|
||||
include /usr/share/kvmd/extras/*/nginx.ctx-server.conf;
|
||||
}
|
||||
|
||||
% endif
|
||||
}
|
||||
5
configs/nginx/ssl.conf
Normal file
5
configs/nginx/ssl.conf
Normal file
@@ -0,0 +1,5 @@
|
||||
ssl_protocols TLSv1.3 TLSv1.2 TLSv1.1 TLSv1;
|
||||
ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
|
||||
ssl_certificate /etc/kvmd/nginx/ssl/server.crt;
|
||||
ssl_certificate_key /etc/kvmd/nginx/ssl/server.key;
|
||||
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
|
||||
7
configs/os/boot-config/v0-hdmi-rpi2.txt
Normal file
7
configs/os/boot-config/v0-hdmi-rpi2.txt
Normal file
@@ -0,0 +1,7 @@
|
||||
# See /boot/overlays/README for all available options
|
||||
initramfs initramfs-linux.img followkernel
|
||||
|
||||
hdmi_force_hotplug=1
|
||||
gpu_mem=128
|
||||
enable_uart=1
|
||||
dtoverlay=tc358743,i2c_pins_28_29=1
|
||||
8
configs/os/boot-config/v0-hdmi-rpi3.txt
Normal file
8
configs/os/boot-config/v0-hdmi-rpi3.txt
Normal file
@@ -0,0 +1,8 @@
|
||||
# See /boot/overlays/README for all available options
|
||||
initramfs initramfs-linux.img followkernel
|
||||
|
||||
hdmi_force_hotplug=1
|
||||
gpu_mem=128
|
||||
enable_uart=1
|
||||
dtoverlay=tc358743
|
||||
dtoverlay=disable-bt
|
||||
8
configs/os/boot-config/v0-hdmi-zero2w.txt
Normal file
8
configs/os/boot-config/v0-hdmi-zero2w.txt
Normal file
@@ -0,0 +1,8 @@
|
||||
# See /boot/overlays/README for all available options
|
||||
initramfs initramfs-linux.img followkernel
|
||||
|
||||
hdmi_force_hotplug=1
|
||||
gpu_mem=96
|
||||
enable_uart=1
|
||||
dtoverlay=tc358743,i2c_pins_28_29=1
|
||||
dtoverlay=disable-bt
|
||||
6
configs/os/boot-config/v0-hdmiusb-rpi2.txt
Normal file
6
configs/os/boot-config/v0-hdmiusb-rpi2.txt
Normal file
@@ -0,0 +1,6 @@
|
||||
# See /boot/overlays/README for all available options
|
||||
initramfs initramfs-linux.img followkernel
|
||||
|
||||
hdmi_force_hotplug=1
|
||||
gpu_mem=16
|
||||
enable_uart=1
|
||||
7
configs/os/boot-config/v0-hdmiusb-rpi3.txt
Normal file
7
configs/os/boot-config/v0-hdmiusb-rpi3.txt
Normal file
@@ -0,0 +1,7 @@
|
||||
# See /boot/overlays/README for all available options
|
||||
initramfs initramfs-linux.img followkernel
|
||||
|
||||
hdmi_force_hotplug=1
|
||||
gpu_mem=16
|
||||
enable_uart=1
|
||||
dtoverlay=disable-bt
|
||||
7
configs/os/boot-config/v0-hdmiusb-zero2w.txt
Normal file
7
configs/os/boot-config/v0-hdmiusb-zero2w.txt
Normal file
@@ -0,0 +1,7 @@
|
||||
# See /boot/overlays/README for all available options
|
||||
initramfs initramfs-linux.img followkernel
|
||||
|
||||
hdmi_force_hotplug=1
|
||||
gpu_mem=16
|
||||
enable_uart=1
|
||||
dtoverlay=disable-bt
|
||||
8
configs/os/boot-config/v1-hdmi-rpi2.txt
Normal file
8
configs/os/boot-config/v1-hdmi-rpi2.txt
Normal file
@@ -0,0 +1,8 @@
|
||||
# See /boot/overlays/README for all available options
|
||||
initramfs initramfs-linux.img followkernel
|
||||
|
||||
hdmi_force_hotplug=1
|
||||
gpu_mem=128
|
||||
enable_uart=1
|
||||
dtoverlay=tc358743,i2c_pins_28_29=1
|
||||
dtoverlay=spi0-1cs
|
||||
9
configs/os/boot-config/v1-hdmi-rpi3.txt
Normal file
9
configs/os/boot-config/v1-hdmi-rpi3.txt
Normal file
@@ -0,0 +1,9 @@
|
||||
# See /boot/overlays/README for all available options
|
||||
initramfs initramfs-linux.img followkernel
|
||||
|
||||
hdmi_force_hotplug=1
|
||||
gpu_mem=128
|
||||
enable_uart=1
|
||||
dtoverlay=tc358743
|
||||
dtoverlay=disable-bt
|
||||
dtoverlay=spi0-1cs
|
||||
9
configs/os/boot-config/v1-hdmi-zero2w.txt
Normal file
9
configs/os/boot-config/v1-hdmi-zero2w.txt
Normal file
@@ -0,0 +1,9 @@
|
||||
# See /boot/overlays/README for all available options
|
||||
initramfs initramfs-linux.img followkernel
|
||||
|
||||
hdmi_force_hotplug=1
|
||||
gpu_mem=96
|
||||
enable_uart=1
|
||||
dtoverlay=tc358743,i2c_pins_28_29=1
|
||||
dtoverlay=disable-bt
|
||||
dtoverlay=spi0-1cs
|
||||
7
configs/os/boot-config/v1-hdmiusb-rpi2.txt
Normal file
7
configs/os/boot-config/v1-hdmiusb-rpi2.txt
Normal file
@@ -0,0 +1,7 @@
|
||||
# See /boot/overlays/README for all available options
|
||||
initramfs initramfs-linux.img followkernel
|
||||
|
||||
hdmi_force_hotplug=1
|
||||
gpu_mem=16
|
||||
enable_uart=1
|
||||
dtoverlay=spi0-1cs
|
||||
8
configs/os/boot-config/v1-hdmiusb-rpi3.txt
Normal file
8
configs/os/boot-config/v1-hdmiusb-rpi3.txt
Normal file
@@ -0,0 +1,8 @@
|
||||
# See /boot/overlays/README for all available options
|
||||
initramfs initramfs-linux.img followkernel
|
||||
|
||||
hdmi_force_hotplug=1
|
||||
gpu_mem=16
|
||||
enable_uart=1
|
||||
dtoverlay=disable-bt
|
||||
dtoverlay=spi0-1cs
|
||||
8
configs/os/boot-config/v1-hdmiusb-zero2w.txt
Normal file
8
configs/os/boot-config/v1-hdmiusb-zero2w.txt
Normal file
@@ -0,0 +1,8 @@
|
||||
# See /boot/overlays/README for all available options
|
||||
initramfs initramfs-linux.img followkernel
|
||||
|
||||
hdmi_force_hotplug=1
|
||||
gpu_mem=16
|
||||
enable_uart=1
|
||||
dtoverlay=disable-bt
|
||||
dtoverlay=spi0-1cs
|
||||
9
configs/os/boot-config/v2-hdmi-rpi3.txt
Normal file
9
configs/os/boot-config/v2-hdmi-rpi3.txt
Normal file
@@ -0,0 +1,9 @@
|
||||
# See /boot/overlays/README for all available options
|
||||
initramfs initramfs-linux.img followkernel
|
||||
|
||||
hdmi_force_hotplug=1
|
||||
gpu_mem=128
|
||||
enable_uart=1
|
||||
dtoverlay=tc358743
|
||||
dtoverlay=disable-bt
|
||||
dtoverlay=dwc2,dr_mode=peripheral
|
||||
9
configs/os/boot-config/v2-hdmi-rpi4.txt
Normal file
9
configs/os/boot-config/v2-hdmi-rpi4.txt
Normal file
@@ -0,0 +1,9 @@
|
||||
# See /boot/overlays/README for all available options
|
||||
initramfs initramfs-linux.img followkernel
|
||||
|
||||
hdmi_force_hotplug=1
|
||||
gpu_mem=128
|
||||
enable_uart=1
|
||||
dtoverlay=tc358743
|
||||
dtoverlay=disable-bt
|
||||
dtoverlay=dwc2,dr_mode=peripheral
|
||||
9
configs/os/boot-config/v2-hdmi-zero2w.txt
Normal file
9
configs/os/boot-config/v2-hdmi-zero2w.txt
Normal file
@@ -0,0 +1,9 @@
|
||||
# See /boot/overlays/README for all available options
|
||||
initramfs initramfs-linux.img followkernel
|
||||
|
||||
hdmi_force_hotplug=1
|
||||
gpu_mem=96
|
||||
enable_uart=1
|
||||
dtoverlay=tc358743,i2c_pins_28_29=1
|
||||
dtoverlay=disable-bt
|
||||
dtoverlay=dwc2,dr_mode=peripheral
|
||||
8
configs/os/boot-config/v2-hdmiusb-rpi4.txt
Normal file
8
configs/os/boot-config/v2-hdmiusb-rpi4.txt
Normal file
@@ -0,0 +1,8 @@
|
||||
# See /boot/overlays/README for all available options
|
||||
initramfs initramfs-linux.img followkernel
|
||||
|
||||
hdmi_force_hotplug=1
|
||||
gpu_mem=16
|
||||
enable_uart=1
|
||||
dtoverlay=disable-bt
|
||||
dtoverlay=dwc2,dr_mode=peripheral
|
||||
22
configs/os/boot-config/v3-hdmi-rpi4.txt
Normal file
22
configs/os/boot-config/v3-hdmi-rpi4.txt
Normal file
@@ -0,0 +1,22 @@
|
||||
# See /boot/overlays/README for all available options
|
||||
initramfs initramfs-linux.img followkernel
|
||||
|
||||
hdmi_force_hotplug=1
|
||||
gpu_mem=128
|
||||
enable_uart=1
|
||||
dtoverlay=tc358743
|
||||
dtoverlay=disable-bt
|
||||
dtoverlay=dwc2,dr_mode=peripheral
|
||||
dtparam=act_led_gpio=13
|
||||
|
||||
# HDMI audio capture
|
||||
dtoverlay=tc358743-audio
|
||||
|
||||
# SPI (AUM)
|
||||
dtoverlay=spi0-1cs
|
||||
|
||||
# I2C (display)
|
||||
dtparam=i2c_arm=on
|
||||
|
||||
# Clock
|
||||
dtoverlay=i2c-rtc,pcf8563,wakeup-source
|
||||
21
configs/os/boot-config/v4mini-hdmi-rpi4.txt
Normal file
21
configs/os/boot-config/v4mini-hdmi-rpi4.txt
Normal file
@@ -0,0 +1,21 @@
|
||||
# PiKVM
|
||||
# See /boot/overlays/README for all available options
|
||||
initramfs initramfs-linux.img followkernel
|
||||
|
||||
hdmi_force_hotplug=1
|
||||
gpu_mem=128
|
||||
enable_uart=1
|
||||
dtoverlay=disable-bt
|
||||
|
||||
# USB emulation
|
||||
dtoverlay=dwc2,dr_mode=peripheral
|
||||
|
||||
# Video and audio
|
||||
dtoverlay=tc358743,4lane=1
|
||||
dtoverlay=tc358743-audio
|
||||
|
||||
# I2C (display)
|
||||
dtparam=i2c_arm=on
|
||||
|
||||
# Clock
|
||||
dtoverlay=i2c-rtc,pcf8563,wakeup-source
|
||||
29
configs/os/boot-config/v4plus-hdmi-rpi4.txt
Normal file
29
configs/os/boot-config/v4plus-hdmi-rpi4.txt
Normal file
@@ -0,0 +1,29 @@
|
||||
# PiKVM
|
||||
# See /boot/overlays/README for all available options
|
||||
initramfs initramfs-linux.img followkernel
|
||||
|
||||
hdmi_force_hotplug=1
|
||||
gpu_mem=128
|
||||
enable_uart=1
|
||||
dtoverlay=disable-bt
|
||||
|
||||
# USB emulation
|
||||
dtoverlay=dwc2,dr_mode=peripheral
|
||||
|
||||
# Video and audio
|
||||
dtoverlay=tc358743,4lane=1
|
||||
dtoverlay=tc358743-audio
|
||||
|
||||
# Passthrough
|
||||
dtoverlay=vc4-kms-v3d
|
||||
disable_overscan=1
|
||||
|
||||
# I2C (display)
|
||||
dtparam=i2c_arm=on
|
||||
|
||||
# Clock
|
||||
dtoverlay=i2c-rtc,pcf8563,wakeup-source
|
||||
|
||||
# Passthrough
|
||||
dtoverlay=vc4-kms-v3d
|
||||
disable_overscan=1
|
||||
5
configs/os/cmdline/v0-hdmi-rpi2.sed
Normal file
5
configs/os/cmdline/v0-hdmi-rpi2.sed
Normal file
@@ -0,0 +1,5 @@
|
||||
s/console=ttyAMA0\,115200//g
|
||||
s/kgdboc=ttyAMA0\,115200//g
|
||||
s/console=serial0\,115200//g
|
||||
s/kgdboc=serial0\,115200//g
|
||||
s/rootwait/rootwait cma=128M/g
|
||||
5
configs/os/cmdline/v0-hdmi-rpi3.sed
Normal file
5
configs/os/cmdline/v0-hdmi-rpi3.sed
Normal file
@@ -0,0 +1,5 @@
|
||||
s/console=ttyAMA0\,115200//g
|
||||
s/kgdboc=ttyAMA0\,115200//g
|
||||
s/console=serial0\,115200//g
|
||||
s/kgdboc=serial0\,115200//g
|
||||
s/rootwait/rootwait cma=128M/g
|
||||
5
configs/os/cmdline/v0-hdmi-zero2w.sed
Normal file
5
configs/os/cmdline/v0-hdmi-zero2w.sed
Normal file
@@ -0,0 +1,5 @@
|
||||
s/console=ttyAMA0\,115200//g
|
||||
s/kgdboc=ttyAMA0\,115200//g
|
||||
s/console=serial0\,115200//g
|
||||
s/kgdboc=serial0\,115200//g
|
||||
s/rootwait/rootwait cma=96M/g
|
||||
4
configs/os/cmdline/v0-hdmiusb-rpi2.sed
Normal file
4
configs/os/cmdline/v0-hdmiusb-rpi2.sed
Normal file
@@ -0,0 +1,4 @@
|
||||
s/console=ttyAMA0\,115200//g
|
||||
s/kgdboc=ttyAMA0\,115200//g
|
||||
s/console=serial0\,115200//g
|
||||
s/kgdboc=serial0\,115200//g
|
||||
4
configs/os/cmdline/v0-hdmiusb-rpi3.sed
Normal file
4
configs/os/cmdline/v0-hdmiusb-rpi3.sed
Normal file
@@ -0,0 +1,4 @@
|
||||
s/console=ttyAMA0\,115200//g
|
||||
s/kgdboc=ttyAMA0\,115200//g
|
||||
s/console=serial0\,115200//g
|
||||
s/kgdboc=serial0\,115200//g
|
||||
4
configs/os/cmdline/v0-hdmiusb-zero2w.sed
Normal file
4
configs/os/cmdline/v0-hdmiusb-zero2w.sed
Normal file
@@ -0,0 +1,4 @@
|
||||
s/console=ttyAMA0\,115200//g
|
||||
s/kgdboc=ttyAMA0\,115200//g
|
||||
s/console=serial0\,115200//g
|
||||
s/kgdboc=serial0\,115200//g
|
||||
1
configs/os/cmdline/v1-hdmi-rpi2.sed
Normal file
1
configs/os/cmdline/v1-hdmi-rpi2.sed
Normal file
@@ -0,0 +1 @@
|
||||
s/rootwait/rootwait cma=128M/g
|
||||
1
configs/os/cmdline/v1-hdmi-rpi3.sed
Normal file
1
configs/os/cmdline/v1-hdmi-rpi3.sed
Normal file
@@ -0,0 +1 @@
|
||||
s/rootwait/rootwait cma=128M/g
|
||||
1
configs/os/cmdline/v1-hdmi-zero2w.sed
Normal file
1
configs/os/cmdline/v1-hdmi-zero2w.sed
Normal file
@@ -0,0 +1 @@
|
||||
s/rootwait/rootwait cma=96M/g
|
||||
0
configs/os/cmdline/v1-hdmiusb-rpi2.sed
Normal file
0
configs/os/cmdline/v1-hdmiusb-rpi2.sed
Normal file
0
configs/os/cmdline/v1-hdmiusb-rpi3.sed
Normal file
0
configs/os/cmdline/v1-hdmiusb-rpi3.sed
Normal file
0
configs/os/cmdline/v1-hdmiusb-zero2w.sed
Normal file
0
configs/os/cmdline/v1-hdmiusb-zero2w.sed
Normal file
1
configs/os/cmdline/v2-hdmi-rpi3.sed
Normal file
1
configs/os/cmdline/v2-hdmi-rpi3.sed
Normal file
@@ -0,0 +1 @@
|
||||
s/rootwait/rootwait cma=128M/g
|
||||
1
configs/os/cmdline/v2-hdmi-rpi4.sed
Normal file
1
configs/os/cmdline/v2-hdmi-rpi4.sed
Normal file
@@ -0,0 +1 @@
|
||||
s/rootwait/rootwait cma=128M/g
|
||||
1
configs/os/cmdline/v2-hdmi-zero2w.sed
Normal file
1
configs/os/cmdline/v2-hdmi-zero2w.sed
Normal file
@@ -0,0 +1 @@
|
||||
s/rootwait/rootwait cma=96M/g
|
||||
0
configs/os/cmdline/v2-hdmiusb-rpi4.sed
Normal file
0
configs/os/cmdline/v2-hdmiusb-rpi4.sed
Normal file
1
configs/os/cmdline/v3-hdmi-rpi4.sed
Normal file
1
configs/os/cmdline/v3-hdmi-rpi4.sed
Normal file
@@ -0,0 +1 @@
|
||||
s/rootwait/rootwait cma=128M/g
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user