Compare commits
383 Commits
KASM-1810_
...
master
Author | SHA1 | Date |
---|---|---|
![]() |
5ea11df3c0 | 5 months ago |
![]() |
e8f1787dc2 | 5 months ago |
![]() |
ed5592ed6b | 5 months ago |
![]() |
4290a9e73c | 5 months ago |
![]() |
e04731870b | 7 months ago |
![]() |
586c33a454 | 7 months ago |
![]() |
b3c93327d9 | 7 months ago |
![]() |
fa925b9f2c | 7 months ago |
![]() |
0ebbbc6412 | 8 months ago |
![]() |
f6a8afda9d | 8 months ago |
![]() |
3a8517d7dc | 8 months ago |
![]() |
f54aa68ee7 | 8 months ago |
![]() |
a89f71d98d | 9 months ago |
![]() |
c46ec68877 | 9 months ago |
![]() |
73e28f7d62 | 9 months ago |
![]() |
17ec8c2e35 | 9 months ago |
![]() |
0cc4a4f128 | 9 months ago |
![]() |
7659765116 | 9 months ago |
![]() |
e7b758465f | 9 months ago |
![]() |
e5404b10e1 | 10 months ago |
![]() |
515a62e0b9 | 11 months ago |
![]() |
e4db0eb9a7 | 11 months ago |
![]() |
a6bc1e4b76 | 11 months ago |
![]() |
cc1bb0c79f | 12 months ago |
![]() |
bc580857c6 | 12 months ago |
![]() |
e535430a2c | 12 months ago |
![]() |
6a2c2c82a1 | 1 year ago |
![]() |
3c7555d2f9 | 1 year ago |
![]() |
75b3cb8065 | 1 year ago |
![]() |
4d4516f727 | 1 year ago |
![]() |
202ac98cf4 | 1 year ago |
![]() |
edf4dcac59 | 1 year ago |
![]() |
79ca2ee054 | 1 year ago |
![]() |
ba6226e308 | 1 year ago |
![]() |
4b18320984 | 1 year ago |
![]() |
9f7a6b58ce | 1 year ago |
![]() |
d67e5288e3 | 1 year ago |
![]() |
5199a98ac4 | 1 year ago |
![]() |
0963a1e10f | 1 year ago |
![]() |
9fe714d910 | 1 year ago |
![]() |
eba4c7dae4 | 1 year ago |
![]() |
7927b7e57b | 1 year ago |
![]() |
ce645b39dc | 1 year ago |
![]() |
16e365747a | 1 year ago |
![]() |
511e2ae542 | 1 year ago |
![]() |
67eab1b6d4 | 1 year ago |
![]() |
574954611c | 1 year ago |
![]() |
6eeb2445e8 | 1 year ago |
![]() |
b8763c5afd | 1 year ago |
![]() |
d74f7102f9 | 1 year ago |
![]() |
3f28ee9d3d | 1 year ago |
![]() |
766a55d08f | 1 year ago |
![]() |
bb2d903113 | 1 year ago |
![]() |
27b3a28a56 | 1 year ago |
![]() |
aa6ae266b9 | 1 year ago |
![]() |
3ffb8f93f0 | 1 year ago |
![]() |
fe2d67e462 | 1 year ago |
![]() |
2dd5a54524 | 1 year ago |
![]() |
4ec39572fc | 1 year ago |
![]() |
d74f7c6ce7 | 1 year ago |
![]() |
a10358b5ca | 1 year ago |
![]() |
124d36a981 | 1 year ago |
![]() |
f02fbb0e2d | 1 year ago |
![]() |
8c7dd2ed30 | 1 year ago |
![]() |
ae70375afe | 1 year ago |
![]() |
127ab45329 | 1 year ago |
![]() |
3bc1024e7f | 1 year ago |
![]() |
228eb87db1 | 1 year ago |
![]() |
4f726e3654 | 1 year ago |
![]() |
ed9fbcbec2 | 1 year ago |
![]() |
659a4198fc | 1 year ago |
![]() |
5456ccc072 | 1 year ago |
![]() |
fddaab5124 | 1 year ago |
![]() |
7be7e34b51 | 1 year ago |
![]() |
5b64eb32f8 | 1 year ago |
![]() |
eef8e7264f | 1 year ago |
![]() |
e8b54db6bf | 1 year ago |
![]() |
7b442658e1 | 2 years ago |
![]() |
408fcd3415 | 2 years ago |
![]() |
7cdb7e1f3e | 2 years ago |
![]() |
b595c0bce8 | 2 years ago |
![]() |
4c9b065c31 | 2 years ago |
![]() |
8b5ee59ae2 | 2 years ago |
![]() |
4114d73ed6 | 2 years ago |
![]() |
1d8a2ed59a | 2 years ago |
![]() |
c055920348 | 2 years ago |
![]() |
b2d965b58d | 2 years ago |
![]() |
07f015e68e | 2 years ago |
![]() |
446497ad06 | 2 years ago |
![]() |
0de752f65e | 2 years ago |
![]() |
f712f5e7f8 | 2 years ago |
![]() |
d090e1b707 | 2 years ago |
![]() |
fb7570709a | 2 years ago |
![]() |
73c3bda8cd | 2 years ago |
![]() |
9a73cb4a60 | 2 years ago |
![]() |
6cd50869c2 | 2 years ago |
![]() |
5823b550a4 | 2 years ago |
![]() |
29c48a8679 | 2 years ago |
![]() |
c88b683354 | 2 years ago |
![]() |
7399e5dc62 | 2 years ago |
![]() |
e4a5004f4b | 2 years ago |
![]() |
da7c481fc8 | 2 years ago |
![]() |
32f4398115 | 2 years ago |
![]() |
7350b12b3d | 2 years ago |
![]() |
1b25ad8e54 | 2 years ago |
![]() |
2165c3e1ba | 2 years ago |
![]() |
d390d187b4 | 2 years ago |
![]() |
a4034865e6 | 2 years ago |
![]() |
7d6244fe1c | 2 years ago |
![]() |
21d2ae5018 | 2 years ago |
![]() |
dcea208d73 | 2 years ago |
![]() |
44555f9581 | 2 years ago |
![]() |
561ea86e85 | 2 years ago |
![]() |
446d03d479 | 2 years ago |
![]() |
04f95d2b62 | 2 years ago |
![]() |
c0ed7d7b1a | 2 years ago |
![]() |
dda29172c1 | 2 years ago |
![]() |
fa88480914 | 2 years ago |
![]() |
b4f6fafd73 | 2 years ago |
![]() |
6a73d1cb49 | 2 years ago |
![]() |
6207b1b60f | 2 years ago |
![]() |
0923f300a0 | 2 years ago |
![]() |
7b8a4e8388 | 2 years ago |
![]() |
b9e9a2d2a0 | 2 years ago |
![]() |
25a996cb97 | 2 years ago |
![]() |
6774cbf3a2 | 2 years ago |
![]() |
fc0f2a3192 | 2 years ago |
![]() |
9a14b07ba4 | 2 years ago |
![]() |
0527c9f76e | 2 years ago |
![]() |
e41bc997a6 | 2 years ago |
![]() |
75c51c1e93 | 2 years ago |
![]() |
9450157af1 | 2 years ago |
![]() |
f9e46f5a13 | 2 years ago |
![]() |
13bafe3759 | 2 years ago |
![]() |
d5080eca8f | 2 years ago |
![]() |
4d3a9b749a | 2 years ago |
![]() |
12ba00f939 | 2 years ago |
![]() |
5c068f0d4f | 2 years ago |
![]() |
932ca80b50 | 2 years ago |
![]() |
ee07a90111 | 2 years ago |
![]() |
09fdbc1ab3 | 2 years ago |
![]() |
8372a91d53 | 2 years ago |
![]() |
76618a3e0b | 2 years ago |
![]() |
22901b87b0 | 2 years ago |
![]() |
a0121b4117 | 2 years ago |
![]() |
0fa8eafa01 | 2 years ago |
![]() |
5ad7b2dc54 | 2 years ago |
![]() |
d00c1819fe | 2 years ago |
![]() |
037eae7f44 | 2 years ago |
![]() |
9aa33f1900 | 2 years ago |
![]() |
32a9b354b9 | 2 years ago |
![]() |
a1e3d91489 | 2 years ago |
![]() |
9a8bfce25f | 2 years ago |
![]() |
5b58cfb1e1 | 2 years ago |
![]() |
243176984e | 2 years ago |
![]() |
059bec7ddf | 2 years ago |
![]() |
a2b2230489 | 2 years ago |
![]() |
cc4ec630c2 | 2 years ago |
![]() |
3116154f79 | 2 years ago |
![]() |
cc606d0c00 | 2 years ago |
![]() |
ba399efc3f | 2 years ago |
![]() |
ec347f5b46 | 2 years ago |
![]() |
252fc2f20c | 2 years ago |
![]() |
47bdc828c1 | 2 years ago |
![]() |
f0786fa3d4 | 2 years ago |
![]() |
178dd8e7ae | 2 years ago |
![]() |
3070de6d10 | 2 years ago |
![]() |
8b9ef1bc15 | 2 years ago |
![]() |
90fd90b948 | 2 years ago |
![]() |
e77d6693b3 | 2 years ago |
![]() |
13458a0a88 | 2 years ago |
![]() |
6a8adf0fb1 | 2 years ago |
![]() |
ec810a2abe | 2 years ago |
![]() |
d15492fa32 | 2 years ago |
![]() |
f9e6aa234e | 2 years ago |
![]() |
4678f3d969 | 2 years ago |
![]() |
20876547a1 | 2 years ago |
![]() |
ee10b81eef | 2 years ago |
![]() |
ea7568b240 | 2 years ago |
![]() |
d1492bd0c0 | 2 years ago |
![]() |
f1bdfb5ab5 | 2 years ago |
![]() |
099211c281 | 2 years ago |
![]() |
60cfd52bcf | 2 years ago |
![]() |
1b7ebc2a96 | 2 years ago |
![]() |
a2c49f6d89 | 2 years ago |
![]() |
e64a5f87d0 | 2 years ago |
![]() |
bbfbcc5af8 | 2 years ago |
![]() |
8a9fd18228 | 2 years ago |
![]() |
e5056eaeea | 2 years ago |
![]() |
16bf937bfa | 2 years ago |
![]() |
797c57121a | 2 years ago |
![]() |
a1b138e5e1 | 2 years ago |
![]() |
834bb9a925 | 2 years ago |
![]() |
5b3786e5ad | 2 years ago |
![]() |
ae93cd6840 | 2 years ago |
![]() |
cdf21ea6fd | 2 years ago |
![]() |
22ec1c6dbd | 2 years ago |
![]() |
3bae812364 | 2 years ago |
![]() |
61613c4e65 | 2 years ago |
![]() |
7366bbc613 | 2 years ago |
![]() |
b91d06f734 | 2 years ago |
![]() |
73016d8d55 | 2 years ago |
![]() |
ed4d4ea59f | 2 years ago |
![]() |
9684bd1f0a | 2 years ago |
![]() |
a2d2e48bd4 | 2 years ago |
![]() |
a1cd656910 | 2 years ago |
![]() |
1116642e62 | 2 years ago |
![]() |
3104465f62 | 2 years ago |
![]() |
33018e7b82 | 2 years ago |
![]() |
6d791eb059 | 2 years ago |
![]() |
a5a36d96b6 | 2 years ago |
![]() |
2017ac01f5 | 2 years ago |
![]() |
8d49eed7f0 | 2 years ago |
![]() |
55c8c1e80e | 2 years ago |
![]() |
a5193e240a | 2 years ago |
![]() |
503784a4aa | 2 years ago |
![]() |
956f83dda2 | 2 years ago |
![]() |
546814266d | 2 years ago |
![]() |
07ef056612 | 2 years ago |
![]() |
0206686ce0 | 2 years ago |
![]() |
5fcff79967 | 2 years ago |
![]() |
4bf7097dc9 | 2 years ago |
![]() |
40401ef380 | 2 years ago |
![]() |
c34724f421 | 2 years ago |
![]() |
9f5fbae244 | 2 years ago |
![]() |
38ac841490 | 2 years ago |
![]() |
d04982125a | 2 years ago |
![]() |
4b89868219 | 2 years ago |
![]() |
7760ec2d84 | 2 years ago |
![]() |
8cd57a612d | 2 years ago |
![]() |
23676ab3b3 | 2 years ago |
![]() |
d1cc18f751 | 2 years ago |
![]() |
cac80a22a3 | 2 years ago |
![]() |
907e32187c | 2 years ago |
![]() |
895b6b5697 | 2 years ago |
![]() |
90afa1f005 | 2 years ago |
![]() |
f1104e2cb5 | 2 years ago |
![]() |
9f42bad1f8 | 2 years ago |
![]() |
1bd674d7b3 | 2 years ago |
![]() |
22949e28e3 | 2 years ago |
![]() |
66f3013998 | 3 years ago |
![]() |
95f64ce1f2 | 3 years ago |
![]() |
e187fb7205 | 3 years ago |
![]() |
1623c5da93 | 3 years ago |
![]() |
dca55c7c8b | 3 years ago |
![]() |
779c54f7ee | 3 years ago |
![]() |
f0e2cd7a53 | 3 years ago |
![]() |
53a9d11b01 | 3 years ago |
![]() |
ee0fccdc6a | 3 years ago |
![]() |
dcadd1e6d6 | 3 years ago |
![]() |
848d45b411 | 3 years ago |
![]() |
2f7f090b36 | 3 years ago |
![]() |
a43ea72dc1 | 3 years ago |
![]() |
df70b38db6 | 3 years ago |
![]() |
e68c9aef30 | 3 years ago |
![]() |
39f6ee7691 | 3 years ago |
![]() |
6089c22fb7 | 3 years ago |
![]() |
f1630b9ce7 | 3 years ago |
![]() |
fe978f0382 | 3 years ago |
![]() |
435b987c95 | 3 years ago |
![]() |
bd5d8b46e4 | 3 years ago |
![]() |
6793a20eca | 3 years ago |
![]() |
6c4d53f9f3 | 3 years ago |
![]() |
9fe3ac1ea5 | 3 years ago |
![]() |
bd8b6d522a | 3 years ago |
![]() |
d9b5b5db6a | 3 years ago |
![]() |
7e4b5daf52 | 3 years ago |
![]() |
17947d5f44 | 3 years ago |
![]() |
6b9f28760c | 3 years ago |
![]() |
2e0d35b48f | 3 years ago |
![]() |
87bdac9fea | 3 years ago |
![]() |
ba8e98a9f6 | 3 years ago |
![]() |
e0e4dbe173 | 3 years ago |
![]() |
9622048753 | 3 years ago |
![]() |
91f619db5c | 3 years ago |
![]() |
b93ead6a24 | 3 years ago |
![]() |
3b1a72738e | 3 years ago |
![]() |
0cf6654355 | 3 years ago |
![]() |
99c1e10789 | 3 years ago |
![]() |
17cd5e597a | 3 years ago |
![]() |
0ef8a51945 | 3 years ago |
![]() |
54d2d12006 | 3 years ago |
![]() |
34ca7595e8 | 3 years ago |
![]() |
bef16c5b34 | 3 years ago |
![]() |
582740b3d8 | 3 years ago |
![]() |
6c0eff0828 | 3 years ago |
![]() |
365f6bc33e | 3 years ago |
![]() |
7a51039864 | 3 years ago |
![]() |
9a49e96a7f | 3 years ago |
![]() |
250ca19199 | 3 years ago |
![]() |
4a4c53d292 | 3 years ago |
![]() |
36a1ffc5e4 | 3 years ago |
![]() |
0ae83c02b0 | 3 years ago |
![]() |
bc926f9a55 | 3 years ago |
![]() |
d9cf46f83e | 3 years ago |
![]() |
5e2a8b45da | 3 years ago |
![]() |
bb1bd5ff8f | 3 years ago |
![]() |
5ecd18bf1b | 3 years ago |
![]() |
f8013340ab | 3 years ago |
![]() |
6451cc3220 | 3 years ago |
![]() |
6e52b24992 | 3 years ago |
![]() |
6fd2ad874f | 3 years ago |
![]() |
3b40a92548 | 3 years ago |
![]() |
a4ac7bee16 | 3 years ago |
![]() |
ba902f8194 | 3 years ago |
![]() |
1f5125fb24 | 3 years ago |
![]() |
dc60c73a81 | 3 years ago |
![]() |
1c54f4f921 | 3 years ago |
![]() |
60de5a9791 | 3 years ago |
![]() |
480add4fe2 | 3 years ago |
![]() |
924329900d | 3 years ago |
![]() |
4e134b578c | 3 years ago |
![]() |
8b71ea3cd9 | 3 years ago |
![]() |
61f08d4986 | 3 years ago |
![]() |
c32521ba64 | 3 years ago |
![]() |
8542a5fb31 | 3 years ago |
![]() |
4cc81ddb3d | 3 years ago |
![]() |
32d6b4804a | 3 years ago |
![]() |
ac7605f316 | 3 years ago |
![]() |
87e39f896c | 3 years ago |
![]() |
f22d8347ed | 3 years ago |
![]() |
bf2bf679b6 | 3 years ago |
![]() |
330eb47142 | 3 years ago |
![]() |
661e9ef329 | 3 years ago |
![]() |
786670354f | 3 years ago |
![]() |
a6842bb46a | 3 years ago |
![]() |
2959156a25 | 3 years ago |
![]() |
774a61ace7 | 3 years ago |
![]() |
d829572a9c | 3 years ago |
![]() |
891bef0877 | 3 years ago |
![]() |
9f6c160d1e | 3 years ago |
![]() |
d581eb798d | 3 years ago |
![]() |
bdf0a4dde9 | 3 years ago |
![]() |
fc894a7096 | 3 years ago |
![]() |
7078884c12 | 3 years ago |
![]() |
d70edd9eb7 | 3 years ago |
![]() |
1e265277f8 | 3 years ago |
![]() |
b73d3fc786 | 3 years ago |
![]() |
b2e878e79e | 3 years ago |
![]() |
6e84e10317 | 3 years ago |
![]() |
d050236248 | 3 years ago |
![]() |
92c449d87b | 3 years ago |
![]() |
73ed994b21 | 3 years ago |
![]() |
74a4b5fd9f | 3 years ago |
![]() |
7506e0881f | 3 years ago |
![]() |
ce78879132 | 3 years ago |
![]() |
08f5000b9f | 3 years ago |
![]() |
3f89e5c117 | 3 years ago |
![]() |
d6d13b59cb | 3 years ago |
![]() |
3ee95e3150 | 3 years ago |
![]() |
0c020f2e79 | 3 years ago |
![]() |
8a5915aeab | 3 years ago |
![]() |
8a4b4548f3 | 3 years ago |
![]() |
c89a966ed6 | 3 years ago |
![]() |
78ee565ab3 | 3 years ago |
![]() |
94791bc9fa | 3 years ago |
![]() |
eda0d899cd | 3 years ago |
![]() |
a734a613c8 | 3 years ago |
![]() |
e6b4f40ed7 | 3 years ago |
![]() |
6a9dfdc593 | 3 years ago |
![]() |
cee7ae86cf | 3 years ago |
![]() |
8bf5ae9ef7 | 3 years ago |
![]() |
49890cf8da | 3 years ago |
![]() |
0b5513873c | 3 years ago |
![]() |
974a06bb8c | 3 years ago |
![]() |
c3551f807c | 3 years ago |
![]() |
3c6226f03d | 3 years ago |
![]() |
e3afc937e5 | 3 years ago |
![]() |
fa22ed925f | 3 years ago |
![]() |
42d7ff015d | 3 years ago |
![]() |
13331295ac | 3 years ago |
![]() |
99680f23ff | 3 years ago |
![]() |
93e89bd8be | 3 years ago |
![]() |
c0401101ab | 3 years ago |
![]() |
4f7a42f41e | 3 years ago |
![]() |
e6cc132874 | 3 years ago |
![]() |
8422168154 | 3 years ago |
![]() |
03729ca66e | 3 years ago |
![]() |
ca7949537a | 4 years ago |
![]() |
6dd0dd58d4 | 4 years ago |
![]() |
2959b47a86 | 4 years ago |
![]() |
49174b1586 | 4 years ago |
![]() |
bb364badd3 | 4 years ago |
@ -0,0 +1,20 @@
|
|||||||
|
---
|
||||||
|
name: Feature request
|
||||||
|
about: Suggest an idea for this project
|
||||||
|
title: ''
|
||||||
|
labels: ''
|
||||||
|
assignees: ''
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
**Is your feature request related to a problem? Please describe.**
|
||||||
|
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
|
||||||
|
|
||||||
|
**Describe the solution you'd like**
|
||||||
|
A clear and concise description of what you want to happen.
|
||||||
|
|
||||||
|
**Describe alternatives you've considered**
|
||||||
|
A clear and concise description of any alternative solutions or features you've considered.
|
||||||
|
|
||||||
|
**Additional context**
|
||||||
|
Add any other context or screenshots about the feature request here.
|
@ -0,0 +1,27 @@
|
|||||||
|
---
|
||||||
|
name: Installation Issue
|
||||||
|
about: Create a report about an installation issue
|
||||||
|
title: ''
|
||||||
|
labels: ''
|
||||||
|
assignees: ''
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
**Describe the bug**
|
||||||
|
A clear and concise description of what the issue is.
|
||||||
|
|
||||||
|
**System Description**
|
||||||
|
Provide the output of
|
||||||
|
```bash
|
||||||
|
cat /etc/os-release
|
||||||
|
uname -a
|
||||||
|
```
|
||||||
|
|
||||||
|
**KasmVNC Details**
|
||||||
|
Provide the filename of the package you installed KasmVNC with. The filename includes important details like the OS, architecture, and commit sha.
|
||||||
|
|
||||||
|
**Installation Details**
|
||||||
|
Provide the commands used to install the KasmVNC package and the output of those commands.
|
||||||
|
|
||||||
|
**Additional context**
|
||||||
|
Add any other context about the problem here.
|
@ -0,0 +1,46 @@
|
|||||||
|
---
|
||||||
|
name: Report a bug or issue with KasmVNC
|
||||||
|
about: Create a bug/issue report on KasmVNC
|
||||||
|
title: ''
|
||||||
|
labels: ''
|
||||||
|
assignees: ''
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
**Describe the bug**
|
||||||
|
A clear and concise description of what the issue is.
|
||||||
|
|
||||||
|
**System Description**
|
||||||
|
Provide the output of
|
||||||
|
```bash
|
||||||
|
cat /etc/os-release
|
||||||
|
uname -a
|
||||||
|
```
|
||||||
|
|
||||||
|
**KasmVNC Details**
|
||||||
|
Provide the filename of the package you installed KasmVNC with. The filename includes important details like the OS, architecture, and commit sha.
|
||||||
|
|
||||||
|
Provide the output of this command.
|
||||||
|
```bash
|
||||||
|
Xvnc -version
|
||||||
|
```
|
||||||
|
|
||||||
|
**To Reproduce**
|
||||||
|
Steps to reproduce the behavior (for non-installation issues):
|
||||||
|
1. Go to '...'
|
||||||
|
2. Click on '....'
|
||||||
|
3. Scroll down to '....'
|
||||||
|
4. See error
|
||||||
|
|
||||||
|
**Expected behavior**
|
||||||
|
A clear and concise description of what you expected to happen.
|
||||||
|
|
||||||
|
**Browser**
|
||||||
|
If this is a problem with the KasmVNC client, provide details about the browser you are accessing KasmVNC from.
|
||||||
|
- Device: [e.g. iPhone6]
|
||||||
|
- OS: [e.g. Windows 11]
|
||||||
|
- Browser [e.g. chrome, safari, edge]
|
||||||
|
- Version [e.g. 22]
|
||||||
|
|
||||||
|
**Additional context**
|
||||||
|
Add any other context about the problem here.
|
@ -1,4 +1,4 @@
|
|||||||
[submodule "kasmweb"]
|
[submodule "kasmweb"]
|
||||||
path = kasmweb
|
path = kasmweb
|
||||||
url = https://github.com/kasmtech/noVNC.git
|
url = https://github.com/kasmtech/noVNC.git
|
||||||
branch = master
|
branch = release/1.2.2
|
||||||
|
@ -0,0 +1,108 @@
|
|||||||
|
# Debugging
|
||||||
|
In the case where KasmVNC crashes and a backtrace is produced. Developers need a way to make the backtrace useful for debugging. This document covers where the backtrace is logged and how to use a debug symbol package and gdb to gain more information from the backtrace, such as filename, function name, and line number.
|
||||||
|
|
||||||
|
## Test Symbolization
|
||||||
|
If you want to induce a crash to test that you can symbolize a backtrace you can start KasmVNC and then issue the following command.
|
||||||
|
|
||||||
|
killall -SEGV Xvnc
|
||||||
|
|
||||||
|
This will cause KasmVNC to terminate with a backtrace similar to the following. You will find the backtrace in the log file at $HOME/.vnc/$HOSTNAME:$DISPLAY.log where HOME is your user's profile path, HOSTNAME is the hostname of the system, and DISPLAY is the assigned display number for the session.
|
||||||
|
|
||||||
|
(EE)
|
||||||
|
(EE) Backtrace:
|
||||||
|
(EE) 0: /usr/bin/Xvnc (xorg_backtrace+0x4d) [0x5e48dd]
|
||||||
|
(EE) 1: /usr/bin/Xvnc (0x400000+0x1e8259) [0x5e8259]
|
||||||
|
(EE) 2: /lib/x86_64-linux-gnu/libpthread.so.0 (0x7f5a57ef6000+0x12980) [0x7f5a57f08980]
|
||||||
|
(EE) 3: /lib/x86_64-linux-gnu/libc.so.6 (epoll_wait+0x57) [0x7f5a552eca47]
|
||||||
|
(EE) 4: /usr/bin/Xvnc (ospoll_wait+0x37) [0x5e8d07]
|
||||||
|
(EE) 5: /usr/bin/Xvnc (WaitForSomething+0x1c3) [0x5e2813]
|
||||||
|
(EE) 6: /usr/bin/Xvnc (Dispatch+0xa7) [0x597007]
|
||||||
|
(EE) 7: /usr/bin/Xvnc (dix_main+0x36e) [0x59b1fe]
|
||||||
|
(EE) 8: /lib/x86_64-linux-gnu/libc.so.6 (__libc_start_main+0xe7) [0x7f5a551ecbf7]
|
||||||
|
(EE) 9: /usr/bin/Xvnc (_start+0x2a) [0x46048a]
|
||||||
|
(EE)
|
||||||
|
(EE) Received signal 11 sent by process 17182, uid 0
|
||||||
|
(EE)
|
||||||
|
Fatal server error:
|
||||||
|
(EE) Caught signal 11 (Segmentation fault). Server aborting
|
||||||
|
(EE)
|
||||||
|
|
||||||
|
## Debug Symbol Package
|
||||||
|
In order to make use of this backtrace, you will need to symbolize the backtrace. Each build of KasmVNC produced by our pipelines comes with a corresponding debug symbol package that can be downloaded. You need two pieces of information to get the package, the git commit ID of KasmVNC and the MD5 sum of Xkasmvnc binary on your system.
|
||||||
|
|
||||||
|
The git commit ID can be found using Xvnc -version:
|
||||||
|
|
||||||
|
ubuntu@matt-dev-vm-1:~$ Xvnc -version
|
||||||
|
Xvnc KasmVNC 0.9.94002f39917dca0ad82ac0c29a75c723b538b32b - built Feb 17 2022 15:21:01
|
||||||
|
Copyright (C) 1999-2018 KasmVNC Team and many others (see README.me)
|
||||||
|
See http://kasmweb.com for information on KasmVNC.
|
||||||
|
Underlying X server release 12010000, The X.Org Foundation
|
||||||
|
|
||||||
|
The MD5 sum can be obtained using the md5sum command:
|
||||||
|
|
||||||
|
md5sum /usr/bin/Xkasmvnc
|
||||||
|
57ee7028239c5a737c0aeee4a34138c3 /usr/bin/Xkasmvnc
|
||||||
|
|
||||||
|
With these two pieces of information, you can get the debug symbol package at https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/crashpad/[COMMITID]/[MD5SUM]/kasmvncserver-dbgsym.deb, in the above example it would be.
|
||||||
|
|
||||||
|
[https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/crashpad/94002f39917dca0ad82ac0c29a75c723b538b32b/57ee7028239c5a737c0aeee4a34138c3/kasmvncserver-dbgsym.deb](https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/crashpad/94002f39917dca0ad82ac0c29a75c723b538b32b/57ee7028239c5a737c0aeee4a34138c3/kasmvncserver-dbgsym.deb "https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/crashpad/94002f39917dca0ad82ac0c29a75c723b538b32b/57ee7028239c5a737c0aeee4a34138c3/kasmvncserver-dbgsym.deb")
|
||||||
|
|
||||||
|
Use wget or curl to download the debug symbol package and then install it.
|
||||||
|
|
||||||
|
wget https://kasmweb-build-artifacts.s3.amazonaws.com/kasmvnc/crashpad/94002f39917dca0ad82ac0c29a75c723b538b32b/57ee7028239c5a737c0aeee4a34138c3/kasmvncserver-dbgsym.deb
|
||||||
|
sudo dpkg -i kasmvncserver-dbgsym.deb
|
||||||
|
|
||||||
|
## Symbolize a Backtrace
|
||||||
|
With the KasmVNC binary and debug symbol package installed on the system, you can use gdb or addr2line to get more information, such as the filename, function name, and line number that the backtrace line is referring to.
|
||||||
|
|
||||||
|
Here is a single line from a backtrace. The following example shows how to retrieve additional information that can help with debugging the crash.
|
||||||
|
(EE) 8: /usr/bin/Xvnc (0x400000+0x13e674) [**0x53e674**]
|
||||||
|
|
||||||
|
echo info line ***0x53eaaa** | gdb -q /usr/bin/Xkasmvnc
|
||||||
|
(gdb) Line 223 of "/src/common/network/webudp/Wu.cpp" starts at address 0x53e674 <WuClientSendPendingDTLS(WuClient*, Wu const*, Wu const*)+68>
|
||||||
|
|
||||||
|
The following script will search the provide file for a backtrace and symbolize the entire backtrace.
|
||||||
|
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
FILENAME=$1
|
||||||
|
grep "(EE)" $FILENAME | while read -r line ; do
|
||||||
|
BACKTRACE=$(echo $line | grep -Po '\[[0-9a-f]x[a-f0-9]{1,}' | sed -r 's#\[##')
|
||||||
|
echo $line
|
||||||
|
if ! [ -z $BACKTRACE ] ; then
|
||||||
|
SYMBOLIZED=$(echo "info line *${BACKTRACE}" | gdb /usr/bin/Xkasmvnc | grep "(gdb)" | grep -vP "\(gdb\)\s*quit$")
|
||||||
|
echo " ${SYMBOLIZED}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
Using this script on the above example backtrace produces the following output.
|
||||||
|
|
||||||
|
ubuntu@hostname-1:~$ bash symbolize.sh ~/.vnc/hostname-1\:10.log
|
||||||
|
(EE)
|
||||||
|
(EE) Backtrace:
|
||||||
|
(EE) 0: /usr/bin/Xvnc (xorg_backtrace+0x4d) [0x5e48dd]
|
||||||
|
(gdb) Line 130 of "backtrace.c" starts at address 0x5e48dd <xorg_backtrace+77> and ends at 0x5e4900 <xorg_backtrace+112>.
|
||||||
|
(EE) 1: /usr/bin/Xvnc (0x400000+0x1e8259) [0x5e8259]
|
||||||
|
(gdb) Line 138 of "osinit.c" starts at address 0x5e8259 <OsSigHandler+41> and ends at 0x5e8275 <OsSigHandler+69>.
|
||||||
|
(EE) 2: /lib/x86_64-linux-gnu/libpthread.so.0 (0x7f5a57ef6000+0x12980) [0x7f5a57f08980]
|
||||||
|
(gdb) No line number information available for address 0x7f5a57f08980
|
||||||
|
(EE) 3: /lib/x86_64-linux-gnu/libc.so.6 (epoll_wait+0x57) [0x7f5a552eca47]
|
||||||
|
(gdb) No line number information available for address 0x7f5a552eca47
|
||||||
|
(EE) 4: /usr/bin/Xvnc (ospoll_wait+0x37) [0x5e8d07]
|
||||||
|
(gdb) Line 643 of "ospoll.c" starts at address 0x5e8d07 <ospoll_wait+55> and ends at 0x5e8d09 <ospoll_wait+57>.
|
||||||
|
(EE) 5: /usr/bin/Xvnc (WaitForSomething+0x1c3) [0x5e2813]
|
||||||
|
(gdb) Line 210 of "WaitFor.c" starts at address 0x5e2813 <WaitForSomething+451> and ends at 0x5e2819 <WaitForSomething+457>.
|
||||||
|
(EE) 6: /usr/bin/Xvnc (Dispatch+0xa7) [0x597007]
|
||||||
|
(gdb) Line 421 of "dispatch.c" starts at address 0x596ffb <Dispatch+155> and ends at 0x59700b <Dispatch+171>.
|
||||||
|
(EE) 7: /usr/bin/Xvnc (dix_main+0x36e) [0x59b1fe]
|
||||||
|
(gdb) Line 278 of "main.c" starts at address 0x59b1fe <dix_main+878> and ends at 0x59b203 <dix_main+883>.
|
||||||
|
(EE) 8: /lib/x86_64-linux-gnu/libc.so.6 (__libc_start_main+0xe7) [0x7f5a551ecbf7]
|
||||||
|
(gdb) No line number information available for address 0x7f5a551ecbf7
|
||||||
|
(EE) 9: /usr/bin/Xvnc (_start+0x2a) [0x46048a]
|
||||||
|
(gdb) No line number information available for address 0x46048a <_start+42>
|
||||||
|
(EE)
|
||||||
|
(EE) Received signal 11 sent by process 17182, uid 0
|
||||||
|
(EE)
|
||||||
|
(EE) Caught signal 11 (Segmentation fault). Server aborting
|
||||||
|
(EE)
|
||||||
|
|
@ -0,0 +1,15 @@
|
|||||||
|
[[source]]
|
||||||
|
url = "https://pypi.python.org/simple"
|
||||||
|
verify_ssl = true
|
||||||
|
name = "pypi"
|
||||||
|
|
||||||
|
[packages]
|
||||||
|
mamba = "*"
|
||||||
|
expects = "*"
|
||||||
|
"path.py" = "*"
|
||||||
|
pexpect = "*"
|
||||||
|
|
||||||
|
[dev-packages]
|
||||||
|
|
||||||
|
[requires]
|
||||||
|
python_version = "3.8"
|
@ -0,0 +1,136 @@
|
|||||||
|
{
|
||||||
|
"_meta": {
|
||||||
|
"hash": {
|
||||||
|
"sha256": "6745d5e5d90e44a18d73a0e23bc3d3e68acb950af0b87df50b45272d25b9e615"
|
||||||
|
},
|
||||||
|
"pipfile-spec": 6,
|
||||||
|
"requires": {
|
||||||
|
"python_version": "3.8"
|
||||||
|
},
|
||||||
|
"sources": [
|
||||||
|
{
|
||||||
|
"name": "pypi",
|
||||||
|
"url": "https://pypi.python.org/simple",
|
||||||
|
"verify_ssl": true
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"default": {
|
||||||
|
"args": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:a785b8d837625e9b61c39108532d95b85274acd679693b71ebb5156848fcf814"
|
||||||
|
],
|
||||||
|
"version": "==0.1.0"
|
||||||
|
},
|
||||||
|
"clint": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:05224c32b1075563d0b16d0015faaf9da43aa214e4a2140e51f08789e7a4c5aa"
|
||||||
|
],
|
||||||
|
"version": "==0.5.1"
|
||||||
|
},
|
||||||
|
"coverage": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:004d1880bed2d97151facef49f08e255a20ceb6f9432df75f4eef018fdd5a78c",
|
||||||
|
"sha256:01d84219b5cdbfc8122223b39a954820929497a1cb1422824bb86b07b74594b6",
|
||||||
|
"sha256:040af6c32813fa3eae5305d53f18875bedd079960822ef8ec067a66dd8afcd45",
|
||||||
|
"sha256:06191eb60f8d8a5bc046f3799f8a07a2d7aefb9504b0209aff0b47298333302a",
|
||||||
|
"sha256:13034c4409db851670bc9acd836243aeee299949bd5673e11844befcb0149f03",
|
||||||
|
"sha256:13c4ee887eca0f4c5a247b75398d4114c37882658300e153113dafb1d76de529",
|
||||||
|
"sha256:184a47bbe0aa6400ed2d41d8e9ed868b8205046518c52464fde713ea06e3a74a",
|
||||||
|
"sha256:18ba8bbede96a2c3dde7b868de9dcbd55670690af0988713f0603f037848418a",
|
||||||
|
"sha256:1aa846f56c3d49205c952d8318e76ccc2ae23303351d9270ab220004c580cfe2",
|
||||||
|
"sha256:217658ec7187497e3f3ebd901afdca1af062b42cfe3e0dafea4cced3983739f6",
|
||||||
|
"sha256:24d4a7de75446be83244eabbff746d66b9240ae020ced65d060815fac3423759",
|
||||||
|
"sha256:2910f4d36a6a9b4214bb7038d537f015346f413a975d57ca6b43bf23d6563b53",
|
||||||
|
"sha256:2949cad1c5208b8298d5686d5a85b66aae46d73eec2c3e08c817dd3513e5848a",
|
||||||
|
"sha256:2a3859cb82dcbda1cfd3e6f71c27081d18aa251d20a17d87d26d4cd216fb0af4",
|
||||||
|
"sha256:2cafbbb3af0733db200c9b5f798d18953b1a304d3f86a938367de1567f4b5bff",
|
||||||
|
"sha256:2e0d881ad471768bf6e6c2bf905d183543f10098e3b3640fc029509530091502",
|
||||||
|
"sha256:30c77c1dc9f253283e34c27935fded5015f7d1abe83bc7821680ac444eaf7793",
|
||||||
|
"sha256:3487286bc29a5aa4b93a072e9592f22254291ce96a9fbc5251f566b6b7343cdb",
|
||||||
|
"sha256:372da284cfd642d8e08ef606917846fa2ee350f64994bebfbd3afb0040436905",
|
||||||
|
"sha256:41179b8a845742d1eb60449bdb2992196e211341818565abded11cfa90efb821",
|
||||||
|
"sha256:44d654437b8ddd9eee7d1eaee28b7219bec228520ff809af170488fd2fed3e2b",
|
||||||
|
"sha256:4a7697d8cb0f27399b0e393c0b90f0f1e40c82023ea4d45d22bce7032a5d7b81",
|
||||||
|
"sha256:51cb9476a3987c8967ebab3f0fe144819781fca264f57f89760037a2ea191cb0",
|
||||||
|
"sha256:52596d3d0e8bdf3af43db3e9ba8dcdaac724ba7b5ca3f6358529d56f7a166f8b",
|
||||||
|
"sha256:53194af30d5bad77fcba80e23a1441c71abfb3e01192034f8246e0d8f99528f3",
|
||||||
|
"sha256:5fec2d43a2cc6965edc0bb9e83e1e4b557f76f843a77a2496cbe719583ce8184",
|
||||||
|
"sha256:6c90e11318f0d3c436a42409f2749ee1a115cd8b067d7f14c148f1ce5574d701",
|
||||||
|
"sha256:74d881fc777ebb11c63736622b60cb9e4aee5cace591ce274fb69e582a12a61a",
|
||||||
|
"sha256:7501140f755b725495941b43347ba8a2777407fc7f250d4f5a7d2a1050ba8e82",
|
||||||
|
"sha256:796c9c3c79747146ebd278dbe1e5c5c05dd6b10cc3bcb8389dfdf844f3ead638",
|
||||||
|
"sha256:869a64f53488f40fa5b5b9dcb9e9b2962a66a87dab37790f3fcfb5144b996ef5",
|
||||||
|
"sha256:8963a499849a1fc54b35b1c9f162f4108017b2e6db2c46c1bed93a72262ed083",
|
||||||
|
"sha256:8d0a0725ad7c1a0bcd8d1b437e191107d457e2ec1084b9f190630a4fb1af78e6",
|
||||||
|
"sha256:900fbf7759501bc7807fd6638c947d7a831fc9fdf742dc10f02956ff7220fa90",
|
||||||
|
"sha256:92b017ce34b68a7d67bd6d117e6d443a9bf63a2ecf8567bb3d8c6c7bc5014465",
|
||||||
|
"sha256:970284a88b99673ccb2e4e334cfb38a10aab7cd44f7457564d11898a74b62d0a",
|
||||||
|
"sha256:972c85d205b51e30e59525694670de6a8a89691186012535f9d7dbaa230e42c3",
|
||||||
|
"sha256:9a1ef3b66e38ef8618ce5fdc7bea3d9f45f3624e2a66295eea5e57966c85909e",
|
||||||
|
"sha256:af0e781009aaf59e25c5a678122391cb0f345ac0ec272c7961dc5455e1c40066",
|
||||||
|
"sha256:b6d534e4b2ab35c9f93f46229363e17f63c53ad01330df9f2d6bd1187e5eaacf",
|
||||||
|
"sha256:b7895207b4c843c76a25ab8c1e866261bcfe27bfaa20c192de5190121770672b",
|
||||||
|
"sha256:c0891a6a97b09c1f3e073a890514d5012eb256845c451bd48f7968ef939bf4ae",
|
||||||
|
"sha256:c2723d347ab06e7ddad1a58b2a821218239249a9e4365eaff6649d31180c1669",
|
||||||
|
"sha256:d1f8bf7b90ba55699b3a5e44930e93ff0189aa27186e96071fac7dd0d06a1873",
|
||||||
|
"sha256:d1f9ce122f83b2305592c11d64f181b87153fc2c2bbd3bb4a3dde8303cfb1a6b",
|
||||||
|
"sha256:d314ed732c25d29775e84a960c3c60808b682c08d86602ec2c3008e1202e3bb6",
|
||||||
|
"sha256:d636598c8305e1f90b439dbf4f66437de4a5e3c31fdf47ad29542478c8508bbb",
|
||||||
|
"sha256:deee1077aae10d8fa88cb02c845cfba9b62c55e1183f52f6ae6a2df6a2187160",
|
||||||
|
"sha256:ebe78fe9a0e874362175b02371bdfbee64d8edc42a044253ddf4ee7d3c15212c",
|
||||||
|
"sha256:f030f8873312a16414c0d8e1a1ddff2d3235655a2174e3648b4fa66b3f2f1079",
|
||||||
|
"sha256:f0b278ce10936db1a37e6954e15a3730bea96a0997c26d7fee88e6c396c2086d",
|
||||||
|
"sha256:f11642dddbb0253cc8853254301b51390ba0081750a8ac03f20ea8103f0c56b6"
|
||||||
|
],
|
||||||
|
"markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' and python_version < '4'",
|
||||||
|
"version": "==5.5"
|
||||||
|
},
|
||||||
|
"expects": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:419902ccafe81b7e9559eeb6b7a07ef9d5c5604eddb93000f0642b3b2d594f4c"
|
||||||
|
],
|
||||||
|
"index": "pypi",
|
||||||
|
"version": "==0.9.0"
|
||||||
|
},
|
||||||
|
"mamba": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:75cfc6dfd287dcccaf86dd753cf48e0a7337487c7c3fafda05a6a67ded6da496"
|
||||||
|
],
|
||||||
|
"index": "pypi",
|
||||||
|
"version": "==0.11.2"
|
||||||
|
},
|
||||||
|
"path": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:2de925e8d421f93bcea80d511b81accfb6a7e6b249afa4a5559557b0cf817097",
|
||||||
|
"sha256:340054c5bb459fc9fd40e7eb6768c5989f3e599d18224238465b5333bc8faa7d"
|
||||||
|
],
|
||||||
|
"markers": "python_version >= '3.6'",
|
||||||
|
"version": "==16.2.0"
|
||||||
|
},
|
||||||
|
"path.py": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:8d885e8b2497aed005703d94e0fd97943401f035e42a136810308bff034529a8",
|
||||||
|
"sha256:a43e82eb2c344c3fd0b9d6352f6b856f40b8b7d3d65cc05978b42c3715668496"
|
||||||
|
],
|
||||||
|
"index": "pypi",
|
||||||
|
"version": "==12.5.0"
|
||||||
|
},
|
||||||
|
"pexpect": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:0b48a55dcb3c05f3329815901ea4fc1537514d6ba867a152b581d69ae3710937",
|
||||||
|
"sha256:fc65a43959d153d0114afe13997d439c22823a27cefceb5ff35c2178c6784c0c"
|
||||||
|
],
|
||||||
|
"index": "pypi",
|
||||||
|
"version": "==4.8.0"
|
||||||
|
},
|
||||||
|
"ptyprocess": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:4b41f3967fce3af57cc7e94b888626c18bf37a083e3651ca8feeb66d492fef35",
|
||||||
|
"sha256:5c5d0a3b48ceee0b48485e0c26037c0acd7d29765ca3fbb5cb3831d347423220"
|
||||||
|
],
|
||||||
|
"version": "==0.7.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"develop": {}
|
||||||
|
}
|
@ -1,106 +1,272 @@
|
|||||||
# KasmVNC - Linux Web Remote Desktop
|
# KasmVNC - Linux Web Remote Desktop
|
||||||
|
|
||||||
<a href="https://kasmweb.com"><img src="https://kasm-static-content.s3.amazonaws.com/logo_kasm.png" width="300"><a/>
|
<a href="https://kasmweb.com"><img src="https://kasm-static-content.s3.amazonaws.com/logo_kasm.png" width="300"><a/>
|
||||||
|
|
||||||
[Kasm Technologies](https://www.kasmweb.com) developed Kasm Workspaces, the Containerized Streaming Platform. Kasm has open-sourced the Workspace docker images, which include containerized [full desktops and apps](https://github.com/kasmtech/workspaces-images) and [base images](https://github.com/kasmtech/workspaces-core-images) intended for developers to create custimized streaming containers. These containers can be used standalone or within the [Kasm Workspaces Platform](https://www.kasmweb.com) which provides a full Enterprise feature set. KasmVNC is used as the streaming tech for our container images, however, you can use KasmVNC for individual servers. While the term VNC is in the name, KasmVNC is not intended to remain compliant with the RFB spec and has different goals than other VNC projects:
|
|
||||||
|
|
||||||
- Web-based - KasmVNC is designed to provide a web accessible remote desktop. It comes with a web server and websocket server built in. There is no need to install other components. Simply run and navigate to your desktop's URL on the port you specify. While you can still tun on the legacy VNC port, it is disabled by default.
|
KasmVNC provides remote web-based access to a Desktop or application. While VNC is in the name, KasmVNC differs from other VNC variants such as TigerVNC, RealVNC, and TurboVNC. KasmVNC has broken from the RFB specification which defines VNC, in order to support modern technologies and increase security. KasmVNC is accessed by users from any modern browser and does not support legacy VNC viewer applications. KasmVNC uses a modern YAML based configuration at the server and user level, allowing for ease of management.
|
||||||
- Security - The RFB specification (VNC) limits the password field to 8 characters, so while the client may take a longer password, only the first 8 characters are sent. KasmVNC defaults to HTTPS with HTTP Basic Auth and disables the legacy VNC authentication method which is not sufficiently secure for internet accessible systems.
|
|
||||||
- Simplicity - KasmVNC aims at being simple to deploy and configure.
|
|
||||||
|
|
||||||
# New Features!
|
[Kasm Technologies](https://www.kasmweb.com) developed Kasm Workspaces, the Containerized Streaming Platform. Kasm has open-sourced the Workspace docker images, which include containerized [full desktops and apps](https://github.com/kasmtech/workspaces-images) and [base images](https://github.com/kasmtech/workspaces-core-images) intended for developers to create customized streaming containers. These containers can be used standalone or within the [Kasm Workspaces Platform](https://www.kasmweb.com) which provides a full Enterprise feature set.
|
||||||
|
|
||||||
- Webp image compression for better bandwidth usage
|
## Documentation
|
||||||
- Automatic mixing of webp and jpeg based on CPU availability on server
|
|
||||||
- Multi-threaded image encoding for smoother frame rate for servers with more cores
|
|
||||||
- [Full screen video detection](https://github.com/kasmtech/KasmVNC/wiki/Video-Rendering-Options#video-mode), goes into configurable video mode for better full screen videoo playback performance.
|
|
||||||
- [Dynamic jpeg/webp image coompression](https://github.com/kasmtech/KasmVNC/wiki/Video-Rendering-Options#dynamic-image-quality) quality settings based on screen change rates
|
|
||||||
- Seemless clipboard support (on Chromium based browsers)
|
|
||||||
- Allow client to set/change most configuration settings
|
|
||||||
- [Data Loss Prevention features](https://github.com/kasmtech/KasmVNC/wiki/Data-Loss-Prevention)
|
|
||||||
- Key stroke logging
|
|
||||||
- Clipboard logging
|
|
||||||
- Max clipboard transfer size up and down
|
|
||||||
- Min time between clipboard operations required
|
|
||||||
- Keyboard input rate limit
|
|
||||||
- Screen region selection
|
|
||||||
- Deb packages for Debian, Ubuntu, and Kali Linux included in release.
|
|
||||||
- RPM packages for CentOS, Fedora. RPM packages are currently not updatable and not released, though you can build and install them. See build documentation.
|
|
||||||
- Web [API](https://github.com/kasmtech/KasmVNC/wiki/API) added for remotely controlling and getting information from KasmVNC
|
|
||||||
- Multi-User with ability to pass control to other users.
|
|
||||||
- Web UI uses a webpack for faster load times.
|
|
||||||
- Network and CPU bottleneck statistics
|
|
||||||
|
|
||||||
|
**Do not use the README from the master branch**, unless you are compiling KasmVNC yourself from the tip of master. Use the documentation for your specific release.
|
||||||
|
|
||||||
Future Goals:
|
- [KasmVNC 1.0.0 Documentation](https://www.kasmweb.com/kasmvnc/docs/1.0.0/index.html)
|
||||||
|
|
||||||
- Support uploads and downloads
|
For beta releases prior to version 1.0.0, use the README in this github project on the tagged commit for that release.
|
||||||
- Pre-build Packages for all major Linux distributions
|
|
||||||
|
|
||||||
### Installation
|
## Installation
|
||||||
|
|
||||||
#### Debian-based
|
**You must disconnect and reconnect to the server after installation, for the group membership to apply.**
|
||||||
|
|
||||||
|
### Debian/Ubuntu/Kali
|
||||||
```sh
|
```sh
|
||||||
wget https://github.com/kasmtech/KasmVNC/releases/download/v0.9.2-beta/kasmvncserver_ubuntu_bionic_0.9.2_amd64.deb
|
# Please choose the package for your distro here (under Assets):
|
||||||
|
# https://github.com/kasmtech/KasmVNC/releases
|
||||||
sudo dpkg -i kasmvncserver_*.deb
|
wget <package_url>
|
||||||
sudo apt-get -f install
|
|
||||||
|
|
||||||
# We provide an example script to run KasmVNC at #
|
sudo apt-get install ./kasmvncserver_*.deb
|
||||||
# /usr/share/doc/kasmvncserver/examples/kasmvncserver-easy-start. It runs a VNC
|
|
||||||
# server on display :10 and on interface 0.0.0.0. If you're happy with those
|
|
||||||
# defaults you can just use it as is:
|
|
||||||
sudo ln -s /usr/share/doc/kasmvncserver/examples/kasmvncserver-easy-start /usr/bin/
|
|
||||||
|
|
||||||
# Add your user to the ssl-cert group
|
# Add your user to the ssl-cert group
|
||||||
sudo addgroup $USER ssl-cert
|
sudo adduser $USER ssl-cert
|
||||||
# You will need to re-connect in order to pick up the group change
|
```
|
||||||
|
|
||||||
# Create ~/.vnc directory and corresponding files.
|
### Oracle 8
|
||||||
kasmvncserver-easy-start -d && kasmvncserver-easy-start -kill
|
```sh
|
||||||
|
# Please choose the package for your distro here (under Assets):
|
||||||
|
# https://github.com/kasmtech/KasmVNC/releases
|
||||||
|
wget <package_url>
|
||||||
|
|
||||||
# Modify vncstartup to launch your environment of choice, in this example LXDE
|
# Ensure KasmVNC dependencies are available
|
||||||
# This may be optional depending on your system configuration
|
sudo dnf config-manager --set-enabled ol8_codeready_builder
|
||||||
echo '/usr/bin/lxsession -s LXDE &' >> ~/.vnc/xstartup
|
sudo dnf install oracle-epel-release-el8
|
||||||
|
|
||||||
# Start KasmVNC with debug logging:
|
sudo dnf localinstall ./kasmvncserver_*.rpm
|
||||||
kasmvncserver-easy-start -d
|
|
||||||
|
|
||||||
# Tail the logs
|
# Add your user to the kasmvnc-cert group
|
||||||
tail -f ~/.vnc/`hostname`:10.log
|
sudo usermod -a -G kasmvnc-cert $USER
|
||||||
```
|
```
|
||||||
|
|
||||||
Now navigate to your system at https://[ip-address]:8443/
|
### CentOS 7
|
||||||
|
|
||||||
To stop a running KasmVNC:
|
```sh
|
||||||
|
# Please choose the package for your distro here (under Assets):
|
||||||
|
# https://github.com/kasmtech/KasmVNC/releases
|
||||||
|
wget <package_url>
|
||||||
|
|
||||||
|
# Ensure KasmVNC dependencies are available
|
||||||
|
sudo yum install epel-release
|
||||||
|
|
||||||
|
sudo yum install ./kasmvncserver_*.rpm
|
||||||
|
|
||||||
|
# Add your user to the kasmvnc-cert group
|
||||||
|
sudo usermod -a -G kasmvnc-cert $USER
|
||||||
|
```
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
The following examples provide basic usage of KasmVNC with the tools provided. For full documentation on all the utilities and the runtime environment, see our [KasmVNC Documentation](https://www.kasmweb.com/kasmvnc/docs/latest/index.html)
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
kasmvncserver-easy-start -kill
|
# Start a session and be guided to setup a user and select a default desktop environment
|
||||||
|
vncserver
|
||||||
|
|
||||||
|
# Start a session with the mate desktop environment
|
||||||
|
vncserver -select-de mate
|
||||||
|
|
||||||
|
# Add a new user with read/write permissions
|
||||||
|
vncpasswd -u my_username -w -r
|
||||||
|
|
||||||
|
# Tail the logs
|
||||||
|
tail -f ~/.vnc/*.log
|
||||||
|
|
||||||
|
# Get a list of current sessions with display IDs
|
||||||
|
vncserver -list
|
||||||
|
|
||||||
|
# Kill the VNC session with display ID :2
|
||||||
|
vncserver -kill :2
|
||||||
|
```
|
||||||
|
|
||||||
|
## Configuration
|
||||||
|
|
||||||
|
KasmVNC is configured via YAML based configurations. The server level configuration is at `/etc/kasmvnc/kasmvnc.yaml`. Edits to this file apply to all users. Individual users can override server global configurations by specifying them in their configuration file at `~/.vnc/kasmvnc.yaml`.
|
||||||
|
|
||||||
|
The following configuration shows all default settings. Many of the encoding settings can be overridden by the client, unless the `runtime_configuration.allow_client_to_override_kasm_server_settings` setting is set tot false. By default the client is allowed to modify encoding settings.
|
||||||
|
|
||||||
|
For a full description of each setting see the [configuration reference](https://www.kasmweb.com/kasmvnc/docs/latest/configuration.html).
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
desktop:
|
||||||
|
resolution:
|
||||||
|
width: 1024
|
||||||
|
height: 768
|
||||||
|
allow_resize: true
|
||||||
|
pixel_depth: 24
|
||||||
|
gpu:
|
||||||
|
hw3d: false
|
||||||
|
drinode: /dev/dri/renderD128
|
||||||
|
|
||||||
|
network:
|
||||||
|
protocol: http
|
||||||
|
interface: 0.0.0.0
|
||||||
|
websocket_port: auto
|
||||||
|
use_ipv4: true
|
||||||
|
use_ipv6: true
|
||||||
|
udp:
|
||||||
|
public_ip: auto
|
||||||
|
port: auto
|
||||||
|
stun_server: auto
|
||||||
|
ssl:
|
||||||
|
pem_certificate: /etc/ssl/certs/ssl-cert-snakeoil.pem
|
||||||
|
pem_key: /etc/ssl/private/ssl-cert-snakeoil.key
|
||||||
|
require_ssl: true
|
||||||
|
|
||||||
|
user_session:
|
||||||
|
new_session_disconnects_existing_exclusive_session: false
|
||||||
|
concurrent_connections_prompt: false
|
||||||
|
concurrent_connections_prompt_timeout: 10
|
||||||
|
idle_timeout: never
|
||||||
|
|
||||||
|
keyboard:
|
||||||
|
remap_keys:
|
||||||
|
ignore_numlock: false
|
||||||
|
raw_keyboard: false
|
||||||
|
|
||||||
|
pointer:
|
||||||
|
enabled: true
|
||||||
|
|
||||||
|
runtime_configuration:
|
||||||
|
allow_client_to_override_kasm_server_settings: true
|
||||||
|
allow_override_standard_vnc_server_settings: true
|
||||||
|
allow_override_list:
|
||||||
|
- pointer.enabled
|
||||||
|
- data_loss_prevention.clipboard.server_to_client.enabled
|
||||||
|
- data_loss_prevention.clipboard.client_to_server.enabled
|
||||||
|
- data_loss_prevention.clipboard.server_to_client.primary_clipboard_enabled
|
||||||
|
|
||||||
|
logging:
|
||||||
|
log_writer_name: all
|
||||||
|
log_dest: logfile
|
||||||
|
level: 30
|
||||||
|
|
||||||
|
security:
|
||||||
|
brute_force_protection:
|
||||||
|
blacklist_threshold: 5
|
||||||
|
blacklist_timeout: 10
|
||||||
|
|
||||||
|
data_loss_prevention:
|
||||||
|
visible_region:
|
||||||
|
# top: 10
|
||||||
|
# left: 10
|
||||||
|
# right: 40
|
||||||
|
# bottom: 40
|
||||||
|
concealed_region:
|
||||||
|
allow_click_down: false
|
||||||
|
allow_click_release: false
|
||||||
|
clipboard:
|
||||||
|
delay_between_operations: none
|
||||||
|
allow_mimetypes:
|
||||||
|
- chromium/x-web-custom-data
|
||||||
|
- text/html
|
||||||
|
- image/png
|
||||||
|
server_to_client:
|
||||||
|
enabled: true
|
||||||
|
size: unlimited
|
||||||
|
primary_clipboard_enabled: false
|
||||||
|
client_to_server:
|
||||||
|
enabled: true
|
||||||
|
size: unlimited
|
||||||
|
keyboard:
|
||||||
|
enabled: true
|
||||||
|
rate_limit: unlimited
|
||||||
|
logging:
|
||||||
|
level: off
|
||||||
|
|
||||||
|
encoding:
|
||||||
|
max_frame_rate: 60
|
||||||
|
full_frame_updates: none
|
||||||
|
rect_encoding_mode:
|
||||||
|
min_quality: 7
|
||||||
|
max_quality: 8
|
||||||
|
consider_lossless_quality: 10
|
||||||
|
rectangle_compress_threads: auto
|
||||||
|
|
||||||
|
video_encoding_mode:
|
||||||
|
jpeg_quality: -1
|
||||||
|
webp_quality: -1
|
||||||
|
max_resolution:
|
||||||
|
width: 1920
|
||||||
|
height: 1080
|
||||||
|
enter_video_encoding_mode:
|
||||||
|
time_threshold: 5
|
||||||
|
area_threshold: 45%
|
||||||
|
exit_video_encoding_mode:
|
||||||
|
time_threshold: 3
|
||||||
|
logging:
|
||||||
|
level: off
|
||||||
|
scaling_algorithm: progressive_bilinear
|
||||||
|
|
||||||
|
compare_framebuffer: auto
|
||||||
|
zrle_zlib_level: auto
|
||||||
|
hextile_improved_compression: true
|
||||||
|
|
||||||
|
server:
|
||||||
|
http:
|
||||||
|
headers:
|
||||||
|
- Cross-Origin-Embedder-Policy=require-corp
|
||||||
|
- Cross-Origin-Opener-Policy=same-origin
|
||||||
|
httpd_directory: /usr/share/kasmvnc/www
|
||||||
|
advanced:
|
||||||
|
x_font_path: auto
|
||||||
|
kasm_password_file: ${HOME}/.kasmpasswd
|
||||||
|
x_authority_file: auto
|
||||||
|
auto_shutdown:
|
||||||
|
no_user_session_timeout: never
|
||||||
|
active_user_session_timeout: never
|
||||||
|
inactive_user_session_timeout: never
|
||||||
|
|
||||||
|
command_line:
|
||||||
|
prompt: true
|
||||||
```
|
```
|
||||||
|
|
||||||
The options for vncserver:
|
|
||||||
|
|
||||||
| Argument | Description |
|
# New Features!
|
||||||
| -------- | ----------- |
|
|
||||||
| depth | Color depth, for jpeg/webp should be 24bit |
|
|
||||||
| geometry | Screensize, this will automatically be adjusted when the client connects. |
|
|
||||||
| websocketPort | The port to use for the web socket. Use a high port to avoid having to run as root. |
|
|
||||||
| cert | SSL cert to use for HTTPS |
|
|
||||||
| sslOnly | Disable HTTP |
|
|
||||||
| interface | Which interface to bind the web server to. |
|
|
||||||
|
|
||||||
### Development
|
- Faster jpeg compression (via statically linked libjpeg-turbo)
|
||||||
Would you like to contribute to KasmVNC? Please reachout to us at info@kasmweb.com. We have investigated or are working on the following, if you have experience in these fields and would like to help please let us know.
|
- Webp image compression for better bandwidth usage
|
||||||
|
- Automatic mixing of webp and jpeg based on CPU availability on server
|
||||||
|
- Multi-threaded image encoding for smoother frame rate for servers with more cores
|
||||||
|
- WebRTC UDP Transit
|
||||||
|
- Lossless QOI Image format for Local LAN
|
||||||
|
- [Full screen video detection](https://github.com/kasmtech/KasmVNC/wiki/Video-Rendering-Options#video-mode), goes into configurable video mode for better full screen videoo playback performance.
|
||||||
|
- [Dynamic jpeg/webp image coompression](https://github.com/kasmtech/KasmVNC/wiki/Video-Rendering-Options#dynamic-image-quality) quality settings based on screen change rates
|
||||||
|
- Seemless clipboard support (on Chromium based browsers)
|
||||||
|
- Binary clipboard support for text, images, and formatted text (on Chromium based browsers)
|
||||||
|
- Allow client to set/change most configuration settings
|
||||||
|
- [Data Loss Prevention features](https://github.com/kasmtech/KasmVNC/wiki/Data-Loss-Prevention)
|
||||||
|
- Key stroke logging
|
||||||
|
- Clipboard logging
|
||||||
|
- Max clipboard transfer size up and down
|
||||||
|
- Min time between clipboard operations required
|
||||||
|
- Keyboard input rate limit
|
||||||
|
- Screen region selection
|
||||||
|
- Deb packages for Debian, Ubuntu, and Kali Linux included in release.
|
||||||
|
- RPM packages for CentOS, Oracle, OpenSUSE, Fedora. RPM packages are currently not updatable and not released, though you can build and install them. See build documentation.
|
||||||
|
- Web [API](https://github.com/kasmtech/KasmVNC/wiki/API) added for remotely controlling and getting information from KasmVNC
|
||||||
|
- Multi-User support with permissions that can be changed via the API
|
||||||
|
- Web UI uses a webpack for faster load times.
|
||||||
|
- Network and CPU bottleneck statistics
|
||||||
|
- Relative cursor support (game pointer mode)
|
||||||
|
- Cursor lock
|
||||||
|
- IME support for languages with extended characters
|
||||||
|
- Better mobile support
|
||||||
|
- DRI3 GPU acceleration with open source drivers (AMDGPU,Intel,ATI,ARM)
|
||||||
|
|
||||||
Real-time H264 encoding using NVIDIA and Intel encoding technology.
|
Future Goals:
|
||||||
|
|
||||||
Windows version of KasmVNC. We have been able to get it to compile for Windows and increased the performance, but still not releasable. Experienced Windows developers with a background in cross compiling would help.
|
- H264 encoding
|
||||||
|
|
||||||
ARM version of KasmVNC, we have had requests for this and at one point we did have an ARM build of KasmVNC but it takes dev cycles to mainain and bring it back to life.
|
|
||||||
|
|
||||||
### Compiling From Source
|
### Compiling From Source
|
||||||
See the [builder/README.md](https://github.com/kasmtech/KasmVNC/blob/master/builder/README.md). We containerize our build systems to ensure highly repeatable builds.
|
See the [builder/README.md](https://github.com/kasmtech/KasmVNC/blob/master/builder/README.md). We containerize our build systems to ensure highly repeatable builds.
|
||||||
|
|
||||||
### License and Acknowledgements
|
### License and Acknowledgements
|
||||||
See the [LICENSE.TXT](https://github.com/kasmtech/KasmVNC/blob/master/LICENSE.TXT) and [ACKNOWLEDGEMENTS.MD](https://github.com/kasmtech/KasmVNC/blob/master/LICENSE.TXT)
|
See the [LICENSE.TXT](https://github.com/kasmtech/KasmVNC/blob/master/LICENSE.TXT) and [ACKNOWLEDGEMENTS.md](https://github.com/kasmtech/KasmVNC/blob/master/ACKNOWLEDGEMENTS.md)
|
||||||
|
@ -0,0 +1,17 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
. builder/os_ver_cli.sh
|
||||||
|
|
||||||
|
cd "$(dirname "$0")/.."
|
||||||
|
|
||||||
|
docker build -t kasmvnc_apkbuilder_${os}:${os_codename} -f \
|
||||||
|
builder/dockerfile.${os}_${os_codename}.apk.build .
|
||||||
|
|
||||||
|
source_dir=$(echo $PWD)
|
||||||
|
L_UID=$(id -u)
|
||||||
|
L_GID=$(id -g)
|
||||||
|
docker run --rm -v "$source_dir":/src --user $L_UID:$L_GID \
|
||||||
|
kasmvnc_apkbuilder_${os}:${os_codename} /bin/bash -c \
|
||||||
|
'/src/builder/build-apk-inside-docker'
|
@ -0,0 +1,11 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
os=alpine
|
||||||
|
os_codename=$(cat /etc/os-release | awk '/VERSION_ID/' | grep -o '[[:digit:]]' | tr -d '\n' | head -c 3)
|
||||||
|
|
||||||
|
mkdir -p /src/builder/build/${os}_${os_codename}
|
||||||
|
mv \
|
||||||
|
/src/builder/build/kasmvnc.${os}_${os_codename}.tar.gz \
|
||||||
|
/src/builder/build/${os}_${os_codename}/kasmvnc.${os}_${os_codename}_$(uname -m).tgz
|
@ -0,0 +1,23 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -eo pipefail
|
||||||
|
|
||||||
|
new_version="$1"
|
||||||
|
|
||||||
|
add_debian_revision_to_new_version() {
|
||||||
|
echo "$new_version-1"
|
||||||
|
}
|
||||||
|
|
||||||
|
bump_deb() {
|
||||||
|
local image="debbump_package_version:dev"
|
||||||
|
local L_UID=$(id -u)
|
||||||
|
local L_GID=$(id -g)
|
||||||
|
local debian_version=$(add_debian_revision_to_new_version)
|
||||||
|
|
||||||
|
docker build -t "$image" -f builder/dockerfile.bump-package-version .
|
||||||
|
docker run --rm -v "$PWD":/src --user "$L_UID:$L_GID" \
|
||||||
|
"$image" /bin/bash -c \
|
||||||
|
"cd /src && builder/bump-package-version-inside-docker-deb $debian_version"
|
||||||
|
}
|
||||||
|
|
||||||
|
bump_deb
|
@ -0,0 +1,35 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -eo pipefail
|
||||||
|
|
||||||
|
new_version="$1"
|
||||||
|
spec_dirs=(centos oracle opensuse fedora)
|
||||||
|
|
||||||
|
spec_files() {
|
||||||
|
for d in "${spec_dirs[@]}"; do
|
||||||
|
ls "$d"/*.spec
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
bump_version() {
|
||||||
|
sed -i "s/^Version:.\+/Version: $new_version/" "$1"
|
||||||
|
}
|
||||||
|
|
||||||
|
detect_release_version() {
|
||||||
|
release_version=$(sed -ne 's/^Release:\s\+//p' "$1" | sed -e 's/%.\+$//')
|
||||||
|
}
|
||||||
|
|
||||||
|
bump_changelog() {
|
||||||
|
detect_release_version "$1"
|
||||||
|
|
||||||
|
local date=$(date +'%a %b %d %Y')
|
||||||
|
local changelog_version="$new_version-$release_version"
|
||||||
|
local new_changelog_entry="* $date KasmTech <info@kasmweb.com> - $changelog_version\n- Upstream release"
|
||||||
|
|
||||||
|
sed -i -e "s/%changelog/%changelog\n$new_changelog_entry/" "$1"
|
||||||
|
}
|
||||||
|
|
||||||
|
for spec_file in $(spec_files); do
|
||||||
|
bump_version $spec_file
|
||||||
|
bump_changelog $spec_file
|
||||||
|
done
|
@ -0,0 +1 @@
|
|||||||
|
VNC_PORT=8443
|
@ -0,0 +1,20 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
default_os=ubuntu
|
||||||
|
default_os_codename=focal
|
||||||
|
|
||||||
|
cd "$(dirname "$0")/.."
|
||||||
|
. ./builder/os_ver_cli.sh
|
||||||
|
. ./builder/common.sh
|
||||||
|
|
||||||
|
docker build --build-arg KASMVNC_PACKAGE_DIR="builder/build/${os_codename}" \
|
||||||
|
-t kasmvncdevenv_${os}:$os_codename \
|
||||||
|
-f builder/dockerfile.${os}_${os_codename}.vncserver_devenv.test .
|
||||||
|
docker run -it -v $(realpath ${PWD}):/src -p "443:$VNC_PORT" -p "$VNC_PORT:$VNC_PORT" \
|
||||||
|
-p 8444:8444 \
|
||||||
|
-p 8445:8445 --rm \
|
||||||
|
-e KASMVNC_VERBOSE_LOGGING=$KASMVNC_VERBOSE_LOGGING \
|
||||||
|
-e "VNC_USER=foo" -e "VNC_PW=foobar" \
|
||||||
|
kasmvncdevenv_${os}:$os_codename
|
@ -0,0 +1,7 @@
|
|||||||
|
FROM alpine:3.17
|
||||||
|
|
||||||
|
RUN apk add shadow bash
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
USER docker
|
@ -0,0 +1,82 @@
|
|||||||
|
FROM alpine:3.17
|
||||||
|
|
||||||
|
ENV KASMVNC_BUILD_OS alpine
|
||||||
|
ENV KASMVNC_BUILD_OS_CODENAME 317
|
||||||
|
ENV XORG_VER 21.1.8
|
||||||
|
|
||||||
|
RUN \
|
||||||
|
echo "**** install build deps ****" && \
|
||||||
|
apk add \
|
||||||
|
alpine-release \
|
||||||
|
alpine-sdk \
|
||||||
|
autoconf \
|
||||||
|
automake \
|
||||||
|
bash \
|
||||||
|
ca-certificates \
|
||||||
|
cmake \
|
||||||
|
coreutils \
|
||||||
|
curl \
|
||||||
|
eudev-dev \
|
||||||
|
font-cursor-misc \
|
||||||
|
font-misc-misc \
|
||||||
|
font-util-dev \
|
||||||
|
git \
|
||||||
|
grep \
|
||||||
|
jq \
|
||||||
|
libdrm-dev \
|
||||||
|
libepoxy-dev \
|
||||||
|
libjpeg-turbo-dev \
|
||||||
|
libjpeg-turbo-static \
|
||||||
|
libpciaccess-dev \
|
||||||
|
libtool \
|
||||||
|
libwebp-dev \
|
||||||
|
libx11-dev \
|
||||||
|
libxau-dev \
|
||||||
|
libxcb-dev \
|
||||||
|
libxcursor-dev \
|
||||||
|
libxcvt-dev \
|
||||||
|
libxdmcp-dev \
|
||||||
|
libxext-dev \
|
||||||
|
libxfont2-dev \
|
||||||
|
libxkbfile-dev \
|
||||||
|
libxrandr-dev \
|
||||||
|
libxshmfence-dev \
|
||||||
|
libxtst-dev \
|
||||||
|
mesa-dev \
|
||||||
|
mesa-dri-gallium \
|
||||||
|
meson \
|
||||||
|
nettle-dev \
|
||||||
|
openssl-dev \
|
||||||
|
pixman-dev \
|
||||||
|
procps \
|
||||||
|
shadow \
|
||||||
|
tar \
|
||||||
|
tzdata \
|
||||||
|
wayland-dev \
|
||||||
|
wayland-protocols \
|
||||||
|
xcb-util-dev \
|
||||||
|
xcb-util-image-dev \
|
||||||
|
xcb-util-keysyms-dev \
|
||||||
|
xcb-util-renderutil-dev \
|
||||||
|
xcb-util-wm-dev \
|
||||||
|
xinit \
|
||||||
|
xkbcomp \
|
||||||
|
xkbcomp-dev \
|
||||||
|
xkeyboard-config \
|
||||||
|
xorgproto \
|
||||||
|
xorg-server-common \
|
||||||
|
xorg-server-dev \
|
||||||
|
xtrans
|
||||||
|
|
||||||
|
|
||||||
|
ENV SCRIPTS_DIR=/tmp/scripts
|
||||||
|
COPY builder/scripts $SCRIPTS_DIR
|
||||||
|
RUN $SCRIPTS_DIR/build-webp
|
||||||
|
RUN $SCRIPTS_DIR/build-libjpeg-turbo
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
COPY --chown=docker:docker . /src/
|
||||||
|
|
||||||
|
USER docker
|
||||||
|
ENTRYPOINT ["/src/builder/build.sh"]
|
@ -0,0 +1,7 @@
|
|||||||
|
FROM alpine:3.18
|
||||||
|
|
||||||
|
RUN apk add shadow bash
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
USER docker
|
@ -0,0 +1,82 @@
|
|||||||
|
FROM alpine:3.18
|
||||||
|
|
||||||
|
ENV KASMVNC_BUILD_OS alpine
|
||||||
|
ENV KASMVNC_BUILD_OS_CODENAME 318
|
||||||
|
ENV XORG_VER 21.1.10
|
||||||
|
|
||||||
|
RUN \
|
||||||
|
echo "**** install build deps ****" && \
|
||||||
|
apk add \
|
||||||
|
alpine-release \
|
||||||
|
alpine-sdk \
|
||||||
|
autoconf \
|
||||||
|
automake \
|
||||||
|
bash \
|
||||||
|
ca-certificates \
|
||||||
|
cmake \
|
||||||
|
coreutils \
|
||||||
|
curl \
|
||||||
|
eudev-dev \
|
||||||
|
font-cursor-misc \
|
||||||
|
font-misc-misc \
|
||||||
|
font-util-dev \
|
||||||
|
git \
|
||||||
|
grep \
|
||||||
|
jq \
|
||||||
|
libdrm-dev \
|
||||||
|
libepoxy-dev \
|
||||||
|
libjpeg-turbo-dev \
|
||||||
|
libjpeg-turbo-static \
|
||||||
|
libpciaccess-dev \
|
||||||
|
libtool \
|
||||||
|
libwebp-dev \
|
||||||
|
libx11-dev \
|
||||||
|
libxau-dev \
|
||||||
|
libxcb-dev \
|
||||||
|
libxcursor-dev \
|
||||||
|
libxcvt-dev \
|
||||||
|
libxdmcp-dev \
|
||||||
|
libxext-dev \
|
||||||
|
libxfont2-dev \
|
||||||
|
libxkbfile-dev \
|
||||||
|
libxrandr-dev \
|
||||||
|
libxshmfence-dev \
|
||||||
|
libxtst-dev \
|
||||||
|
mesa-dev \
|
||||||
|
mesa-dri-gallium \
|
||||||
|
meson \
|
||||||
|
nettle-dev \
|
||||||
|
openssl-dev \
|
||||||
|
pixman-dev \
|
||||||
|
procps \
|
||||||
|
shadow \
|
||||||
|
tar \
|
||||||
|
tzdata \
|
||||||
|
wayland-dev \
|
||||||
|
wayland-protocols \
|
||||||
|
xcb-util-dev \
|
||||||
|
xcb-util-image-dev \
|
||||||
|
xcb-util-keysyms-dev \
|
||||||
|
xcb-util-renderutil-dev \
|
||||||
|
xcb-util-wm-dev \
|
||||||
|
xinit \
|
||||||
|
xkbcomp \
|
||||||
|
xkbcomp-dev \
|
||||||
|
xkeyboard-config \
|
||||||
|
xorgproto \
|
||||||
|
xorg-server-common \
|
||||||
|
xorg-server-dev \
|
||||||
|
xtrans
|
||||||
|
|
||||||
|
|
||||||
|
ENV SCRIPTS_DIR=/tmp/scripts
|
||||||
|
COPY builder/scripts $SCRIPTS_DIR
|
||||||
|
RUN $SCRIPTS_DIR/build-webp
|
||||||
|
RUN $SCRIPTS_DIR/build-libjpeg-turbo
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
COPY --chown=docker:docker . /src/
|
||||||
|
|
||||||
|
USER docker
|
||||||
|
ENTRYPOINT ["/src/builder/build.sh"]
|
@ -0,0 +1,7 @@
|
|||||||
|
FROM alpine:3.19
|
||||||
|
|
||||||
|
RUN apk add shadow bash
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
USER docker
|
@ -0,0 +1,82 @@
|
|||||||
|
FROM alpine:3.19
|
||||||
|
|
||||||
|
ENV KASMVNC_BUILD_OS alpine
|
||||||
|
ENV KASMVNC_BUILD_OS_CODENAME 319
|
||||||
|
ENV XORG_VER 21.1.12
|
||||||
|
|
||||||
|
RUN \
|
||||||
|
echo "**** install build deps ****" && \
|
||||||
|
apk add \
|
||||||
|
alpine-release \
|
||||||
|
alpine-sdk \
|
||||||
|
autoconf \
|
||||||
|
automake \
|
||||||
|
bash \
|
||||||
|
ca-certificates \
|
||||||
|
cmake \
|
||||||
|
coreutils \
|
||||||
|
curl \
|
||||||
|
eudev-dev \
|
||||||
|
font-cursor-misc \
|
||||||
|
font-misc-misc \
|
||||||
|
font-util-dev \
|
||||||
|
git \
|
||||||
|
grep \
|
||||||
|
jq \
|
||||||
|
libdrm-dev \
|
||||||
|
libepoxy-dev \
|
||||||
|
libjpeg-turbo-dev \
|
||||||
|
libjpeg-turbo-static \
|
||||||
|
libpciaccess-dev \
|
||||||
|
libtool \
|
||||||
|
libwebp-dev \
|
||||||
|
libx11-dev \
|
||||||
|
libxau-dev \
|
||||||
|
libxcb-dev \
|
||||||
|
libxcursor-dev \
|
||||||
|
libxcvt-dev \
|
||||||
|
libxdmcp-dev \
|
||||||
|
libxext-dev \
|
||||||
|
libxfont2-dev \
|
||||||
|
libxkbfile-dev \
|
||||||
|
libxrandr-dev \
|
||||||
|
libxshmfence-dev \
|
||||||
|
libxtst-dev \
|
||||||
|
mesa-dev \
|
||||||
|
mesa-dri-gallium \
|
||||||
|
meson \
|
||||||
|
nettle-dev \
|
||||||
|
openssl-dev \
|
||||||
|
pixman-dev \
|
||||||
|
procps \
|
||||||
|
shadow \
|
||||||
|
tar \
|
||||||
|
tzdata \
|
||||||
|
wayland-dev \
|
||||||
|
wayland-protocols \
|
||||||
|
xcb-util-dev \
|
||||||
|
xcb-util-image-dev \
|
||||||
|
xcb-util-keysyms-dev \
|
||||||
|
xcb-util-renderutil-dev \
|
||||||
|
xcb-util-wm-dev \
|
||||||
|
xinit \
|
||||||
|
xkbcomp \
|
||||||
|
xkbcomp-dev \
|
||||||
|
xkeyboard-config \
|
||||||
|
xorgproto \
|
||||||
|
xorg-server-common \
|
||||||
|
xorg-server-dev \
|
||||||
|
xtrans
|
||||||
|
|
||||||
|
|
||||||
|
ENV SCRIPTS_DIR=/tmp/scripts
|
||||||
|
COPY builder/scripts $SCRIPTS_DIR
|
||||||
|
RUN $SCRIPTS_DIR/build-webp
|
||||||
|
RUN $SCRIPTS_DIR/build-libjpeg-turbo
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
COPY --chown=docker:docker . /src/
|
||||||
|
|
||||||
|
USER docker
|
||||||
|
ENTRYPOINT ["/src/builder/build.sh"]
|
@ -0,0 +1,7 @@
|
|||||||
|
FROM alpine:3.20
|
||||||
|
|
||||||
|
RUN apk add shadow bash
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
USER docker
|
@ -0,0 +1,82 @@
|
|||||||
|
FROM alpine:3.20
|
||||||
|
|
||||||
|
ENV KASMVNC_BUILD_OS alpine
|
||||||
|
ENV KASMVNC_BUILD_OS_CODENAME 320
|
||||||
|
ENV XORG_VER 21.1.14
|
||||||
|
|
||||||
|
RUN \
|
||||||
|
echo "**** install build deps ****" && \
|
||||||
|
apk add \
|
||||||
|
alpine-release \
|
||||||
|
alpine-sdk \
|
||||||
|
autoconf \
|
||||||
|
automake \
|
||||||
|
bash \
|
||||||
|
ca-certificates \
|
||||||
|
cmake \
|
||||||
|
coreutils \
|
||||||
|
curl \
|
||||||
|
eudev-dev \
|
||||||
|
font-cursor-misc \
|
||||||
|
font-misc-misc \
|
||||||
|
font-util-dev \
|
||||||
|
git \
|
||||||
|
grep \
|
||||||
|
jq \
|
||||||
|
libdrm-dev \
|
||||||
|
libepoxy-dev \
|
||||||
|
libjpeg-turbo-dev \
|
||||||
|
libjpeg-turbo-static \
|
||||||
|
libpciaccess-dev \
|
||||||
|
libtool \
|
||||||
|
libwebp-dev \
|
||||||
|
libx11-dev \
|
||||||
|
libxau-dev \
|
||||||
|
libxcb-dev \
|
||||||
|
libxcursor-dev \
|
||||||
|
libxcvt-dev \
|
||||||
|
libxdmcp-dev \
|
||||||
|
libxext-dev \
|
||||||
|
libxfont2-dev \
|
||||||
|
libxkbfile-dev \
|
||||||
|
libxrandr-dev \
|
||||||
|
libxshmfence-dev \
|
||||||
|
libxtst-dev \
|
||||||
|
mesa-dev \
|
||||||
|
mesa-dri-gallium \
|
||||||
|
meson \
|
||||||
|
nettle-dev \
|
||||||
|
openssl-dev \
|
||||||
|
pixman-dev \
|
||||||
|
procps \
|
||||||
|
shadow \
|
||||||
|
tar \
|
||||||
|
tzdata \
|
||||||
|
wayland-dev \
|
||||||
|
wayland-protocols \
|
||||||
|
xcb-util-dev \
|
||||||
|
xcb-util-image-dev \
|
||||||
|
xcb-util-keysyms-dev \
|
||||||
|
xcb-util-renderutil-dev \
|
||||||
|
xcb-util-wm-dev \
|
||||||
|
xinit \
|
||||||
|
xkbcomp \
|
||||||
|
xkbcomp-dev \
|
||||||
|
xkeyboard-config \
|
||||||
|
xorgproto \
|
||||||
|
xorg-server-common \
|
||||||
|
xorg-server-dev \
|
||||||
|
xtrans
|
||||||
|
|
||||||
|
|
||||||
|
ENV SCRIPTS_DIR=/tmp/scripts
|
||||||
|
COPY builder/scripts $SCRIPTS_DIR
|
||||||
|
RUN $SCRIPTS_DIR/build-webp
|
||||||
|
RUN $SCRIPTS_DIR/build-libjpeg-turbo
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
COPY --chown=docker:docker . /src/
|
||||||
|
|
||||||
|
USER docker
|
||||||
|
ENTRYPOINT ["/src/builder/build.sh"]
|
@ -0,0 +1,7 @@
|
|||||||
|
FROM alpine:3.21
|
||||||
|
|
||||||
|
RUN apk add shadow bash
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
USER docker
|
@ -0,0 +1,82 @@
|
|||||||
|
FROM alpine:3.21
|
||||||
|
|
||||||
|
ENV KASMVNC_BUILD_OS alpine
|
||||||
|
ENV KASMVNC_BUILD_OS_CODENAME 321
|
||||||
|
ENV XORG_VER 21.1.14
|
||||||
|
|
||||||
|
RUN \
|
||||||
|
echo "**** install build deps ****" && \
|
||||||
|
apk add \
|
||||||
|
alpine-release \
|
||||||
|
alpine-sdk \
|
||||||
|
autoconf \
|
||||||
|
automake \
|
||||||
|
bash \
|
||||||
|
ca-certificates \
|
||||||
|
cmake \
|
||||||
|
coreutils \
|
||||||
|
curl \
|
||||||
|
eudev-dev \
|
||||||
|
font-cursor-misc \
|
||||||
|
font-misc-misc \
|
||||||
|
font-util-dev \
|
||||||
|
git \
|
||||||
|
grep \
|
||||||
|
jq \
|
||||||
|
libdrm-dev \
|
||||||
|
libepoxy-dev \
|
||||||
|
libjpeg-turbo-dev \
|
||||||
|
libjpeg-turbo-static \
|
||||||
|
libpciaccess-dev \
|
||||||
|
libtool \
|
||||||
|
libwebp-dev \
|
||||||
|
libx11-dev \
|
||||||
|
libxau-dev \
|
||||||
|
libxcb-dev \
|
||||||
|
libxcursor-dev \
|
||||||
|
libxcvt-dev \
|
||||||
|
libxdmcp-dev \
|
||||||
|
libxext-dev \
|
||||||
|
libxfont2-dev \
|
||||||
|
libxkbfile-dev \
|
||||||
|
libxrandr-dev \
|
||||||
|
libxshmfence-dev \
|
||||||
|
libxtst-dev \
|
||||||
|
mesa-dev \
|
||||||
|
mesa-dri-gallium \
|
||||||
|
meson \
|
||||||
|
nettle-dev \
|
||||||
|
openssl-dev \
|
||||||
|
pixman-dev \
|
||||||
|
procps \
|
||||||
|
shadow \
|
||||||
|
tar \
|
||||||
|
tzdata \
|
||||||
|
wayland-dev \
|
||||||
|
wayland-protocols \
|
||||||
|
xcb-util-dev \
|
||||||
|
xcb-util-image-dev \
|
||||||
|
xcb-util-keysyms-dev \
|
||||||
|
xcb-util-renderutil-dev \
|
||||||
|
xcb-util-wm-dev \
|
||||||
|
xinit \
|
||||||
|
xkbcomp \
|
||||||
|
xkbcomp-dev \
|
||||||
|
xkeyboard-config \
|
||||||
|
xorgproto \
|
||||||
|
xorg-server-common \
|
||||||
|
xorg-server-dev \
|
||||||
|
xtrans
|
||||||
|
|
||||||
|
|
||||||
|
ENV SCRIPTS_DIR=/tmp/scripts
|
||||||
|
COPY builder/scripts $SCRIPTS_DIR
|
||||||
|
RUN $SCRIPTS_DIR/build-webp
|
||||||
|
RUN $SCRIPTS_DIR/build-libjpeg-turbo
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
COPY --chown=docker:docker . /src/
|
||||||
|
|
||||||
|
USER docker
|
||||||
|
ENTRYPOINT ["/src/builder/build.sh"]
|
@ -1,18 +1,20 @@
|
|||||||
FROM centos:centos7
|
FROM centos:centos7
|
||||||
|
|
||||||
|
ENV STARTUPDIR=/dockerstartup
|
||||||
|
|
||||||
RUN yum install -y xterm
|
RUN yum install -y xterm
|
||||||
RUN yum install -y vim less
|
RUN yum install -y vim less
|
||||||
RUN yum install -y redhat-lsb-core
|
RUN yum install -y redhat-lsb-core
|
||||||
|
RUN yum install -y epel-release
|
||||||
|
|
||||||
ARG KASMVNC_PACKAGE_DIR
|
ARG KASMVNC_PACKAGE_DIR
|
||||||
COPY $KASMVNC_PACKAGE_DIR/*.rpm /tmp
|
COPY $KASMVNC_PACKAGE_DIR/*.rpm /tmp/
|
||||||
RUN yum localinstall -y /tmp/*.rpm
|
RUN yum localinstall -y /tmp/*.rpm
|
||||||
|
|
||||||
RUN useradd -m foo
|
RUN mkdir -p $STARTUPDIR
|
||||||
|
COPY startup/vnc_startup_barebones.sh $STARTUPDIR
|
||||||
|
|
||||||
|
RUN useradd -m foo
|
||||||
USER foo:kasmvnc-cert
|
USER foo:kasmvnc-cert
|
||||||
|
|
||||||
RUN mkdir ~/.vnc && echo '/usr/bin/xterm &' >> ~/.vnc/xstartup && \
|
ENTRYPOINT "/$STARTUPDIR/vnc_startup_barebones.sh"
|
||||||
chmod +x ~/.vnc/xstartup
|
|
||||||
|
|
||||||
ENTRYPOINT bash -c "echo -e \"$VNC_PW\n$VNC_PW\n\" | kasmvncpasswd -w -u \"$VNC_USER\" && vncserver :1 -interface 0.0.0.0 && vncserver -kill :1 && vncserver :1 -depth 24 -geometry 1280x1050 -websocketPort 8443 -cert /etc/pki/tls/private/kasmvnc.pem -sslOnly -FrameRate=24 -interface 0.0.0.0 -httpd /usr/share/kasmvnc/www && tail -f $HOME/.vnc/*.log "
|
|
||||||
|
@ -0,0 +1,38 @@
|
|||||||
|
FROM debian:bookworm-slim
|
||||||
|
|
||||||
|
ENV KASMVNC_BUILD_OS debian
|
||||||
|
ENV KASMVNC_BUILD_OS_CODENAME bookworm
|
||||||
|
ENV XORG_VER 21.1.7
|
||||||
|
ENV DEBIAN_FRONTEND noninteractive
|
||||||
|
|
||||||
|
RUN \
|
||||||
|
echo "**** add all sources ****" && \
|
||||||
|
echo "deb http://deb.debian.org/debian bookworm main contrib non-free non-free-firmware" > /etc/apt/sources.list && \
|
||||||
|
echo "deb-src http://deb.debian.org/debian bookworm main contrib non-free non-free-firmware" >> /etc/apt/sources.list && \
|
||||||
|
echo "deb http://deb.debian.org/debian bookworm-updates main contrib non-free non-free-firmware" >> /etc/apt/sources.list && \
|
||||||
|
echo "deb-src http://deb.debian.org/debian bookworm-updates main contrib non-free non-free-firmware" >> /etc/apt/sources.list && \
|
||||||
|
echo "deb http://deb.debian.org/debian bookworm-backports main contrib non-free non-free-firmware" >> /etc/apt/sources.list && \
|
||||||
|
echo "deb-src http://deb.debian.org/debian bookworm-backports main contrib non-free non-free-firmware" >> /etc/apt/sources.list && \
|
||||||
|
echo "deb http://security.debian.org/debian-security/ bookworm-security main contrib non-free non-free-firmware" >> /etc/apt/sources.list && \
|
||||||
|
echo "deb-src http://security.debian.org/debian-security/ bookworm-security main contrib non-free non-free-firmware" >> /etc/apt/sources.list && \
|
||||||
|
rm -f /etc/apt/sources.list.d/debian.sources
|
||||||
|
|
||||||
|
RUN apt-get update && \
|
||||||
|
apt-get -y install sudo
|
||||||
|
|
||||||
|
RUN DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends tzdata
|
||||||
|
RUN apt-get update && apt-get -y build-dep xorg-server libxfont-dev
|
||||||
|
RUN apt-get update && apt-get -y install cmake git libgnutls28-dev vim wget tightvncserver curl
|
||||||
|
RUN apt-get update && apt-get -y install libpng-dev libtiff-dev libgif-dev libavcodec-dev libssl-dev libxrandr-dev libxcursor-dev
|
||||||
|
|
||||||
|
ENV SCRIPTS_DIR=/tmp/scripts
|
||||||
|
COPY builder/scripts $SCRIPTS_DIR
|
||||||
|
RUN $SCRIPTS_DIR/build-webp
|
||||||
|
RUN $SCRIPTS_DIR/build-libjpeg-turbo
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd && adduser docker sudo
|
||||||
|
|
||||||
|
COPY --chown=docker:docker . /src/
|
||||||
|
|
||||||
|
USER docker
|
||||||
|
ENTRYPOINT ["/src/builder/build.sh"]
|
@ -1,18 +1,14 @@
|
|||||||
FROM ubuntu:bionic
|
FROM debian:bookworm
|
||||||
|
|
||||||
|
ENV DEBIAN_FRONTEND noninteractive
|
||||||
|
|
||||||
RUN apt-get update && \
|
RUN apt-get update && \
|
||||||
apt-get -y install vim build-essential devscripts equivs
|
apt-get -y install vim build-essential devscripts equivs
|
||||||
|
|
||||||
ARG KASMVNC_PACKAGE_DIR
|
|
||||||
COPY $KASMVNC_PACKAGE_DIR/libjpeg-turbo*deb /tmp
|
|
||||||
RUN apt-get install /tmp/libjpeg-turbo*deb
|
|
||||||
|
|
||||||
# Install build-deps for the package.
|
# Install build-deps for the package.
|
||||||
COPY ./debian/control /tmp
|
COPY ./debian/control /tmp
|
||||||
RUN apt-get update && echo YYY | mk-build-deps --install --remove /tmp/control
|
RUN apt-get update && echo YYY | mk-build-deps --install --remove /tmp/control
|
||||||
|
|
||||||
ENV LD_LIBRARY_PATH="/opt/libjpeg-turbo/lib64/:$LD_LIBRARY_PATH"
|
|
||||||
|
|
||||||
ARG L_UID
|
ARG L_UID
|
||||||
RUN if [ "$L_UID" -eq 0 ]; then \
|
RUN if [ "$L_UID" -eq 0 ]; then \
|
||||||
useradd -m docker; \
|
useradd -m docker; \
|
@ -0,0 +1,57 @@
|
|||||||
|
FROM debian:bookworm-slim
|
||||||
|
|
||||||
|
ENV DISPLAY=:1 \
|
||||||
|
VNC_PORT=8443 \
|
||||||
|
VNC_RESOLUTION=1280x720 \
|
||||||
|
MAX_FRAME_RATE=24 \
|
||||||
|
VNCOPTIONS="-PreferBandwidth -DynamicQualityMin=4 -DynamicQualityMax=7" \
|
||||||
|
HOME=/home/user \
|
||||||
|
TERM=xterm \
|
||||||
|
STARTUPDIR=/dockerstartup \
|
||||||
|
INST_SCRIPTS=/dockerstartup/install \
|
||||||
|
KASM_RX_HOME=/dockerstartup/kasmrx \
|
||||||
|
DEBIAN_FRONTEND=noninteractive \
|
||||||
|
VNC_COL_DEPTH=24 \
|
||||||
|
VNC_RESOLUTION=1280x1024 \
|
||||||
|
VNC_PW=vncpassword \
|
||||||
|
VNC_USER=user \
|
||||||
|
VNC_VIEW_ONLY_PW=vncviewonlypassword \
|
||||||
|
LD_LIBRARY_PATH=/usr/local/lib/ \
|
||||||
|
OMP_WAIT_POLICY=PASSIVE \
|
||||||
|
SHELL=/bin/bash \
|
||||||
|
SINGLE_APPLICATION=0 \
|
||||||
|
KASMVNC_BUILD_OS=debian \
|
||||||
|
KASMVNC_BUILD_OS_CODENAME=buster
|
||||||
|
|
||||||
|
EXPOSE $VNC_PORT
|
||||||
|
|
||||||
|
WORKDIR $HOME
|
||||||
|
|
||||||
|
### REQUIRED STUFF ###
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y supervisor xfce4 xfce4-terminal dbus-x11 xterm libnss-wrapper gettext wget
|
||||||
|
RUN apt-get purge -y pm-utils xscreensaver*
|
||||||
|
RUN apt-get update && apt-get install -y vim less
|
||||||
|
RUN apt-get update && apt-get -y install lsb-release
|
||||||
|
|
||||||
|
RUN echo 'source $STARTUPDIR/generate_container_user' >> $HOME/.bashrc
|
||||||
|
|
||||||
|
RUN mkdir -p $STARTUPDIR
|
||||||
|
COPY builder/startup/ $STARTUPDIR
|
||||||
|
|
||||||
|
### START CUSTOM STUFF ####
|
||||||
|
|
||||||
|
COPY ./builder/scripts/ /tmp/scripts/
|
||||||
|
COPY ./debian/changelog /tmp
|
||||||
|
|
||||||
|
ARG KASMVNC_PACKAGE_DIR
|
||||||
|
COPY $KASMVNC_PACKAGE_DIR/kasmvncserver_*.deb /tmp/
|
||||||
|
RUN /tmp/scripts/install_kasmvncserver_package
|
||||||
|
|
||||||
|
### END CUSTOM STUFF ###
|
||||||
|
|
||||||
|
RUN chown -R 1000:0 $HOME
|
||||||
|
USER 1000:ssl-cert
|
||||||
|
WORKDIR $HOME
|
||||||
|
|
||||||
|
ENTRYPOINT [ "/dockerstartup/vnc_startup.sh" ]
|
@ -1,19 +1,19 @@
|
|||||||
FROM debian:buster-slim
|
FROM debian:buster-slim
|
||||||
|
|
||||||
|
ENV STARTUPDIR=/dockerstartup
|
||||||
|
|
||||||
|
COPY ./builder/scripts/ /tmp/scripts/
|
||||||
|
COPY ./debian/changelog /tmp
|
||||||
|
|
||||||
ARG KASMVNC_PACKAGE_DIR
|
ARG KASMVNC_PACKAGE_DIR
|
||||||
COPY $KASMVNC_PACKAGE_DIR/kasmvncserver_*.deb /tmp/
|
COPY $KASMVNC_PACKAGE_DIR/kasmvncserver_*.deb /tmp/
|
||||||
RUN rm -f /tmp/kasmvncserver_*+*.deb; apt-get update && dpkg -i /tmp/*.deb; apt-get -yf install
|
RUN /tmp/scripts/install_kasmvncserver_package
|
||||||
RUN apt-get update && apt-get -y install xterm
|
RUN apt-get update && apt-get -y install xterm
|
||||||
|
|
||||||
COPY startup/deb/kasmvncserver-easy-start /usr/local/bin
|
RUN mkdir -p $STARTUPDIR
|
||||||
|
COPY builder/startup/vnc_startup_barebones.sh $STARTUPDIR
|
||||||
|
|
||||||
RUN useradd -m foo
|
RUN useradd -m foo
|
||||||
|
|
||||||
USER foo:ssl-cert
|
USER foo:ssl-cert
|
||||||
|
|
||||||
RUN mkdir ~/.vnc && echo '/usr/bin/xterm &' >> ~/.vnc/xstartup && \
|
ENTRYPOINT "/$STARTUPDIR/vnc_startup_barebones.sh"
|
||||||
chmod +x ~/.vnc/xstartup
|
|
||||||
|
|
||||||
ENTRYPOINT bash -c "echo -e \"$VNC_PW\n$VNC_PW\n\" | \
|
|
||||||
kasmvncpasswd -w -u $VNC_USER $HOME/.kasmpasswd && \
|
|
||||||
kasmvncserver-easy-start && tail -f $HOME/.vnc/*.log"
|
|
||||||
|
@ -0,0 +1,86 @@
|
|||||||
|
FROM fedora:40
|
||||||
|
|
||||||
|
ENV KASMVNC_BUILD_OS fedora
|
||||||
|
ENV KASMVNC_BUILD_OS_CODENAME forty
|
||||||
|
ENV XORG_VER 1.20.14
|
||||||
|
|
||||||
|
RUN \
|
||||||
|
echo "**** install build deps ****" && \
|
||||||
|
dnf group install -y \
|
||||||
|
"C Development Tools and Libraries" \
|
||||||
|
"Development Tools" && \
|
||||||
|
dnf install -y \
|
||||||
|
autoconf \
|
||||||
|
automake \
|
||||||
|
bison \
|
||||||
|
byacc \
|
||||||
|
bzip2 \
|
||||||
|
cmake \
|
||||||
|
diffutils \
|
||||||
|
doxygen \
|
||||||
|
file \
|
||||||
|
flex \
|
||||||
|
fop \
|
||||||
|
gcc \
|
||||||
|
gcc-c++ \
|
||||||
|
git \
|
||||||
|
glibc-devel \
|
||||||
|
libdrm-devel \
|
||||||
|
libepoxy-devel \
|
||||||
|
libmd-devel \
|
||||||
|
libpciaccess-devel \
|
||||||
|
libtool \
|
||||||
|
libwebp-devel \
|
||||||
|
libX11-devel \
|
||||||
|
libXau-devel \
|
||||||
|
libxcb-devel \
|
||||||
|
libXcursor-devel \
|
||||||
|
libxcvt-devel \
|
||||||
|
libXdmcp-devel \
|
||||||
|
libXext-devel \
|
||||||
|
libXfont2-devel \
|
||||||
|
libxkbfile-devel \
|
||||||
|
libXrandr-devel \
|
||||||
|
libxshmfence-devel \
|
||||||
|
libXtst-devel \
|
||||||
|
mesa-libEGL-devel \
|
||||||
|
mesa-libgbm-devel \
|
||||||
|
mesa-libGL-devel \
|
||||||
|
meson \
|
||||||
|
mingw64-binutils \
|
||||||
|
mt-st \
|
||||||
|
nettle-devel \
|
||||||
|
openssl-devel \
|
||||||
|
patch \
|
||||||
|
pixman-devel \
|
||||||
|
wayland-devel \
|
||||||
|
wget \
|
||||||
|
which \
|
||||||
|
xcb-util-devel \
|
||||||
|
xcb-util-image-devel \
|
||||||
|
xcb-util-keysyms-devel \
|
||||||
|
xcb-util-renderutil-devel \
|
||||||
|
xcb-util-wm-devel \
|
||||||
|
xinit \
|
||||||
|
xkbcomp \
|
||||||
|
xkbcomp-devel \
|
||||||
|
xkeyboard-config \
|
||||||
|
xmlto \
|
||||||
|
xorg-x11-font-utils \
|
||||||
|
xorg-x11-proto-devel \
|
||||||
|
xorg-x11-server-common \
|
||||||
|
xorg-x11-server-devel \
|
||||||
|
xorg-x11-xtrans-devel \
|
||||||
|
xsltproc
|
||||||
|
|
||||||
|
ENV SCRIPTS_DIR=/tmp/scripts
|
||||||
|
COPY builder/scripts $SCRIPTS_DIR
|
||||||
|
RUN $SCRIPTS_DIR/build-webp
|
||||||
|
RUN $SCRIPTS_DIR/build-libjpeg-turbo
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
COPY --chown=docker:docker . /src/
|
||||||
|
|
||||||
|
USER docker
|
||||||
|
ENTRYPOINT ["/src/builder/build.sh"]
|
@ -1,11 +1,11 @@
|
|||||||
FROM fedora:33
|
FROM fedora:40
|
||||||
|
|
||||||
RUN dnf install -y fedora-packager fedora-review
|
RUN dnf install -y fedora-packager fedora-review
|
||||||
RUN dnf install -y tree vim less
|
RUN dnf install -y tree vim less
|
||||||
RUN dnf install -y redhat-lsb-core
|
RUN dnf install -y redhat-lsb-core
|
||||||
RUN dnf install -y dnf-plugins-core
|
RUN dnf install -y dnf-plugins-core
|
||||||
|
|
||||||
COPY centos/*.spec /tmp
|
COPY fedora/*.spec /tmp
|
||||||
RUN dnf builddep -y /tmp/*.spec
|
RUN dnf builddep -y /tmp/*.spec
|
||||||
|
|
||||||
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
@ -0,0 +1,87 @@
|
|||||||
|
FROM fedora:41
|
||||||
|
|
||||||
|
ENV KASMVNC_BUILD_OS fedora
|
||||||
|
ENV KASMVNC_BUILD_OS_CODENAME fortyone
|
||||||
|
ENV XORG_VER 21.1.15
|
||||||
|
|
||||||
|
RUN \
|
||||||
|
echo "**** install build deps ****" && \
|
||||||
|
dnf group install -y \
|
||||||
|
c-development \
|
||||||
|
development-tools \
|
||||||
|
development-libs && \
|
||||||
|
dnf install -y \
|
||||||
|
autoconf \
|
||||||
|
automake \
|
||||||
|
bison \
|
||||||
|
byacc \
|
||||||
|
bzip2 \
|
||||||
|
cmake \
|
||||||
|
diffutils \
|
||||||
|
doxygen \
|
||||||
|
file \
|
||||||
|
flex \
|
||||||
|
fop \
|
||||||
|
gcc \
|
||||||
|
gcc-c++ \
|
||||||
|
git \
|
||||||
|
glibc-devel \
|
||||||
|
libdrm-devel \
|
||||||
|
libepoxy-devel \
|
||||||
|
libmd-devel \
|
||||||
|
libpciaccess-devel \
|
||||||
|
libtool \
|
||||||
|
libwebp-devel \
|
||||||
|
libX11-devel \
|
||||||
|
libXau-devel \
|
||||||
|
libxcb-devel \
|
||||||
|
libXcursor-devel \
|
||||||
|
libxcvt-devel \
|
||||||
|
libXdmcp-devel \
|
||||||
|
libXext-devel \
|
||||||
|
libXfont2-devel \
|
||||||
|
libxkbfile-devel \
|
||||||
|
libXrandr-devel \
|
||||||
|
libxshmfence-devel \
|
||||||
|
libXtst-devel \
|
||||||
|
mesa-libEGL-devel \
|
||||||
|
mesa-libgbm-devel \
|
||||||
|
mesa-libGL-devel \
|
||||||
|
meson \
|
||||||
|
mingw64-binutils \
|
||||||
|
mt-st \
|
||||||
|
nettle-devel \
|
||||||
|
openssl-devel \
|
||||||
|
patch \
|
||||||
|
pixman-devel \
|
||||||
|
wayland-devel \
|
||||||
|
wget \
|
||||||
|
which \
|
||||||
|
xcb-util-devel \
|
||||||
|
xcb-util-image-devel \
|
||||||
|
xcb-util-keysyms-devel \
|
||||||
|
xcb-util-renderutil-devel \
|
||||||
|
xcb-util-wm-devel \
|
||||||
|
xinit \
|
||||||
|
xkbcomp \
|
||||||
|
xkbcomp-devel \
|
||||||
|
xkeyboard-config \
|
||||||
|
xmlto \
|
||||||
|
xorg-x11-font-utils \
|
||||||
|
xorg-x11-proto-devel \
|
||||||
|
xorg-x11-server-common \
|
||||||
|
xorg-x11-server-devel \
|
||||||
|
xorg-x11-xtrans-devel \
|
||||||
|
xsltproc
|
||||||
|
|
||||||
|
ENV SCRIPTS_DIR=/tmp/scripts
|
||||||
|
COPY builder/scripts $SCRIPTS_DIR
|
||||||
|
RUN $SCRIPTS_DIR/build-webp
|
||||||
|
RUN $SCRIPTS_DIR/build-libjpeg-turbo
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
COPY --chown=docker:docker . /src/
|
||||||
|
|
||||||
|
USER docker
|
||||||
|
ENTRYPOINT ["/src/builder/build.sh"]
|
@ -0,0 +1,13 @@
|
|||||||
|
FROM fedora:41
|
||||||
|
|
||||||
|
RUN dnf install -y fedora-packager fedora-review
|
||||||
|
RUN dnf install -y tree vim less
|
||||||
|
RUN dnf install -y redhat-lsb-core
|
||||||
|
RUN dnf install -y dnf-plugins-core
|
||||||
|
|
||||||
|
COPY fedora/*.spec /tmp
|
||||||
|
RUN dnf builddep -y /tmp/*.spec
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
USER docker
|
@ -0,0 +1,19 @@
|
|||||||
|
FROM fedora:38
|
||||||
|
|
||||||
|
ENV STARTUPDIR=/dockerstartup
|
||||||
|
|
||||||
|
RUN dnf install -y xterm
|
||||||
|
RUN dnf install -y vim less
|
||||||
|
RUN yum install -y redhat-lsb-core
|
||||||
|
|
||||||
|
ARG KASMVNC_PACKAGE_DIR
|
||||||
|
COPY $KASMVNC_PACKAGE_DIR/*.rpm /tmp/
|
||||||
|
RUN dnf localinstall -y /tmp/*.rpm
|
||||||
|
|
||||||
|
RUN mkdir -p $STARTUPDIR
|
||||||
|
COPY startup/vnc_startup_barebones.sh $STARTUPDIR
|
||||||
|
|
||||||
|
RUN useradd -m foo
|
||||||
|
USER foo:kasmvnc-cert
|
||||||
|
|
||||||
|
ENTRYPOINT "/$STARTUPDIR/vnc_startup_barebones.sh"
|
@ -0,0 +1,86 @@
|
|||||||
|
FROM fedora:38
|
||||||
|
|
||||||
|
ENV KASMVNC_BUILD_OS fedora
|
||||||
|
ENV KASMVNC_BUILD_OS_CODENAME thirtyeight
|
||||||
|
ENV XORG_VER 1.20.14
|
||||||
|
|
||||||
|
RUN \
|
||||||
|
echo "**** install build deps ****" && \
|
||||||
|
dnf group install -y \
|
||||||
|
"C Development Tools and Libraries" \
|
||||||
|
"Development Tools" && \
|
||||||
|
dnf install -y \
|
||||||
|
autoconf \
|
||||||
|
automake \
|
||||||
|
bison \
|
||||||
|
byacc \
|
||||||
|
bzip2 \
|
||||||
|
cmake \
|
||||||
|
diffutils \
|
||||||
|
doxygen \
|
||||||
|
file \
|
||||||
|
flex \
|
||||||
|
fop \
|
||||||
|
gcc \
|
||||||
|
gcc-c++ \
|
||||||
|
git \
|
||||||
|
glibc-devel \
|
||||||
|
libdrm-devel \
|
||||||
|
libepoxy-devel \
|
||||||
|
libmd-devel \
|
||||||
|
libpciaccess-devel \
|
||||||
|
libtool \
|
||||||
|
libwebp-devel \
|
||||||
|
libX11-devel \
|
||||||
|
libXau-devel \
|
||||||
|
libxcb-devel \
|
||||||
|
libXcursor-devel \
|
||||||
|
libxcvt-devel \
|
||||||
|
libXdmcp-devel \
|
||||||
|
libXext-devel \
|
||||||
|
libXfont2-devel \
|
||||||
|
libxkbfile-devel \
|
||||||
|
libXrandr-devel \
|
||||||
|
libxshmfence-devel \
|
||||||
|
libXtst-devel \
|
||||||
|
mesa-libEGL-devel \
|
||||||
|
mesa-libgbm-devel \
|
||||||
|
mesa-libGL-devel \
|
||||||
|
meson \
|
||||||
|
mingw64-binutils \
|
||||||
|
mt-st \
|
||||||
|
nettle-devel \
|
||||||
|
openssl-devel \
|
||||||
|
patch \
|
||||||
|
pixman-devel \
|
||||||
|
wayland-devel \
|
||||||
|
wget \
|
||||||
|
which \
|
||||||
|
xcb-util-devel \
|
||||||
|
xcb-util-image-devel \
|
||||||
|
xcb-util-keysyms-devel \
|
||||||
|
xcb-util-renderutil-devel \
|
||||||
|
xcb-util-wm-devel \
|
||||||
|
xinit \
|
||||||
|
xkbcomp \
|
||||||
|
xkbcomp-devel \
|
||||||
|
xkeyboard-config \
|
||||||
|
xmlto \
|
||||||
|
xorg-x11-font-utils \
|
||||||
|
xorg-x11-proto-devel \
|
||||||
|
xorg-x11-server-common \
|
||||||
|
xorg-x11-server-devel \
|
||||||
|
xorg-x11-xtrans-devel \
|
||||||
|
xsltproc
|
||||||
|
|
||||||
|
ENV SCRIPTS_DIR=/tmp/scripts
|
||||||
|
COPY builder/scripts $SCRIPTS_DIR
|
||||||
|
RUN $SCRIPTS_DIR/build-webp
|
||||||
|
RUN $SCRIPTS_DIR/build-libjpeg-turbo
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
COPY --chown=docker:docker . /src/
|
||||||
|
|
||||||
|
USER docker
|
||||||
|
ENTRYPOINT ["/src/builder/build.sh"]
|
@ -0,0 +1,13 @@
|
|||||||
|
FROM fedora:38
|
||||||
|
|
||||||
|
RUN dnf install -y fedora-packager fedora-review
|
||||||
|
RUN dnf install -y tree vim less
|
||||||
|
RUN dnf install -y redhat-lsb-core
|
||||||
|
RUN dnf install -y dnf-plugins-core
|
||||||
|
|
||||||
|
COPY fedora/*.spec /tmp
|
||||||
|
RUN dnf builddep -y /tmp/*.spec
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
USER docker
|
@ -0,0 +1,86 @@
|
|||||||
|
FROM fedora:39
|
||||||
|
|
||||||
|
ENV KASMVNC_BUILD_OS fedora
|
||||||
|
ENV KASMVNC_BUILD_OS_CODENAME thirtynine
|
||||||
|
ENV XORG_VER 1.20.14
|
||||||
|
|
||||||
|
RUN \
|
||||||
|
echo "**** install build deps ****" && \
|
||||||
|
dnf group install -y \
|
||||||
|
"C Development Tools and Libraries" \
|
||||||
|
"Development Tools" && \
|
||||||
|
dnf install -y \
|
||||||
|
autoconf \
|
||||||
|
automake \
|
||||||
|
bison \
|
||||||
|
byacc \
|
||||||
|
bzip2 \
|
||||||
|
cmake \
|
||||||
|
diffutils \
|
||||||
|
doxygen \
|
||||||
|
file \
|
||||||
|
flex \
|
||||||
|
fop \
|
||||||
|
gcc \
|
||||||
|
gcc-c++ \
|
||||||
|
git \
|
||||||
|
glibc-devel \
|
||||||
|
libdrm-devel \
|
||||||
|
libepoxy-devel \
|
||||||
|
libmd-devel \
|
||||||
|
libpciaccess-devel \
|
||||||
|
libtool \
|
||||||
|
libwebp-devel \
|
||||||
|
libX11-devel \
|
||||||
|
libXau-devel \
|
||||||
|
libxcb-devel \
|
||||||
|
libXcursor-devel \
|
||||||
|
libxcvt-devel \
|
||||||
|
libXdmcp-devel \
|
||||||
|
libXext-devel \
|
||||||
|
libXfont2-devel \
|
||||||
|
libxkbfile-devel \
|
||||||
|
libXrandr-devel \
|
||||||
|
libxshmfence-devel \
|
||||||
|
libXtst-devel \
|
||||||
|
mesa-libEGL-devel \
|
||||||
|
mesa-libgbm-devel \
|
||||||
|
mesa-libGL-devel \
|
||||||
|
meson \
|
||||||
|
mingw64-binutils \
|
||||||
|
mt-st \
|
||||||
|
nettle-devel \
|
||||||
|
openssl-devel \
|
||||||
|
patch \
|
||||||
|
pixman-devel \
|
||||||
|
wayland-devel \
|
||||||
|
wget \
|
||||||
|
which \
|
||||||
|
xcb-util-devel \
|
||||||
|
xcb-util-image-devel \
|
||||||
|
xcb-util-keysyms-devel \
|
||||||
|
xcb-util-renderutil-devel \
|
||||||
|
xcb-util-wm-devel \
|
||||||
|
xinit \
|
||||||
|
xkbcomp \
|
||||||
|
xkbcomp-devel \
|
||||||
|
xkeyboard-config \
|
||||||
|
xmlto \
|
||||||
|
xorg-x11-font-utils \
|
||||||
|
xorg-x11-proto-devel \
|
||||||
|
xorg-x11-server-common \
|
||||||
|
xorg-x11-server-devel \
|
||||||
|
xorg-x11-xtrans-devel \
|
||||||
|
xsltproc
|
||||||
|
|
||||||
|
ENV SCRIPTS_DIR=/tmp/scripts
|
||||||
|
COPY builder/scripts $SCRIPTS_DIR
|
||||||
|
RUN $SCRIPTS_DIR/build-webp
|
||||||
|
RUN $SCRIPTS_DIR/build-libjpeg-turbo
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
COPY --chown=docker:docker . /src/
|
||||||
|
|
||||||
|
USER docker
|
||||||
|
ENTRYPOINT ["/src/builder/build.sh"]
|
@ -0,0 +1,13 @@
|
|||||||
|
FROM fedora:39
|
||||||
|
|
||||||
|
RUN dnf install -y fedora-packager fedora-review
|
||||||
|
RUN dnf install -y tree vim less
|
||||||
|
RUN dnf install -y redhat-lsb-core
|
||||||
|
RUN dnf install -y dnf-plugins-core
|
||||||
|
|
||||||
|
COPY fedora/*.spec /tmp
|
||||||
|
RUN dnf builddep -y /tmp/*.spec
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
USER docker
|
@ -0,0 +1,19 @@
|
|||||||
|
FROM fedora:37
|
||||||
|
|
||||||
|
ENV STARTUPDIR=/dockerstartup
|
||||||
|
|
||||||
|
RUN dnf install -y xterm
|
||||||
|
RUN dnf install -y vim less
|
||||||
|
RUN yum install -y redhat-lsb-core
|
||||||
|
|
||||||
|
ARG KASMVNC_PACKAGE_DIR
|
||||||
|
COPY $KASMVNC_PACKAGE_DIR/*.rpm /tmp/
|
||||||
|
RUN dnf localinstall -y /tmp/*.rpm
|
||||||
|
|
||||||
|
RUN mkdir -p $STARTUPDIR
|
||||||
|
COPY startup/vnc_startup_barebones.sh $STARTUPDIR
|
||||||
|
|
||||||
|
RUN useradd -m foo
|
||||||
|
USER foo:kasmvnc-cert
|
||||||
|
|
||||||
|
ENTRYPOINT "/$STARTUPDIR/vnc_startup_barebones.sh"
|
@ -0,0 +1,86 @@
|
|||||||
|
FROM fedora:37
|
||||||
|
|
||||||
|
ENV KASMVNC_BUILD_OS fedora
|
||||||
|
ENV KASMVNC_BUILD_OS_CODENAME thirtyseven
|
||||||
|
ENV XORG_VER 1.20.14
|
||||||
|
|
||||||
|
RUN \
|
||||||
|
echo "**** install build deps ****" && \
|
||||||
|
dnf group install -y \
|
||||||
|
"C Development Tools and Libraries" \
|
||||||
|
"Development Tools" && \
|
||||||
|
dnf install -y \
|
||||||
|
autoconf \
|
||||||
|
automake \
|
||||||
|
bison \
|
||||||
|
byacc \
|
||||||
|
bzip2 \
|
||||||
|
cmake \
|
||||||
|
diffutils \
|
||||||
|
doxygen \
|
||||||
|
file \
|
||||||
|
flex \
|
||||||
|
fop \
|
||||||
|
gcc \
|
||||||
|
gcc-c++ \
|
||||||
|
git \
|
||||||
|
glibc-devel \
|
||||||
|
libdrm-devel \
|
||||||
|
libepoxy-devel \
|
||||||
|
libmd-devel \
|
||||||
|
libpciaccess-devel \
|
||||||
|
libtool \
|
||||||
|
libwebp-devel \
|
||||||
|
libX11-devel \
|
||||||
|
libXau-devel \
|
||||||
|
libxcb-devel \
|
||||||
|
libXcursor-devel \
|
||||||
|
libxcvt-devel \
|
||||||
|
libXdmcp-devel \
|
||||||
|
libXext-devel \
|
||||||
|
libXfont2-devel \
|
||||||
|
libxkbfile-devel \
|
||||||
|
libXrandr-devel \
|
||||||
|
libxshmfence-devel \
|
||||||
|
libXtst-devel \
|
||||||
|
mesa-libEGL-devel \
|
||||||
|
mesa-libgbm-devel \
|
||||||
|
mesa-libGL-devel \
|
||||||
|
meson \
|
||||||
|
mingw64-binutils \
|
||||||
|
mt-st \
|
||||||
|
nettle-devel \
|
||||||
|
openssl-devel \
|
||||||
|
patch \
|
||||||
|
pixman-devel \
|
||||||
|
wayland-devel \
|
||||||
|
wget \
|
||||||
|
which \
|
||||||
|
xcb-util-devel \
|
||||||
|
xcb-util-image-devel \
|
||||||
|
xcb-util-keysyms-devel \
|
||||||
|
xcb-util-renderutil-devel \
|
||||||
|
xcb-util-wm-devel \
|
||||||
|
xinit \
|
||||||
|
xkbcomp \
|
||||||
|
xkbcomp-devel \
|
||||||
|
xkeyboard-config \
|
||||||
|
xmlto \
|
||||||
|
xorg-x11-font-utils \
|
||||||
|
xorg-x11-proto-devel \
|
||||||
|
xorg-x11-server-common \
|
||||||
|
xorg-x11-server-devel \
|
||||||
|
xorg-x11-xtrans-devel \
|
||||||
|
xsltproc
|
||||||
|
|
||||||
|
ENV SCRIPTS_DIR=/tmp/scripts
|
||||||
|
COPY builder/scripts $SCRIPTS_DIR
|
||||||
|
RUN $SCRIPTS_DIR/build-webp
|
||||||
|
RUN $SCRIPTS_DIR/build-libjpeg-turbo
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
COPY --chown=docker:docker . /src/
|
||||||
|
|
||||||
|
USER docker
|
||||||
|
ENTRYPOINT ["/src/builder/build.sh"]
|
@ -0,0 +1,13 @@
|
|||||||
|
FROM fedora:37
|
||||||
|
|
||||||
|
RUN dnf install -y fedora-packager fedora-review
|
||||||
|
RUN dnf install -y tree vim less
|
||||||
|
RUN dnf install -y redhat-lsb-core
|
||||||
|
RUN dnf install -y dnf-plugins-core
|
||||||
|
|
||||||
|
COPY fedora/*.spec /tmp
|
||||||
|
RUN dnf builddep -y /tmp/*.spec
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
USER docker
|
@ -0,0 +1,62 @@
|
|||||||
|
FROM fedora:37
|
||||||
|
|
||||||
|
ENV DISPLAY=:1 \
|
||||||
|
VNC_PORT=8443 \
|
||||||
|
VNC_RESOLUTION=1280x720 \
|
||||||
|
MAX_FRAME_RATE=24 \
|
||||||
|
VNCOPTIONS="-PreferBandwidth -DynamicQualityMin=4 -DynamicQualityMax=7" \
|
||||||
|
HOME=/home/user \
|
||||||
|
TERM=xterm \
|
||||||
|
STARTUPDIR=/dockerstartup \
|
||||||
|
INST_SCRIPTS=/dockerstartup/install \
|
||||||
|
KASM_RX_HOME=/dockerstartup/kasmrx \
|
||||||
|
DEBIAN_FRONTEND=noninteractive \
|
||||||
|
VNC_COL_DEPTH=24 \
|
||||||
|
VNC_RESOLUTION=1280x1024 \
|
||||||
|
VNC_PW=vncpassword \
|
||||||
|
VNC_USER=user \
|
||||||
|
VNC_VIEW_ONLY_PW=vncviewonlypassword \
|
||||||
|
LD_LIBRARY_PATH=/usr/local/lib/ \
|
||||||
|
OMP_WAIT_POLICY=PASSIVE \
|
||||||
|
SHELL=/bin/bash \
|
||||||
|
SINGLE_APPLICATION=0 \
|
||||||
|
KASMVNC_BUILD_OS=fedora \
|
||||||
|
KASMVNC_BUILD_OS_CODENAME=thirtythree
|
||||||
|
|
||||||
|
EXPOSE $VNC_PORT
|
||||||
|
|
||||||
|
WORKDIR $HOME
|
||||||
|
|
||||||
|
### REQUIRED STUFF ###
|
||||||
|
|
||||||
|
RUN dnf install -y openssl xterm gettext wget
|
||||||
|
RUN dnf install -y nss_wrapper
|
||||||
|
RUN dnf install -y xorg-x11-xauth xkeyboard-config
|
||||||
|
# xorg-x11-server-Xorg
|
||||||
|
# RUN dnf install -y @xfce-desktop-environment
|
||||||
|
RUN dnf erase -y pm-utils xscreensaver*
|
||||||
|
RUN dnf install -y redhat-lsb-core
|
||||||
|
RUN dnf install -y vim less
|
||||||
|
RUN dnf install -y @xfce-desktop-environment
|
||||||
|
|
||||||
|
RUN echo 'source $STARTUPDIR/generate_container_user' >> $HOME/.bashrc
|
||||||
|
|
||||||
|
RUN mkdir -p $STARTUPDIR
|
||||||
|
COPY builder/startup/ $STARTUPDIR
|
||||||
|
|
||||||
|
### START CUSTOM STUFF ####
|
||||||
|
COPY ./builder/scripts/ /tmp/scripts/
|
||||||
|
COPY ./fedora/kasmvncserver.spec /tmp
|
||||||
|
|
||||||
|
ARG KASMVNC_PACKAGE_DIR
|
||||||
|
COPY $KASMVNC_PACKAGE_DIR/*.rpm /tmp/
|
||||||
|
# RUN dnf remove -y tigervnc-server-minimal
|
||||||
|
RUN /tmp/scripts/install_kasmvncserver_package
|
||||||
|
|
||||||
|
### END CUSTOM STUFF ###
|
||||||
|
|
||||||
|
RUN chown -R 1000:0 $HOME
|
||||||
|
USER 1000:kasmvnc-cert
|
||||||
|
WORKDIR $HOME
|
||||||
|
|
||||||
|
ENTRYPOINT [ "/dockerstartup/vnc_startup.sh" ]
|
@ -1,18 +0,0 @@
|
|||||||
FROM fedora:33
|
|
||||||
|
|
||||||
RUN dnf install -y xterm
|
|
||||||
RUN dnf install -y vim less
|
|
||||||
RUN yum install -y redhat-lsb-core
|
|
||||||
|
|
||||||
ARG KASMVNC_PACKAGE_DIR
|
|
||||||
COPY $KASMVNC_PACKAGE_DIR/*.rpm /tmp
|
|
||||||
RUN dnf localinstall -y /tmp/*.rpm
|
|
||||||
|
|
||||||
RUN useradd -m foo
|
|
||||||
|
|
||||||
USER foo:kasmvnc-cert
|
|
||||||
|
|
||||||
RUN mkdir ~/.vnc && echo '/usr/bin/xterm &' >> ~/.vnc/xstartup && \
|
|
||||||
chmod +x ~/.vnc/xstartup
|
|
||||||
|
|
||||||
ENTRYPOINT bash -c "echo -e \"$VNC_PW\n$VNC_PW\n\" | kasmvncpasswd -w -u \"$VNC_USER\" && vncserver :1 -interface 0.0.0.0 && vncserver -kill :1 && vncserver :1 -depth 24 -geometry 1280x1050 -websocketPort 8443 -cert /etc/pki/tls/private/kasmvnc.pem -sslOnly -FrameRate=24 -interface 0.0.0.0 -httpd /usr/share/kasmvnc/www && tail -f $HOME/.vnc/*.log "
|
|
@ -1,37 +0,0 @@
|
|||||||
FROM fedora:33
|
|
||||||
|
|
||||||
ENV KASMVNC_BUILD_OS fedora
|
|
||||||
ENV KASMVNC_BUILD_OS_CODENAME thirtythree
|
|
||||||
ENV XORG_VER 1.20.10
|
|
||||||
|
|
||||||
# RUN dnf install -y build-dep xorg-server libxfont-dev sudo
|
|
||||||
RUN dnf install -y gcc cmake git gnutls-devel vim wget
|
|
||||||
#tightvncserver
|
|
||||||
RUN dnf install -y libjpeg-turbo-devel libpng-devel libtiff-devel giflib-devel openssl-devel
|
|
||||||
|
|
||||||
#libavcodec-dev
|
|
||||||
RUN dnf -y install https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm
|
|
||||||
RUN dnf -y install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
|
|
||||||
RUN dnf -y install ffmpeg-devel
|
|
||||||
|
|
||||||
RUN dnf install -y make
|
|
||||||
RUN dnf group install -y "Development Tools"
|
|
||||||
RUN dnf install -y xorg-x11-server-devel zlib-devel libjpeg-turbo-devel
|
|
||||||
RUN dnf install -y libxkbfile-devel libXfont2-devel xorg-x11-font-utils \
|
|
||||||
xorg-x11-xtrans-devel xorg-x11-xkb-utils-devel
|
|
||||||
RUN dnf install -y mesa-dri-drivers
|
|
||||||
RUN dnf install -y bzip2 redhat-lsb-core
|
|
||||||
|
|
||||||
# Additions for webp
|
|
||||||
RUN cd /tmp && wget https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-1.0.2.tar.gz
|
|
||||||
RUN cd /tmp && tar -xzf /tmp/libwebp-*
|
|
||||||
RUN cd /tmp/libwebp-1.0.2 && \
|
|
||||||
./configure --enable-static --disable-shared && \
|
|
||||||
make && make install
|
|
||||||
|
|
||||||
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
|
||||||
|
|
||||||
COPY --chown=docker:docker . /src/
|
|
||||||
|
|
||||||
USER docker
|
|
||||||
ENTRYPOINT ["/src/builder/build.sh"]
|
|
@ -0,0 +1,23 @@
|
|||||||
|
FROM opensuse/leap:15.5
|
||||||
|
|
||||||
|
ENV STARTUPDIR=/dockerstartup
|
||||||
|
|
||||||
|
# base tools
|
||||||
|
RUN zypper -n install -y \
|
||||||
|
less \
|
||||||
|
vim \
|
||||||
|
xterm
|
||||||
|
|
||||||
|
# Cache repo updates, so that package changes don't trigger it on every build.
|
||||||
|
RUN zypper refresh
|
||||||
|
ARG KASMVNC_PACKAGE_DIR
|
||||||
|
COPY $KASMVNC_PACKAGE_DIR/*.rpm /tmp
|
||||||
|
RUN zypper install -y --allow-unsigned-rpm /tmp/*.rpm
|
||||||
|
|
||||||
|
RUN mkdir -p $STARTUPDIR
|
||||||
|
COPY startup/vnc_startup_barebones.sh $STARTUPDIR
|
||||||
|
|
||||||
|
RUN useradd -m foo
|
||||||
|
USER foo:kasmvnc-cert
|
||||||
|
|
||||||
|
ENTRYPOINT "/$STARTUPDIR/vnc_startup_barebones.sh"
|
@ -0,0 +1,61 @@
|
|||||||
|
FROM opensuse/leap:15.5
|
||||||
|
|
||||||
|
ENV KASMVNC_BUILD_OS opensuse
|
||||||
|
ENV KASMVNC_BUILD_OS_CODENAME 15
|
||||||
|
ENV XORG_VER 1.20.3
|
||||||
|
|
||||||
|
# Install depends
|
||||||
|
RUN zypper install -ny \
|
||||||
|
bdftopcf \
|
||||||
|
bigreqsproto-devel \
|
||||||
|
cmake \
|
||||||
|
curl \
|
||||||
|
ffmpeg-4-libavcodec-devel \
|
||||||
|
fonttosfnt \
|
||||||
|
font-util \
|
||||||
|
gcc \
|
||||||
|
gcc-c++ \
|
||||||
|
giflib-devel \
|
||||||
|
git \
|
||||||
|
gzip \
|
||||||
|
lbzip2 \
|
||||||
|
libbz2-devel \
|
||||||
|
libgbm-devel \
|
||||||
|
libGLw-devel \
|
||||||
|
libgnutls-devel \
|
||||||
|
libopenssl-devel \
|
||||||
|
libpng16-devel \
|
||||||
|
libpnglite0 \
|
||||||
|
png++-devel \
|
||||||
|
libtiff-devel \
|
||||||
|
libXfont2-devel \
|
||||||
|
libxkbcommon-x11-devel \
|
||||||
|
libxshmfence-devel \
|
||||||
|
make \
|
||||||
|
Mesa-dri \
|
||||||
|
Mesa-libglapi-devel \
|
||||||
|
mkfontdir \
|
||||||
|
mkfontscale \
|
||||||
|
patch \
|
||||||
|
tigervnc \
|
||||||
|
wget \
|
||||||
|
xcmiscproto-devel \
|
||||||
|
xorg-x11-devel \
|
||||||
|
xorg-x11-server-sdk \
|
||||||
|
xorg-x11-util-devel \
|
||||||
|
zlib-devel
|
||||||
|
|
||||||
|
ENV SCRIPTS_DIR=/tmp/scripts
|
||||||
|
COPY builder/scripts $SCRIPTS_DIR
|
||||||
|
RUN $SCRIPTS_DIR/build-webp
|
||||||
|
RUN $SCRIPTS_DIR/build-libjpeg-turbo
|
||||||
|
|
||||||
|
RUN useradd -u 1000 docker && \
|
||||||
|
groupadd -g 1000 docker && \
|
||||||
|
usermod -a -G docker docker
|
||||||
|
|
||||||
|
COPY --chown=docker:docker . /src/
|
||||||
|
|
||||||
|
|
||||||
|
USER docker
|
||||||
|
ENTRYPOINT ["/src/builder/build.sh"]
|
@ -0,0 +1,27 @@
|
|||||||
|
FROM opensuse/leap:15.5
|
||||||
|
|
||||||
|
ENV KASMVNC_BUILD_OS opensuse
|
||||||
|
ENV KASMVNC_BUILD_OS_CODENAME 15
|
||||||
|
|
||||||
|
RUN zypper -n install -y \
|
||||||
|
gpg* \
|
||||||
|
less \
|
||||||
|
lsb-release \
|
||||||
|
rng-tools \
|
||||||
|
rpm-build \
|
||||||
|
rpmdevtools \
|
||||||
|
rpmlint \
|
||||||
|
tree \
|
||||||
|
vim
|
||||||
|
|
||||||
|
# Cache repo updates, so that spec changes don't trigger it on every build.
|
||||||
|
RUN zypper refresh
|
||||||
|
COPY opensuse/*.spec /tmp
|
||||||
|
|
||||||
|
RUN zypper -n install $(grep BuildRequires /tmp/*.spec | cut -d' ' -f2 | xargs)
|
||||||
|
|
||||||
|
RUN useradd -u 1000 -m -d /home/docker docker && \
|
||||||
|
groupadd -g 1000 docker && \
|
||||||
|
usermod -a -G docker docker
|
||||||
|
|
||||||
|
USER docker
|
@ -0,0 +1,23 @@
|
|||||||
|
FROM oraclelinux:8
|
||||||
|
|
||||||
|
ENV STARTUPDIR=/dockerstartup
|
||||||
|
|
||||||
|
RUN dnf install -y \
|
||||||
|
less \
|
||||||
|
redhat-lsb-core \
|
||||||
|
vim \
|
||||||
|
xterm
|
||||||
|
RUN dnf config-manager --set-enabled ol8_codeready_builder
|
||||||
|
RUN dnf install -y oracle-epel-release-el8
|
||||||
|
|
||||||
|
ARG KASMVNC_PACKAGE_DIR
|
||||||
|
COPY $KASMVNC_PACKAGE_DIR/*.rpm /tmp
|
||||||
|
RUN dnf localinstall -y /tmp/*.rpm
|
||||||
|
|
||||||
|
RUN mkdir -p $STARTUPDIR
|
||||||
|
COPY startup/vnc_startup_barebones.sh $STARTUPDIR
|
||||||
|
|
||||||
|
RUN useradd -m foo
|
||||||
|
USER foo:kasmvnc-cert
|
||||||
|
|
||||||
|
ENTRYPOINT "/$STARTUPDIR/vnc_startup_barebones.sh"
|
@ -0,0 +1,63 @@
|
|||||||
|
FROM oraclelinux:8
|
||||||
|
|
||||||
|
ENV KASMVNC_BUILD_OS oracle
|
||||||
|
ENV KASMVNC_BUILD_OS_CODENAME 8
|
||||||
|
ENV XORG_VER 1.20.11
|
||||||
|
|
||||||
|
# Install from stock repos
|
||||||
|
RUN \
|
||||||
|
dnf install -y 'dnf-command(config-manager)' && \
|
||||||
|
dnf config-manager --set-enabled ol8_codeready_builder && \
|
||||||
|
dnf install -y \
|
||||||
|
bzip2-devel \
|
||||||
|
ca-certificates \
|
||||||
|
cmake \
|
||||||
|
dnf-plugins-core \
|
||||||
|
gcc \
|
||||||
|
gcc-c++ \
|
||||||
|
git \
|
||||||
|
gnutls-devel \
|
||||||
|
libjpeg-turbo-devel \
|
||||||
|
libpng-devel \
|
||||||
|
libtiff-devel \
|
||||||
|
libxshmfence-devel \
|
||||||
|
make \
|
||||||
|
mesa-dri-drivers \
|
||||||
|
mesa-libgbm-devel \
|
||||||
|
openssl-devel \
|
||||||
|
patch \
|
||||||
|
tigervnc-server \
|
||||||
|
wget \
|
||||||
|
xorg-x11-font-utils \
|
||||||
|
zlib-devel
|
||||||
|
|
||||||
|
# Enable additional repos (epel, powertools, and fusion)
|
||||||
|
RUN dnf config-manager --set-enabled ol8_codeready_builder
|
||||||
|
RUN dnf install -y oracle-epel-release-el8
|
||||||
|
RUN dnf install -y --nogpgcheck https://mirrors.rpmfusion.org/free/el/rpmfusion-free-release-8.noarch.rpm
|
||||||
|
|
||||||
|
# Install from new repos
|
||||||
|
RUN dnf install -y \
|
||||||
|
ffmpeg-devel \
|
||||||
|
giflib-devel \
|
||||||
|
lbzip2 \
|
||||||
|
libXfont2-devel \
|
||||||
|
libxkbfile-devel \
|
||||||
|
xorg-x11-server-devel \
|
||||||
|
xorg-x11-xkb-utils-devel \
|
||||||
|
xorg-x11-xtrans-devel \
|
||||||
|
libXrandr-devel \
|
||||||
|
libXtst-devel \
|
||||||
|
libXcursor-devel
|
||||||
|
|
||||||
|
ENV SCRIPTS_DIR=/tmp/scripts
|
||||||
|
COPY builder/scripts $SCRIPTS_DIR
|
||||||
|
RUN $SCRIPTS_DIR/build-webp
|
||||||
|
RUN $SCRIPTS_DIR/build-libjpeg-turbo
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
COPY --chown=docker:docker . /src/
|
||||||
|
|
||||||
|
USER docker
|
||||||
|
ENTRYPOINT ["/src/builder/build.sh"]
|
@ -0,0 +1,21 @@
|
|||||||
|
FROM oraclelinux:8
|
||||||
|
|
||||||
|
ENV KASMVNC_BUILD_OS oracle
|
||||||
|
ENV KASMVNC_BUILD_OS_CODENAME 8
|
||||||
|
|
||||||
|
RUN dnf install -y \
|
||||||
|
gpg* \
|
||||||
|
less \
|
||||||
|
redhat-lsb-core \
|
||||||
|
rng-tools \
|
||||||
|
rpm* \
|
||||||
|
rpmlint \
|
||||||
|
tree \
|
||||||
|
vim
|
||||||
|
|
||||||
|
COPY oracle/kasmvncserver.spec /tmp
|
||||||
|
RUN dnf builddep -y /tmp/*.spec
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
USER docker
|
@ -0,0 +1,25 @@
|
|||||||
|
FROM oraclelinux:9
|
||||||
|
|
||||||
|
ENV STARTUPDIR=/dockerstartup
|
||||||
|
|
||||||
|
RUN dnf install -y \
|
||||||
|
less \
|
||||||
|
vim \
|
||||||
|
xterm
|
||||||
|
RUN dnf config-manager --set-enabled ol9_codeready_builder
|
||||||
|
RUN dnf install -y oracle-epel-release-el9
|
||||||
|
|
||||||
|
ARG KASMVNC_PACKAGE_DIR
|
||||||
|
COPY $KASMVNC_PACKAGE_DIR/*.rpm /tmp
|
||||||
|
RUN dnf localinstall -y /tmp/*.rpm
|
||||||
|
|
||||||
|
RUN dnf install -y crypto-policies-scripts
|
||||||
|
RUN update-crypto-policies --set FIPS:SHA1
|
||||||
|
|
||||||
|
RUN mkdir -p $STARTUPDIR
|
||||||
|
COPY startup/vnc_startup_barebones.sh $STARTUPDIR
|
||||||
|
|
||||||
|
RUN useradd -m foo
|
||||||
|
USER foo:kasmvnc-cert
|
||||||
|
|
||||||
|
ENTRYPOINT "/$STARTUPDIR/vnc_startup_barebones.sh"
|
@ -0,0 +1,63 @@
|
|||||||
|
FROM oraclelinux:9
|
||||||
|
|
||||||
|
ENV KASMVNC_BUILD_OS oracle
|
||||||
|
ENV KASMVNC_BUILD_OS_CODENAME 9
|
||||||
|
ENV XORG_VER 1.20.11
|
||||||
|
|
||||||
|
# Install from stock repos
|
||||||
|
RUN \
|
||||||
|
dnf config-manager --set-enabled ol9_codeready_builder && \
|
||||||
|
dnf config-manager --set-enabled ol9_distro_builder && \
|
||||||
|
dnf install -y \
|
||||||
|
bzip2-devel \
|
||||||
|
ca-certificates \
|
||||||
|
cmake \
|
||||||
|
dnf-plugins-core \
|
||||||
|
gcc \
|
||||||
|
gcc-c++ \
|
||||||
|
git \
|
||||||
|
gnutls-devel \
|
||||||
|
libjpeg-turbo-devel \
|
||||||
|
libpng-devel \
|
||||||
|
libtiff-devel \
|
||||||
|
libxshmfence-devel \
|
||||||
|
make \
|
||||||
|
mesa-dri-drivers \
|
||||||
|
mesa-libGL-devel \
|
||||||
|
mesa-libgbm-devel \
|
||||||
|
openssl-devel \
|
||||||
|
openssl-devel \
|
||||||
|
patch \
|
||||||
|
tigervnc-server \
|
||||||
|
wget \
|
||||||
|
xorg-x11-font-utils \
|
||||||
|
zlib-devel
|
||||||
|
|
||||||
|
# Enable additional repos (epel, powertools, and fusion)
|
||||||
|
RUN dnf install -y oracle-epel-release-el9
|
||||||
|
RUN dnf install -y --nogpgcheck https://mirrors.rpmfusion.org/free/el/rpmfusion-free-release-9.noarch.rpm
|
||||||
|
|
||||||
|
# Install from new repos
|
||||||
|
RUN dnf install -y \
|
||||||
|
giflib-devel \
|
||||||
|
lbzip2 \
|
||||||
|
libXfont2-devel \
|
||||||
|
libxkbfile-devel \
|
||||||
|
xorg-x11-server-devel \
|
||||||
|
xorg-x11-xtrans-devel \
|
||||||
|
libXrandr-devel \
|
||||||
|
libXtst-devel \
|
||||||
|
libXcursor-devel
|
||||||
|
|
||||||
|
|
||||||
|
ENV SCRIPTS_DIR=/tmp/scripts
|
||||||
|
COPY builder/scripts $SCRIPTS_DIR
|
||||||
|
RUN $SCRIPTS_DIR/build-webp
|
||||||
|
RUN $SCRIPTS_DIR/build-libjpeg-turbo
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
COPY --chown=docker:docker . /src/
|
||||||
|
|
||||||
|
USER docker
|
||||||
|
ENTRYPOINT ["/src/builder/build.sh"]
|
@ -0,0 +1,23 @@
|
|||||||
|
FROM oraclelinux:9
|
||||||
|
|
||||||
|
ENV KASMVNC_BUILD_OS oracle
|
||||||
|
ENV KASMVNC_BUILD_OS_CODENAME 9
|
||||||
|
|
||||||
|
RUN dnf config-manager --set-enabled ol9_codeready_builder
|
||||||
|
RUN dnf config-manager --nobest --set-enabled ol9_distro_builder
|
||||||
|
RUN dnf install --nobest -y \
|
||||||
|
gpg* \
|
||||||
|
less \
|
||||||
|
redhat-lsb-core \
|
||||||
|
rng-tools \
|
||||||
|
rpm* \
|
||||||
|
rpmlint \
|
||||||
|
rsync \
|
||||||
|
tree \
|
||||||
|
vim
|
||||||
|
|
||||||
|
COPY oracle/kasmvncserver9.spec /tmp
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd
|
||||||
|
|
||||||
|
USER docker
|
@ -1,21 +0,0 @@
|
|||||||
FROM ubuntu:16.04
|
|
||||||
|
|
||||||
RUN sed -i 's$# deb-src$deb-src$' /etc/apt/sources.list
|
|
||||||
|
|
||||||
RUN apt-get update && \
|
|
||||||
apt-get -y install sudo
|
|
||||||
|
|
||||||
RUN apt-get -y build-dep xorg-server
|
|
||||||
RUN apt-get -y install cmake git libjpeg-dev libgnutls-dev vim wget tightvncserver
|
|
||||||
RUN apt-get -y install libjpeg-dev libpng-dev libtiff-dev libgif-dev
|
|
||||||
RUN cd /tmp && wget https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-1.0.2.tar.gz
|
|
||||||
RUN cd /tmp && tar -xzvf /tmp/libwebp-*
|
|
||||||
RUN cd /tmp/libwebp-1.0.2 && ./configure && make && make install
|
|
||||||
|
|
||||||
RUN useradd -m docker && echo "docker:docker" | chpasswd && adduser docker sudo
|
|
||||||
|
|
||||||
COPY --chown=docker:docker . /src/
|
|
||||||
|
|
||||||
|
|
||||||
USER docker
|
|
||||||
ENTRYPOINT ["/src/builder/build.sh"]
|
|
@ -1,39 +0,0 @@
|
|||||||
FROM ubuntu:18.04
|
|
||||||
|
|
||||||
ENV KASMVNC_BUILD_OS ubuntu
|
|
||||||
ENV KASMVNC_BUILD_OS_CODENAME bionic
|
|
||||||
ENV XORG_VER 1.20.10
|
|
||||||
|
|
||||||
RUN sed -i 's$# deb-src$deb-src$' /etc/apt/sources.list
|
|
||||||
|
|
||||||
RUN apt-get update && \
|
|
||||||
apt-get -y install sudo
|
|
||||||
|
|
||||||
RUN apt-get update && apt-get -y build-dep xorg-server libxfont-dev
|
|
||||||
RUN apt-get update && apt-get -y install cmake git libgnutls28-dev vim wget tightvncserver
|
|
||||||
RUN apt-get update && apt-get -y install libpng-dev libtiff-dev libgif-dev libavcodec-dev libssl-dev
|
|
||||||
|
|
||||||
RUN apt-get update && apt-get install -y cmake nasm gcc
|
|
||||||
RUN git clone https://github.com/libjpeg-turbo/libjpeg-turbo.git
|
|
||||||
RUN export MAKEFLAGS=-j`nproc`; cd libjpeg-turbo && cmake -G"Unix Makefiles" && make deb
|
|
||||||
RUN export MAKEFLAGS=-j`nproc`; cd libjpeg-turbo && cmake -DCMAKE_INSTALL_PREFIX=/usr/local -G"Unix Makefiles" && make && make install
|
|
||||||
|
|
||||||
# Additions for webp
|
|
||||||
RUN cd /tmp && wget https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-1.0.2.tar.gz
|
|
||||||
RUN cd /tmp && tar -xzf /tmp/libwebp-*
|
|
||||||
RUN cd /tmp/libwebp-1.0.2 && \
|
|
||||||
./configure --enable-static --disable-shared && \
|
|
||||||
make && make install
|
|
||||||
|
|
||||||
# Fix for older required libs
|
|
||||||
#RUN cd /tmp && wget http://launchpadlibrarian.net/347526424/libxfont1-dev_1.5.2-4ubuntu2_amd64.deb && \
|
|
||||||
# wget http://launchpadlibrarian.net/347526425/libxfont1_1.5.2-4ubuntu2_amd64.deb && \
|
|
||||||
# dpkg -i libxfont1_1.5.2-4ubuntu2_amd64.deb && \
|
|
||||||
# dpkg -i libxfont1-dev_1.5.2-4ubuntu2_amd64.deb
|
|
||||||
|
|
||||||
RUN useradd -m docker && echo "docker:docker" | chpasswd && adduser docker sudo
|
|
||||||
|
|
||||||
COPY --chown=docker:docker . /src
|
|
||||||
|
|
||||||
USER docker
|
|
||||||
ENTRYPOINT ["/src/builder/build.sh"]
|
|
@ -1,15 +1,20 @@
|
|||||||
FROM ubuntu:focal
|
FROM ubuntu:focal
|
||||||
|
|
||||||
|
ENV STARTUPDIR=/dockerstartup
|
||||||
|
|
||||||
|
COPY ./builder/scripts/ /tmp/scripts/
|
||||||
|
COPY ./debian/changelog /tmp
|
||||||
|
|
||||||
ARG KASMVNC_PACKAGE_DIR
|
ARG KASMVNC_PACKAGE_DIR
|
||||||
COPY $KASMVNC_PACKAGE_DIR/kasmvncserver_*.deb /tmp/
|
COPY $KASMVNC_PACKAGE_DIR/kasmvncserver_*.deb /tmp/
|
||||||
RUN rm -f /tmp/kasmvncserver_*+*.deb; apt-get update && dpkg -i /tmp/*.deb; apt-get -yf install
|
RUN /tmp/scripts/install_kasmvncserver_package
|
||||||
|
|
||||||
RUN apt-get update && apt-get -y install xterm lsb-release
|
RUN apt-get update && apt-get -y install xterm lsb-release
|
||||||
|
|
||||||
RUN useradd -m foo && addgroup foo ssl-cert
|
RUN mkdir -p $STARTUPDIR
|
||||||
|
COPY builder/startup/vnc_startup_barebones.sh $STARTUPDIR
|
||||||
|
|
||||||
|
RUN useradd -m foo && addgroup foo ssl-cert
|
||||||
USER foo
|
USER foo
|
||||||
|
|
||||||
RUN mkdir ~/.vnc && echo '/usr/bin/xterm &' >> ~/.vnc/xstartup && \
|
ENTRYPOINT "/$STARTUPDIR/vnc_startup_barebones.sh"
|
||||||
chmod +x ~/.vnc/xstartup
|
|
||||||
|
|
||||||
ENTRYPOINT bash -c "echo -e \"$VNC_PW\n$VNC_PW\n\" | kasmvncpasswd -w -u \"$VNC_USER\" && vncserver :1 -interface 0.0.0.0 && vncserver -kill :1 && vncserver :1 -depth 24 -geometry 1280x1050 -websocketPort 8443 -cert /etc/ssl/certs/ssl-cert-snakeoil.pem -key /etc/ssl/private/ssl-cert-snakeoil.key -sslOnly -FrameRate=24 -interface 0.0.0.0 -httpd /usr/share/kasmvnc/www && tail -f $HOME/.vnc/*.log "
|
|
||||||
|
@ -0,0 +1,30 @@
|
|||||||
|
FROM ubuntu:focal
|
||||||
|
|
||||||
|
ENV DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y vim less
|
||||||
|
RUN apt-get update && apt-get install -y python3-pip
|
||||||
|
RUN apt-get update && apt-get install -y strace silversearcher-ag xfonts-base
|
||||||
|
RUN apt-get update && apt-get install -y cinnamon
|
||||||
|
RUN apt-get update && apt-get install -y mate
|
||||||
|
|
||||||
|
RUN useradd -m docker
|
||||||
|
|
||||||
|
ARG KASMVNC_PACKAGE_DIR
|
||||||
|
COPY $KASMVNC_PACKAGE_DIR/kasmvncserver_*.deb /tmp/
|
||||||
|
RUN apt-get install -y /tmp/*$(dpkg --print-architecture).deb
|
||||||
|
|
||||||
|
ENV USER docker
|
||||||
|
ENV HOME /home/docker
|
||||||
|
|
||||||
|
RUN chown -R 1000:0 $HOME
|
||||||
|
USER 1000:ssl-cert
|
||||||
|
WORKDIR $HOME
|
||||||
|
|
||||||
|
RUN pip3 install --user pipenv
|
||||||
|
RUN echo 'PATH="~/.local/bin/:$PATH"' >> ~/.bashrc
|
||||||
|
|
||||||
|
ENV LC_ALL=C.UTF-8
|
||||||
|
ENV LANG=C.UTF-8
|
||||||
|
|
||||||
|
ENTRYPOINT ["/bin/bash", "-ic", "/src/builder/run-specs-inside-docker"]
|
@ -0,0 +1,68 @@
|
|||||||
|
FROM ubuntu:focal
|
||||||
|
|
||||||
|
ENV DEBIAN_FRONTEND=noninteractive
|
||||||
|
ENV VNC_PORT 8443
|
||||||
|
ENV VNC_PORT2 8444
|
||||||
|
ENV VNC_PORT3 8445
|
||||||
|
EXPOSE $VNC_PORT
|
||||||
|
EXPOSE $VNC_PORT2
|
||||||
|
EXPOSE $VNC_PORT3
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y supervisor xfce4 xfce4-terminal xterm libnss-wrapper gettext wget
|
||||||
|
RUN apt-get update && apt-get install -y vim less
|
||||||
|
RUN apt-get update && apt-get -y install lsb-release
|
||||||
|
RUN apt-get update && apt-get -y install net-tools
|
||||||
|
|
||||||
|
# RUN mkdir -p /usr/share/man/man1
|
||||||
|
# RUN apt-get update && apt-get install -y apt-utils openjdk-11-jre
|
||||||
|
RUN apt-get update && apt-get install -y ubuntu-mate-desktop
|
||||||
|
RUN apt-get update && apt-get install -y lxde
|
||||||
|
RUN apt-get update && apt-get install -y lxqt
|
||||||
|
RUN apt-get update && apt-get install -y kde-plasma-desktop
|
||||||
|
RUN apt-get update && apt-get install -y cinnamon
|
||||||
|
RUN apt-get update && apt-get install -y gnome-session
|
||||||
|
RUN apt-get purge -y pm-utils xscreensaver*
|
||||||
|
RUN apt-get purge -y clipit magnus kgpg
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y python3-pip
|
||||||
|
RUN apt-get update && apt-get install -y strace
|
||||||
|
RUN apt-get update && apt-get install -y silversearcher-ag
|
||||||
|
RUN apt-get update && apt-get install -y libdevel-stacktrace-perl
|
||||||
|
|
||||||
|
RUN useradd -m docker
|
||||||
|
ENV USER docker
|
||||||
|
|
||||||
|
COPY ./builder/scripts/ /tmp/scripts/
|
||||||
|
COPY ./debian/changelog /tmp
|
||||||
|
|
||||||
|
ARG KASMVNC_PACKAGE_DIR
|
||||||
|
COPY $KASMVNC_PACKAGE_DIR/kasmvncserver_*.deb /tmp/
|
||||||
|
RUN /tmp/scripts/install_kasmvncserver_package
|
||||||
|
|
||||||
|
ENV KASMVNC_DEVELOPMENT 1
|
||||||
|
ENV HOME /home/docker
|
||||||
|
RUN chown -R 1000:0 $HOME
|
||||||
|
USER 1000:ssl-cert
|
||||||
|
WORKDIR $HOME
|
||||||
|
|
||||||
|
RUN pip3 install --user pipenv
|
||||||
|
RUN echo 'PATH="/src/unix:~/.local/bin/:$PATH"' >> ~/.bashrc
|
||||||
|
RUN echo 'export PERL5LIB="/src/unix"' >> ~/.bashrc
|
||||||
|
RUN echo 'ulimit -c 0' >> ~/.bashrc
|
||||||
|
RUN echo 'alias s="vncserver"' >> ~/.bashrc
|
||||||
|
RUN echo 'alias k="vncserver -kill :1; pkill baloo_file; pkill gpg-agent; pkill ssh-agent; pkill xiccd"' >> ~/.bashrc
|
||||||
|
RUN echo 'alias r="k; s"' >> ~/.bashrc
|
||||||
|
RUN echo 'alias go="vncserver; vncserver -kill :1"' >> ~/.bashrc
|
||||||
|
RUN echo 'alias ns="netstat -nltup"' >> ~/.bashrc
|
||||||
|
RUN echo 'alias tv="./run-specs spec/vncserver_yaml_validation_spec.py"' >> ~/.bashrc
|
||||||
|
RUN echo 'alias ty="./run-specs spec/vncserver_*spec.py"' >> ~/.bashrc
|
||||||
|
RUN echo 'alias ta="./run-specs"' >> ~/.bashrc
|
||||||
|
RUN echo 'alias vd="vncserver -dry-run"' >> ~/.bashrc
|
||||||
|
RUN echo 'alias ss="sp; vncserver -select-de xfce"' >> ~/.bashrc
|
||||||
|
ENV SET_PASSWORD_FUNC 'sp() { echo -e "$VNC_PW\\n$VNC_PW\\n" | kasmvncpasswd -w -u $VNC_USER $HOME/.kasmpasswd; }'
|
||||||
|
RUN echo $SET_PASSWORD_FUNC >> ~/.bashrc
|
||||||
|
|
||||||
|
ENV LC_ALL=C.UTF-8
|
||||||
|
ENV LANG=C.UTF-8
|
||||||
|
|
||||||
|
ENTRYPOINT ["bash", "-ic", "cd /src && pipenv install; exec bash"]
|
@ -0,0 +1,28 @@
|
|||||||
|
FROM ubuntu:jammy
|
||||||
|
|
||||||
|
ENV KASMVNC_BUILD_OS ubuntu
|
||||||
|
ENV KASMVNC_BUILD_OS_CODENAME jammy
|
||||||
|
ENV XORG_VER 21.1.3
|
||||||
|
ENV DEBIAN_FRONTEND noninteractive
|
||||||
|
|
||||||
|
RUN sed -i 's$# deb-src$deb-src$' /etc/apt/sources.list
|
||||||
|
|
||||||
|
RUN apt-get update && \
|
||||||
|
apt-get -y install sudo
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y --no-install-recommends tzdata
|
||||||
|
RUN apt-get update && apt-get -y build-dep xorg-server libxfont-dev
|
||||||
|
RUN apt-get update && apt-get -y install cmake git libgnutls28-dev vim wget tightvncserver curl
|
||||||
|
RUN apt-get update && apt-get -y install libpng-dev libtiff-dev libgif-dev libavcodec-dev libssl-dev libxrandr-dev libxcursor-dev
|
||||||
|
|
||||||
|
ENV SCRIPTS_DIR=/tmp/scripts
|
||||||
|
COPY builder/scripts $SCRIPTS_DIR
|
||||||
|
RUN $SCRIPTS_DIR/build-webp
|
||||||
|
RUN $SCRIPTS_DIR/build-libjpeg-turbo
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd && adduser docker sudo
|
||||||
|
|
||||||
|
COPY --chown=docker:docker . /src/
|
||||||
|
|
||||||
|
USER docker
|
||||||
|
ENTRYPOINT ["/src/builder/build.sh"]
|
@ -0,0 +1,19 @@
|
|||||||
|
FROM ubuntu:jammy
|
||||||
|
|
||||||
|
ENV DEBIAN_FRONTEND noninteractive
|
||||||
|
|
||||||
|
RUN apt-get update && \
|
||||||
|
apt-get -y install vim build-essential devscripts equivs
|
||||||
|
|
||||||
|
# Install build-deps for the package.
|
||||||
|
COPY ./debian/control /tmp
|
||||||
|
RUN apt-get update && echo YYY | mk-build-deps --install --remove /tmp/control
|
||||||
|
|
||||||
|
ARG L_UID
|
||||||
|
RUN if [ "$L_UID" -eq 0 ]; then \
|
||||||
|
useradd -m docker; \
|
||||||
|
else \
|
||||||
|
useradd -m docker -u $L_UID;\
|
||||||
|
fi
|
||||||
|
|
||||||
|
USER docker
|
@ -0,0 +1,51 @@
|
|||||||
|
FROM ubuntu:jammy
|
||||||
|
|
||||||
|
ENV DISPLAY=:1 \
|
||||||
|
VNC_PORT=8443 \
|
||||||
|
VNC_RESOLUTION=1280x720 \
|
||||||
|
MAX_FRAME_RATE=24 \
|
||||||
|
VNCOPTIONS="-PreferBandwidth -DynamicQualityMin=4 -DynamicQualityMax=7" \
|
||||||
|
HOME=/home/user \
|
||||||
|
TERM=xterm \
|
||||||
|
STARTUPDIR=/dockerstartup \
|
||||||
|
INST_SCRIPTS=/dockerstartup/install \
|
||||||
|
KASM_RX_HOME=/dockerstartup/kasmrx \
|
||||||
|
DEBIAN_FRONTEND=noninteractive \
|
||||||
|
VNC_COL_DEPTH=24 \
|
||||||
|
VNC_RESOLUTION=1280x1024 \
|
||||||
|
VNC_PW=vncpassword \
|
||||||
|
VNC_USER=user \
|
||||||
|
VNC_VIEW_ONLY_PW=vncviewonlypassword \
|
||||||
|
LD_LIBRARY_PATH=/usr/local/lib/ \
|
||||||
|
OMP_WAIT_POLICY=PASSIVE \
|
||||||
|
SHELL=/bin/bash \
|
||||||
|
SINGLE_APPLICATION=0 \
|
||||||
|
KASMVNC_BUILD_OS=ubuntu \
|
||||||
|
KASMVNC_BUILD_OS_CODENAME=jammy
|
||||||
|
|
||||||
|
EXPOSE $VNC_PORT
|
||||||
|
|
||||||
|
WORKDIR $HOME
|
||||||
|
|
||||||
|
### REQUIRED STUFF ###
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y supervisor xfce4 xfce4-terminal xterm libnss-wrapper gettext wget
|
||||||
|
RUN apt-get purge -y pm-utils xscreensaver*
|
||||||
|
|
||||||
|
RUN echo 'source $STARTUPDIR/generate_container_user' >> $HOME/.bashrc
|
||||||
|
|
||||||
|
RUN mkdir -p $STARTUPDIR
|
||||||
|
COPY startup/ $STARTUPDIR
|
||||||
|
|
||||||
|
### START CUSTOM STUFF ####
|
||||||
|
|
||||||
|
COPY build/kasmvnc.${KASMVNC_BUILD_OS}_${KASMVNC_BUILD_OS_CODENAME}.tar.gz /tmp/
|
||||||
|
RUN tar -xzvf /tmp/kasmvnc.${KASMVNC_BUILD_OS}_${KASMVNC_BUILD_OS_CODENAME}.tar.gz --strip 1 -C /
|
||||||
|
|
||||||
|
### END CUSTOM STUFF ###
|
||||||
|
|
||||||
|
RUN chown -R 1000:0 $HOME
|
||||||
|
USER 1000
|
||||||
|
WORKDIR $HOME
|
||||||
|
|
||||||
|
ENTRYPOINT [ "/dockerstartup/vnc_startup.sh" ]
|
@ -0,0 +1,28 @@
|
|||||||
|
FROM ubuntu:noble
|
||||||
|
|
||||||
|
ENV KASMVNC_BUILD_OS ubuntu
|
||||||
|
ENV KASMVNC_BUILD_OS_CODENAME noble
|
||||||
|
ENV XORG_VER 21.1.12
|
||||||
|
ENV DEBIAN_FRONTEND noninteractive
|
||||||
|
|
||||||
|
RUN sed -i 's$Types: deb$Types: deb deb-src$' /etc/apt/sources.list.d/ubuntu.sources
|
||||||
|
|
||||||
|
RUN apt-get update && \
|
||||||
|
apt-get -y install sudo
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y --no-install-recommends tzdata
|
||||||
|
RUN apt-get update && apt-get -y build-dep xorg-server libxfont-dev
|
||||||
|
RUN apt-get update && apt-get -y install cmake git libgnutls28-dev vim wget curl
|
||||||
|
RUN apt-get update && apt-get -y install libpng-dev libtiff-dev libgif-dev libavcodec-dev libssl-dev libxrandr-dev libxcursor-dev
|
||||||
|
|
||||||
|
ENV SCRIPTS_DIR=/tmp/scripts
|
||||||
|
COPY builder/scripts $SCRIPTS_DIR
|
||||||
|
RUN $SCRIPTS_DIR/build-webp
|
||||||
|
RUN $SCRIPTS_DIR/build-libjpeg-turbo
|
||||||
|
|
||||||
|
RUN useradd -m docker && echo "docker:docker" | chpasswd && adduser docker sudo
|
||||||
|
|
||||||
|
COPY --chown=docker:docker . /src/
|
||||||
|
|
||||||
|
USER docker
|
||||||
|
ENTRYPOINT ["/src/builder/build.sh"]
|
@ -0,0 +1,19 @@
|
|||||||
|
FROM ubuntu:noble
|
||||||
|
|
||||||
|
ENV DEBIAN_FRONTEND noninteractive
|
||||||
|
|
||||||
|
RUN apt-get update && \
|
||||||
|
apt-get -y install vim build-essential devscripts equivs
|
||||||
|
|
||||||
|
# Install build-deps for the package.
|
||||||
|
COPY ./debian/control /tmp
|
||||||
|
RUN apt-get update && echo YYY | mk-build-deps --install --remove /tmp/control
|
||||||
|
|
||||||
|
ARG L_UID
|
||||||
|
RUN if [ "$L_UID" -eq 0 ]; then \
|
||||||
|
useradd -m docker; \
|
||||||
|
else \
|
||||||
|
useradd -m docker -u $L_UID;\
|
||||||
|
fi
|
||||||
|
|
||||||
|
USER docker
|
@ -0,0 +1,57 @@
|
|||||||
|
FROM ubuntu:noble
|
||||||
|
|
||||||
|
ENV DISPLAY=:1 \
|
||||||
|
VNC_PORT=8443 \
|
||||||
|
VNC_RESOLUTION=1280x720 \
|
||||||
|
MAX_FRAME_RATE=24 \
|
||||||
|
VNCOPTIONS="-PreferBandwidth -DynamicQualityMin=4 -DynamicQualityMax=7" \
|
||||||
|
HOME=/home/user \
|
||||||
|
TERM=xterm \
|
||||||
|
STARTUPDIR=/dockerstartup \
|
||||||
|
INST_SCRIPTS=/dockerstartup/install \
|
||||||
|
KASM_RX_HOME=/dockerstartup/kasmrx \
|
||||||
|
DEBIAN_FRONTEND=noninteractive \
|
||||||
|
VNC_COL_DEPTH=24 \
|
||||||
|
VNC_RESOLUTION=1280x1024 \
|
||||||
|
VNC_PW=vncpassword \
|
||||||
|
VNC_USER=user \
|
||||||
|
VNC_VIEW_ONLY_PW=vncviewonlypassword \
|
||||||
|
LD_LIBRARY_PATH=/usr/local/lib/ \
|
||||||
|
OMP_WAIT_POLICY=PASSIVE \
|
||||||
|
SHELL=/bin/bash \
|
||||||
|
SINGLE_APPLICATION=0 \
|
||||||
|
KASMVNC_BUILD_OS=ubuntu \
|
||||||
|
KASMVNC_BUILD_OS_CODENAME=noble
|
||||||
|
|
||||||
|
EXPOSE $VNC_PORT
|
||||||
|
|
||||||
|
WORKDIR $HOME
|
||||||
|
|
||||||
|
### REQUIRED STUFF ###
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y supervisor xfce4 xfce4-terminal xterm libnss-wrapper gettext wget
|
||||||
|
RUN apt-get purge -y pm-utils xscreensaver*
|
||||||
|
RUN apt-get update && apt-get install -y vim less
|
||||||
|
RUN apt-get update && apt-get -y install lsb-release
|
||||||
|
|
||||||
|
RUN echo 'source $STARTUPDIR/generate_container_user' >> $HOME/.bashrc
|
||||||
|
|
||||||
|
RUN mkdir -p $STARTUPDIR
|
||||||
|
COPY builder/startup/ $STARTUPDIR
|
||||||
|
|
||||||
|
### START CUSTOM STUFF ####
|
||||||
|
|
||||||
|
ARG KASMVNC_PACKAGE_DIR
|
||||||
|
COPY $KASMVNC_PACKAGE_DIR/kasmvncserver_*.deb /tmp/
|
||||||
|
RUN rm -f /tmp/kasmvncserver_*+*.deb; dpkg -i /tmp/*.deb; apt-get -yf install
|
||||||
|
|
||||||
|
RUN mkdir ~/.vnc && echo '/usr/bin/xfce4-session &' >> ~/.vnc/xstartup && \
|
||||||
|
chmod +x ~/.vnc/xstartup
|
||||||
|
|
||||||
|
### END CUSTOM STUFF ###
|
||||||
|
|
||||||
|
RUN chown -R 1000:0 $HOME
|
||||||
|
USER 1000:ssl-cert
|
||||||
|
WORKDIR $HOME
|
||||||
|
|
||||||
|
ENTRYPOINT [ "/dockerstartup/vnc_startup.sh" ]
|
@ -0,0 +1,51 @@
|
|||||||
|
FROM ubuntu:noble
|
||||||
|
|
||||||
|
ENV DISPLAY=:1 \
|
||||||
|
VNC_PORT=8443 \
|
||||||
|
VNC_RESOLUTION=1280x720 \
|
||||||
|
MAX_FRAME_RATE=24 \
|
||||||
|
VNCOPTIONS="-PreferBandwidth -DynamicQualityMin=4 -DynamicQualityMax=7" \
|
||||||
|
HOME=/home/user \
|
||||||
|
TERM=xterm \
|
||||||
|
STARTUPDIR=/dockerstartup \
|
||||||
|
INST_SCRIPTS=/dockerstartup/install \
|
||||||
|
KASM_RX_HOME=/dockerstartup/kasmrx \
|
||||||
|
DEBIAN_FRONTEND=noninteractive \
|
||||||
|
VNC_COL_DEPTH=24 \
|
||||||
|
VNC_RESOLUTION=1280x1024 \
|
||||||
|
VNC_PW=vncpassword \
|
||||||
|
VNC_USER=user \
|
||||||
|
VNC_VIEW_ONLY_PW=vncviewonlypassword \
|
||||||
|
LD_LIBRARY_PATH=/usr/local/lib/ \
|
||||||
|
OMP_WAIT_POLICY=PASSIVE \
|
||||||
|
SHELL=/bin/bash \
|
||||||
|
SINGLE_APPLICATION=0 \
|
||||||
|
KASMVNC_BUILD_OS=ubuntu \
|
||||||
|
KASMVNC_BUILD_OS_CODENAME=noble
|
||||||
|
|
||||||
|
EXPOSE $VNC_PORT
|
||||||
|
|
||||||
|
WORKDIR $HOME
|
||||||
|
|
||||||
|
### REQUIRED STUFF ###
|
||||||
|
|
||||||
|
RUN apt-get update && apt-get install -y supervisor xfce4 xfce4-terminal xterm libnss-wrapper gettext wget
|
||||||
|
RUN apt-get purge -y pm-utils xscreensaver*
|
||||||
|
|
||||||
|
RUN echo 'source $STARTUPDIR/generate_container_user' >> $HOME/.bashrc
|
||||||
|
|
||||||
|
RUN mkdir -p $STARTUPDIR
|
||||||
|
COPY startup/ $STARTUPDIR
|
||||||
|
|
||||||
|
### START CUSTOM STUFF ####
|
||||||
|
|
||||||
|
COPY build/kasmvnc.${KASMVNC_BUILD_OS}_${KASMVNC_BUILD_OS_CODENAME}.tar.gz /tmp/
|
||||||
|
RUN tar -xzvf /tmp/kasmvnc.${KASMVNC_BUILD_OS}_${KASMVNC_BUILD_OS_CODENAME}.tar.gz --strip 1 -C /
|
||||||
|
|
||||||
|
### END CUSTOM STUFF ###
|
||||||
|
|
||||||
|
RUN chown -R 1000:0 $HOME
|
||||||
|
USER 1000
|
||||||
|
WORKDIR $HOME
|
||||||
|
|
||||||
|
ENTRYPOINT [ "/dockerstartup/vnc_startup.sh" ]
|
@ -0,0 +1,49 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
usage() {
|
||||||
|
echo >&2 "Usage: $(basename "$0") [-s|--shell] [-p|--perf-test] [-h|--help] <distro> <distro_version>"
|
||||||
|
exit
|
||||||
|
}
|
||||||
|
|
||||||
|
process_options() {
|
||||||
|
local sorted_options=$(getopt -o psh --long perf-test --long shell --long help -- "$@")
|
||||||
|
eval set -- $sorted_options
|
||||||
|
|
||||||
|
while : ; do
|
||||||
|
case "$1" in
|
||||||
|
-p|--perf-test)
|
||||||
|
entrypoint_args='-interface 0.0.0.0 -selfBench :1'
|
||||||
|
entrypoint_executable="--entrypoint=/usr/bin/Xvnc"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-s|--shell)
|
||||||
|
entrypoint_executable="--entrypoint=bash"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
|
-h|--help)
|
||||||
|
print_usage=1
|
||||||
|
;;
|
||||||
|
--)
|
||||||
|
shift
|
||||||
|
break
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
leftover_options=("$@")
|
||||||
|
}
|
||||||
|
|
||||||
|
declare -a leftover_options
|
||||||
|
|
||||||
|
if [ "$#" -eq 0 ]; then
|
||||||
|
usage
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
process_options "$@"
|
||||||
|
set -- "${leftover_options[@]}"
|
||||||
|
|
||||||
|
if [ -n "$print_usage" ]; then
|
||||||
|
usage
|
||||||
|
exit
|
||||||
|
fi
|
@ -0,0 +1,18 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -euo pipefail
|
||||||
|
logfile=/tmp/specs.log
|
||||||
|
red='\033[0;31m'
|
||||||
|
no_color='\033[0m'
|
||||||
|
|
||||||
|
fail_on_perl_warnings() {
|
||||||
|
if grep -qP 'line \d+\.$' "$logfile"; then
|
||||||
|
echo -e "${red}Failure: Perl warnings were found${no_color}"
|
||||||
|
false
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
cd /src
|
||||||
|
pipenv install
|
||||||
|
./run-specs 2>&1 | tee "$logfile"
|
||||||
|
fail_on_perl_warnings
|
@ -0,0 +1,36 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
build_and_install() {
|
||||||
|
export MAKEFLAGS=-j`nproc`
|
||||||
|
export CFLAGS="-fpic"
|
||||||
|
cmake -DCMAKE_INSTALL_PREFIX=/usr/local -G"Unix Makefiles"
|
||||||
|
make
|
||||||
|
make install
|
||||||
|
}
|
||||||
|
|
||||||
|
install_build_dependencies() {
|
||||||
|
install_packages cmake gcc
|
||||||
|
ensure_libjpeg_is_fast
|
||||||
|
}
|
||||||
|
|
||||||
|
ensure_libjpeg_is_fast() {
|
||||||
|
install_packages nasm
|
||||||
|
}
|
||||||
|
|
||||||
|
prepare_libjpeg_source() {
|
||||||
|
export JPEG_TURBO_RELEASE=$(curl -sX GET "https://api.github.com/repos/libjpeg-turbo/libjpeg-turbo/releases/latest" \
|
||||||
|
| awk '/tag_name/{print $4;exit}' FS='[""]')
|
||||||
|
mkdir libjpeg-turbo
|
||||||
|
curl -Ls "https://github.com/libjpeg-turbo/libjpeg-turbo/archive/${JPEG_TURBO_RELEASE}.tar.gz" | \
|
||||||
|
tar xzvf - -C libjpeg-turbo/ --strip-components=1
|
||||||
|
cd libjpeg-turbo
|
||||||
|
}
|
||||||
|
|
||||||
|
source_dir=$(dirname "$0")
|
||||||
|
. "$source_dir/common.sh"
|
||||||
|
|
||||||
|
install_build_dependencies
|
||||||
|
prepare_libjpeg_source
|
||||||
|
build_and_install
|
@ -0,0 +1,23 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
webp_tar_url=https://storage.googleapis.com/downloads.webmproject.org/releases/webp/libwebp-1.2.4.tar.gz
|
||||||
|
|
||||||
|
prepare_source() {
|
||||||
|
cd /tmp
|
||||||
|
wget "$webp_tar_url"
|
||||||
|
tar -xzf /tmp/libwebp-*
|
||||||
|
rm /tmp/libwebp-*.tar.gz
|
||||||
|
cd /tmp/libwebp-*
|
||||||
|
}
|
||||||
|
|
||||||
|
build_and_install() {
|
||||||
|
export MAKEFLAGS=-j`nproc`
|
||||||
|
./configure --enable-static --disable-shared
|
||||||
|
make
|
||||||
|
make install
|
||||||
|
}
|
||||||
|
|
||||||
|
prepare_source
|
||||||
|
build_and_install
|
@ -0,0 +1,34 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
detect_distro() {
|
||||||
|
if [ -f /etc/centos-release ]; then
|
||||||
|
DISTRO=centos
|
||||||
|
elif [ -f /etc/oracle-release ]; then
|
||||||
|
DISTRO=oracle
|
||||||
|
elif [ -f /etc/fedora-release ]; then
|
||||||
|
DISTRO=fedora
|
||||||
|
elif [ -f /usr/bin/zypper ]; then
|
||||||
|
DISTRO=opensuse
|
||||||
|
elif [ -f /etc/alpine-release ]; then
|
||||||
|
DISTRO=alpine
|
||||||
|
else
|
||||||
|
DISTRO=debian
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
install_packages() {
|
||||||
|
local install_cmd=no-command-defined
|
||||||
|
|
||||||
|
case "$DISTRO" in
|
||||||
|
centos) install_cmd="yum install -y" ;;
|
||||||
|
oracle) install_cmd="dnf install -y" ;;
|
||||||
|
fedora) install_cmd="dnf install -y" ;;
|
||||||
|
opensuse) install_cmd="zypper install -y" ;;
|
||||||
|
alpine) install_cmd="apk add" ;;
|
||||||
|
*) install_cmd="apt-get update && apt-get install -y"
|
||||||
|
esac
|
||||||
|
|
||||||
|
eval "$install_cmd $*"
|
||||||
|
}
|
||||||
|
|
||||||
|
detect_distro
|
@ -0,0 +1,64 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
if [[ -n "$1" ]]; then
|
||||||
|
tag="$1"
|
||||||
|
fi
|
||||||
|
|
||||||
|
is_debian() {
|
||||||
|
[[ -f /etc/debian_version ]]
|
||||||
|
}
|
||||||
|
|
||||||
|
check_package_version_exists() {
|
||||||
|
if ! stat /tmp/kasmvncserver_"$package_version"*.deb; then
|
||||||
|
>&2 echo "No package found for version $package_version"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
remove_tagged_debs_unless_tag_used() {
|
||||||
|
if [[ -n "$tag" ]]; then
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm -f /tmp/kasmvncserver_*+*.deb
|
||||||
|
}
|
||||||
|
|
||||||
|
detect_rpm_package_manager() {
|
||||||
|
if command -v dnf >/dev/null; then
|
||||||
|
rpm_package_manager=dnf
|
||||||
|
else
|
||||||
|
rpm_package_manager=yum
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
install_package_built_for_current_branch_package_version_deb() {
|
||||||
|
remove_tagged_debs_unless_tag_used
|
||||||
|
|
||||||
|
apt-get update
|
||||||
|
apt-get install -y dpkg-dev
|
||||||
|
package_version=$(dpkg-parsechangelog --show-field Version \
|
||||||
|
--file /tmp/changelog)
|
||||||
|
|
||||||
|
check_package_version_exists
|
||||||
|
apt-get install -y /tmp/kasmvncserver_"$package_version"*"$tag"*.deb
|
||||||
|
}
|
||||||
|
|
||||||
|
install_package_built_for_current_branch_package_version_rpm() {
|
||||||
|
detect_rpm_package_manager
|
||||||
|
$rpm_package_manager install -y rpmdevtools
|
||||||
|
|
||||||
|
package_version=$(rpmspec -q --qf '%{version}\n' /tmp/kasmvncserver.spec 2>/dev/null)
|
||||||
|
if [[ $rpm_package_manager = "dnf" ]]; then
|
||||||
|
dnf localinstall -y --allowerasing /tmp/kasmvncserver-"$package_version"*.rpm
|
||||||
|
else
|
||||||
|
yum install -y /tmp/kasmvncserver-"$package_version"*.rpm
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
if is_debian ; then
|
||||||
|
install_package_built_for_current_branch_package_version_deb
|
||||||
|
else
|
||||||
|
install_package_built_for_current_branch_package_version_rpm
|
||||||
|
fi
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue