mirror of
https://github.com/linuxserver/docker-baseimage-rdesktop.git
synced 2026-02-20 08:39:58 +08:00
Compare commits
310 Commits
bionic-76b
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e34b41d61f | ||
|
|
591e281e59 | ||
|
|
42c4de1e50 | ||
|
|
db7794f939 | ||
|
|
e679de35d7 | ||
|
|
0104d493a0 | ||
|
|
3e7eb69f1b | ||
|
|
d4d3e6babf | ||
|
|
1fdb6a33e9 | ||
|
|
3c488a979d | ||
|
|
1c880a4e1f | ||
|
|
2b9a062e46 | ||
|
|
9f9097fe54 | ||
|
|
dcdf40751d | ||
|
|
83b738c6cf | ||
|
|
8a0d2c74fc | ||
|
|
cb8b865682 | ||
|
|
cea5a4afac | ||
|
|
19cd1fa92a | ||
|
|
b9019258d6 | ||
|
|
6ea6e4e585 | ||
|
|
326641e483 | ||
|
|
60c1da2445 | ||
|
|
52479a942d | ||
|
|
b3a3a107c3 | ||
|
|
20e829ad9b | ||
|
|
b65c0802d2 | ||
|
|
382917fac6 | ||
|
|
c5e879d08b | ||
|
|
c3864bdd1e | ||
|
|
abaa9ca674 | ||
|
|
94927f7ed5 | ||
|
|
72b4c250fc | ||
|
|
7fa9b81560 | ||
|
|
b319411d24 | ||
|
|
98409e2bd0 | ||
|
|
3212808cbc | ||
|
|
6e64d336bf | ||
|
|
3c5375d764 | ||
|
|
34e33b5029 | ||
|
|
19e900fa4c | ||
|
|
edf079d205 | ||
|
|
3f58348e3e | ||
|
|
a387e1f9f8 | ||
|
|
685278f3dc | ||
|
|
7ef17373dc | ||
|
|
995a11c11c | ||
|
|
bf566b7af3 | ||
|
|
0edf3448ee | ||
|
|
b6ecd1f835 | ||
|
|
67a955faba | ||
|
|
c692d1dfe8 | ||
|
|
049abd7947 | ||
|
|
8210b66203 | ||
|
|
d7f7b10a2b | ||
|
|
fe804bbe19 | ||
|
|
b9ece16c1f | ||
|
|
c5fcebc6cb | ||
|
|
7a58060c6e | ||
|
|
bb53fda712 | ||
|
|
13d9125f78 | ||
|
|
108ac66933 | ||
|
|
6a2b148d48 | ||
|
|
c138c56967 | ||
|
|
b59b0e9619 | ||
|
|
dfcb7610a1 | ||
|
|
fb8990dc52 | ||
|
|
03e894ee83 | ||
|
|
84820b7283 | ||
|
|
c037f6aa46 | ||
|
|
8a65861876 | ||
|
|
66839b9f20 | ||
|
|
8ab1953f91 | ||
|
|
e482aedeb1 | ||
|
|
be4d236845 | ||
|
|
bc2005748b | ||
|
|
1e3750616b | ||
|
|
8ef842b229 | ||
|
|
4eb1aba9cc | ||
|
|
e090299948 | ||
|
|
2640761351 | ||
|
|
eda5be2b34 | ||
|
|
818276798b | ||
|
|
6fffcdab9a | ||
|
|
a31227c5b8 | ||
|
|
0fadc70732 | ||
|
|
f27cb7cf79 | ||
|
|
fe37f47e23 | ||
|
|
361c8c4388 | ||
|
|
8fdb7ab33b | ||
|
|
d99d11adfa | ||
|
|
8229bb52c2 | ||
|
|
e9299930cd | ||
|
|
af3af6916f | ||
|
|
665e784e28 | ||
|
|
f9b2ff3c52 | ||
|
|
9cb54780e1 | ||
|
|
5393cedd93 | ||
|
|
08233dfe5c | ||
|
|
a5261f6aca | ||
|
|
6421daa54d | ||
|
|
6aca7d47e5 | ||
|
|
7b8d77e859 | ||
|
|
1a1e92c23e | ||
|
|
b76a99a468 | ||
|
|
d7225e909a | ||
|
|
0d891bbbf6 | ||
|
|
e524b7ab14 | ||
|
|
d75859ecb9 | ||
|
|
9051407d8d | ||
|
|
8497551e81 | ||
|
|
2dbcb7e5e7 | ||
|
|
c13523b70d | ||
|
|
a82a86c04f | ||
|
|
af7f5224cc | ||
|
|
321d89d430 | ||
|
|
897e84c207 | ||
|
|
ca6f7b63b1 | ||
|
|
c73f493a85 | ||
|
|
90d908ebf6 | ||
|
|
dd272bbbe7 | ||
|
|
d32b0ce0ab | ||
|
|
cdf4d2707b | ||
|
|
8e31cd0636 | ||
|
|
500df49e04 | ||
|
|
b574d2ba75 | ||
|
|
e082a11b47 | ||
|
|
21d947f99e | ||
|
|
1ec5c73acb | ||
|
|
aff92f000b | ||
|
|
36b5645a62 | ||
|
|
e6b26973cb | ||
|
|
1c0ea899d1 | ||
|
|
d09e3f64ed | ||
|
|
99019cae9d | ||
|
|
c247ba6bce | ||
|
|
2cbc9e1305 | ||
|
|
9a7c1d42eb | ||
|
|
d25e49e61f | ||
|
|
1b7dcd928d | ||
|
|
526cff8d2c | ||
|
|
1ccd939ea7 | ||
|
|
2c8c9ae88b | ||
|
|
8778fc7133 | ||
|
|
98e50dfa68 | ||
|
|
2631ea1ee8 | ||
|
|
f1a5a77e04 | ||
|
|
69f7169eef | ||
|
|
61338badd1 | ||
|
|
538f9f282a | ||
|
|
1124114140 | ||
|
|
16cec53f33 | ||
|
|
a8a617748f | ||
|
|
3dfe18a8cb | ||
|
|
89ec2daaf9 | ||
|
|
0e2af9c404 | ||
|
|
5a5c690ceb | ||
|
|
7f52c1c576 | ||
|
|
f1fb549f7f | ||
|
|
4aeb05c3cf | ||
|
|
9c804a259c | ||
|
|
0e0dec93d9 | ||
|
|
197be37bc7 | ||
|
|
8a2b4f5d20 | ||
|
|
195be7a65e | ||
|
|
760ddfa1aa | ||
|
|
ba273bbb7d | ||
|
|
dfe0063c77 | ||
|
|
ef3909e5c0 | ||
|
|
267fb591bd | ||
|
|
324ab61e56 | ||
|
|
e6e4c7c883 | ||
|
|
40087d8cb2 | ||
|
|
1859f18de2 | ||
|
|
8d37c1cb3f | ||
|
|
02186f9664 | ||
|
|
c62f8640be | ||
|
|
36dcbd6b88 | ||
|
|
f59e6946be | ||
|
|
55d1f3e690 | ||
|
|
4a2f97b1a5 | ||
|
|
a115aff41f | ||
|
|
dbb5cd66b6 | ||
|
|
eccf287180 | ||
|
|
06541715a9 | ||
|
|
714c9bc8bb | ||
|
|
513b9c46b7 | ||
|
|
8e7798f72c | ||
|
|
05a1f41f05 | ||
|
|
92b1d06948 | ||
|
|
f5a17da5d5 | ||
|
|
357239a63f | ||
|
|
f34ac5c921 | ||
|
|
c9ecde1007 | ||
|
|
15a3cfedbf | ||
|
|
e5544cd4f6 | ||
|
|
180337d376 | ||
|
|
7962da9ec3 | ||
|
|
7b50a68917 | ||
|
|
25ec95391e | ||
|
|
7a6f28231f | ||
|
|
231e56e3d3 | ||
|
|
4313695de6 | ||
|
|
4cd0e92bcc | ||
|
|
7d5ca48b75 | ||
|
|
afe5314d89 | ||
|
|
cefe8edcb6 | ||
|
|
c0250338b4 | ||
|
|
c99b8fb2b0 | ||
|
|
ec370881c7 | ||
|
|
49f5602f70 | ||
|
|
8dda7534a7 | ||
|
|
73302e7d6a | ||
|
|
5404a0ebbb | ||
|
|
cc46763fdd | ||
|
|
1cda143f7e | ||
|
|
0e9d966c83 | ||
|
|
2a73eee4f4 | ||
|
|
a068727c00 | ||
|
|
94a85e8677 | ||
|
|
d14bd30ae9 | ||
|
|
5b5e87ac86 | ||
|
|
c203b08c6c | ||
|
|
f0e16e62c8 | ||
|
|
b99d62c36c | ||
|
|
57c278111f | ||
|
|
7a4e874a19 | ||
|
|
20b05b4776 | ||
|
|
ffa5bd9075 | ||
|
|
3362ac9287 | ||
|
|
f164cf5f82 | ||
|
|
a6ba2e7840 | ||
|
|
3de7b5f5f4 | ||
|
|
6ebf8601b2 | ||
|
|
ee479701db | ||
|
|
1f9ba9c1e2 | ||
|
|
070c1dbbc3 | ||
|
|
bb9971d0b5 | ||
|
|
c1030a8230 | ||
|
|
07327d4ee3 | ||
|
|
6960cc2242 | ||
|
|
1beedbbad8 | ||
|
|
d28d7fcdb1 | ||
|
|
2dd1f01205 | ||
|
|
af64902c8f | ||
|
|
2c2f3c28ef | ||
|
|
629abe684d | ||
|
|
86cb5c0c0a | ||
|
|
b26b6aea8f | ||
|
|
d877bda185 | ||
|
|
1e4d8de94a | ||
|
|
4ba3e9f5c1 | ||
|
|
f14d8899b4 | ||
|
|
10e90eeba1 | ||
|
|
1239064f1c | ||
|
|
5f0a75d67f | ||
|
|
a5f8677656 | ||
|
|
5af230679b | ||
|
|
d32369ef48 | ||
|
|
37309e02c3 | ||
|
|
dd60a36d21 | ||
|
|
80a3361df9 | ||
|
|
3c020c5047 | ||
|
|
9519061a3a | ||
|
|
3eb89c75ed | ||
|
|
f3bb435ee3 | ||
|
|
7b2f9a7504 | ||
|
|
9c09cfe40c | ||
|
|
85c91fbc0b | ||
|
|
93b7eabd82 | ||
|
|
a540e1faeb | ||
|
|
c557278b4e | ||
|
|
bf7b3ffb9b | ||
|
|
bbaa0dd2a8 | ||
|
|
27cf269715 | ||
|
|
71e670769b | ||
|
|
e21927c078 | ||
|
|
ac8f2c0a6b | ||
|
|
d1f4a8ef40 | ||
|
|
aa10987ecc | ||
|
|
5d74807b9a | ||
|
|
b5934e8bca | ||
|
|
81ab1755a4 | ||
|
|
ecd3cbf4e0 | ||
|
|
332aa52bdb | ||
|
|
7badeb98b3 | ||
|
|
b5906fabb7 | ||
|
|
ad221ca08f | ||
|
|
eaae8475a8 | ||
|
|
13861cbfc6 | ||
|
|
4523b71928 | ||
|
|
a32bc54c7a | ||
|
|
2df88e57e6 | ||
|
|
c03ee29c5a | ||
|
|
5e4d250fe0 | ||
|
|
4616c8698b | ||
|
|
e831dae4ed | ||
|
|
31d4af785f | ||
|
|
e2606518b0 | ||
|
|
54b14f9a58 | ||
|
|
68b21a0055 | ||
|
|
049bab0101 | ||
|
|
495722e9d1 | ||
|
|
ca2d673a3e | ||
|
|
ce034e61c3 | ||
|
|
daae77293d | ||
|
|
f19e9b479d | ||
|
|
4cb3fe0492 | ||
|
|
b90cc4b604 | ||
|
|
ed2a25c4ff |
2
.editorconfig
Executable file → Normal file
2
.editorconfig
Executable file → Normal file
@ -15,6 +15,6 @@ trim_trailing_whitespace = false
|
||||
indent_style = space
|
||||
indent_size = 2
|
||||
|
||||
[{**.sh,root/etc/cont-init.d/**,root/etc/services.d/**}]
|
||||
[{**.sh,root/etc/s6-overlay/s6-rc.d/**,root/etc/cont-init.d/**,root/etc/services.d/**}]
|
||||
indent_style = space
|
||||
indent_size = 4
|
||||
|
||||
10
.github/CONTRIBUTING.md
vendored
Executable file → Normal file
10
.github/CONTRIBUTING.md
vendored
Executable file → Normal file
@ -6,7 +6,7 @@
|
||||
* Read, and fill the Pull Request template
|
||||
* If this is a fix for a typo (in code, documentation, or the README) please file an issue and let us sort it out. We do not need a PR
|
||||
* If the PR is addressing an existing issue include, closes #\<issue number>, in the body of the PR commit message
|
||||
* If you want to discuss changes, you can also bring it up in [#dev-talk](https://discordapp.com/channels/354974912613449730/757585807061155840) in our [Discord server](https://discord.gg/YWrKVTn)
|
||||
* If you want to discuss changes, you can also bring it up in [#dev-talk](https://discordapp.com/channels/354974912613449730/757585807061155840) in our [Discord server](https://linuxserver.io/discord)
|
||||
|
||||
## Common files
|
||||
|
||||
@ -24,7 +24,7 @@
|
||||
## Readme
|
||||
|
||||
If you would like to change our readme, please __**do not**__ directly edit the readme, as it is auto-generated on each commit.
|
||||
Instead edit the [readme-vars.yml](https://github.com/linuxserver/docker-baseimage-rdesktop/edit/bionic/readme-vars.yml).
|
||||
Instead edit the [readme-vars.yml](https://github.com/linuxserver/docker-baseimage-rdesktop/edit/master/readme-vars.yml).
|
||||
|
||||
These variables are used in a template for our [Jenkins Builder](https://github.com/linuxserver/docker-jenkins-builder) as part of an ansible play.
|
||||
Most of these variables are also carried over to [docs.linuxserver.io](https://docs.linuxserver.io)
|
||||
@ -105,17 +105,17 @@ docker build \
|
||||
-t linuxserver/baseimage-rdesktop:latest .
|
||||
```
|
||||
|
||||
The ARM variants can be built on x86_64 hardware using `multiarch/qemu-user-static`
|
||||
The ARM variants can be built on x86_64 hardware and vice versa using `lscr.io/linuxserver/qemu-static`
|
||||
|
||||
```bash
|
||||
docker run --rm --privileged multiarch/qemu-user-static:register --reset
|
||||
docker run --rm --privileged lscr.io/linuxserver/qemu-static --reset
|
||||
```
|
||||
|
||||
Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64`.
|
||||
|
||||
## Update the changelog
|
||||
|
||||
If you are modifying the Dockerfiles or any of the startup scripts in [root](https://github.com/linuxserver/docker-baseimage-rdesktop/tree/bionic/root), add an entry to the changelog
|
||||
If you are modifying the Dockerfiles or any of the startup scripts in [root](https://github.com/linuxserver/docker-baseimage-rdesktop/tree/master/root), add an entry to the changelog
|
||||
|
||||
```yml
|
||||
changelogs:
|
||||
|
||||
2
.github/ISSUE_TEMPLATE/config.yml
vendored
Executable file → Normal file
2
.github/ISSUE_TEMPLATE/config.yml
vendored
Executable file → Normal file
@ -1,7 +1,7 @@
|
||||
blank_issues_enabled: false
|
||||
contact_links:
|
||||
- name: Discord chat support
|
||||
url: https://discord.gg/YWrKVTn
|
||||
url: https://linuxserver.io/discord
|
||||
about: Realtime support / chat with the community and the team.
|
||||
|
||||
- name: Discourse discussion forum
|
||||
|
||||
40
.github/ISSUE_TEMPLATE/issue.bug.md
vendored
40
.github/ISSUE_TEMPLATE/issue.bug.md
vendored
@ -1,40 +0,0 @@
|
||||
---
|
||||
name: Bug report
|
||||
about: Create a report to help us improve
|
||||
|
||||
---
|
||||
[linuxserverurl]: https://linuxserver.io
|
||||
[][linuxserverurl]
|
||||
|
||||
<!--- If you are new to Docker or this application our issue tracker is **ONLY** used for reporting bugs or requesting features. Please use [our discord server](https://discord.gg/YWrKVTn) for general support. --->
|
||||
|
||||
<!--- Provide a general summary of the bug in the Title above -->
|
||||
|
||||
------------------------------
|
||||
|
||||
## Expected Behavior
|
||||
<!--- Tell us what should happen -->
|
||||
|
||||
## Current Behavior
|
||||
<!--- Tell us what happens instead of the expected behavior -->
|
||||
|
||||
## Steps to Reproduce
|
||||
<!--- Provide a link to a live example, or an unambiguous set of steps to -->
|
||||
<!--- reproduce this bug. Include code to reproduce, if relevant -->
|
||||
1.
|
||||
2.
|
||||
3.
|
||||
4.
|
||||
|
||||
## Environment
|
||||
**OS:**
|
||||
**CPU architecture:** x86_64/arm32/arm64
|
||||
**How docker service was installed:**
|
||||
<!--- ie. from the official docker repo, from the distro repo, nas OS provided, etc. -->
|
||||
<!--- Providing context helps us come up with a solution that is most useful in the real world -->
|
||||
|
||||
## Command used to create docker container (run/create/compose/screenshot)
|
||||
<!--- Provide your docker create/run command or compose yaml snippet, or a screenshot of settings if using a gui to create the container -->
|
||||
|
||||
## Docker logs
|
||||
<!--- Provide a full docker log, output of "docker logs baseimage-rdesktop" -->
|
||||
68
.github/ISSUE_TEMPLATE/issue.bug.yml
vendored
Normal file
68
.github/ISSUE_TEMPLATE/issue.bug.yml
vendored
Normal file
@ -0,0 +1,68 @@
|
||||
# Based on the issue template
|
||||
name: Bug report
|
||||
description: Create a report to help us improve
|
||||
title: "[BUG] <title>"
|
||||
labels: [Bug]
|
||||
body:
|
||||
- type: checkboxes
|
||||
attributes:
|
||||
label: Is there an existing issue for this?
|
||||
description: Please search to see if an issue already exists for the bug you encountered.
|
||||
options:
|
||||
- label: I have searched the existing issues
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Current Behavior
|
||||
description: Tell us what happens instead of the expected behavior.
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Expected Behavior
|
||||
description: Tell us what should happen.
|
||||
validations:
|
||||
required: false
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Steps To Reproduce
|
||||
description: Steps to reproduce the behavior.
|
||||
placeholder: |
|
||||
1. In this environment...
|
||||
2. With this config...
|
||||
3. Run '...'
|
||||
4. See error...
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Environment
|
||||
description: |
|
||||
examples:
|
||||
- **OS**: Ubuntu 20.04
|
||||
- **How docker service was installed**: distro's packagemanager
|
||||
value: |
|
||||
- OS:
|
||||
- How docker service was installed:
|
||||
render: markdown
|
||||
validations:
|
||||
required: false
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Docker creation
|
||||
description: |
|
||||
Command used to create docker container
|
||||
Provide your docker create/run command or compose yaml snippet, or a screenshot of settings if using a gui to create the container
|
||||
render: bash
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
description: |
|
||||
Provide a full docker log, output of "docker logs baseimage-rdesktop"
|
||||
label: Container logs
|
||||
placeholder: |
|
||||
Output of `docker logs baseimage-rdesktop`
|
||||
render: bash
|
||||
validations:
|
||||
required: true
|
||||
25
.github/ISSUE_TEMPLATE/issue.feature.md
vendored
25
.github/ISSUE_TEMPLATE/issue.feature.md
vendored
@ -1,25 +0,0 @@
|
||||
---
|
||||
name: Feature request
|
||||
about: Suggest an idea for this project
|
||||
|
||||
---
|
||||
[linuxserverurl]: https://linuxserver.io
|
||||
[][linuxserverurl]
|
||||
|
||||
<!--- If you are new to Docker or this application our issue tracker is **ONLY** used for reporting bugs or requesting features. Please use [our discord server](https://discord.gg/YWrKVTn) for general support. --->
|
||||
|
||||
<!--- If this acts as a feature request please ask yourself if this modification is something the whole userbase will benefit from --->
|
||||
<!--- If this is a specific change for corner case functionality or plugins please look at making a Docker Mod or local script https://blog.linuxserver.io/2019/09/14/customizing-our-containers/ -->
|
||||
|
||||
<!--- Provide a general summary of the request in the Title above -->
|
||||
|
||||
------------------------------
|
||||
|
||||
## Desired Behavior
|
||||
<!--- Tell us what should happen -->
|
||||
|
||||
## Current Behavior
|
||||
<!--- Tell us what happens instead of the expected behavior -->
|
||||
|
||||
## Alternatives Considered
|
||||
<!--- Tell us what other options you have tried or considered -->
|
||||
31
.github/ISSUE_TEMPLATE/issue.feature.yml
vendored
Normal file
31
.github/ISSUE_TEMPLATE/issue.feature.yml
vendored
Normal file
@ -0,0 +1,31 @@
|
||||
# Based on the issue template
|
||||
name: Feature request
|
||||
description: Suggest an idea for this project
|
||||
title: "[FEAT] <title>"
|
||||
labels: [enhancement]
|
||||
body:
|
||||
- type: checkboxes
|
||||
attributes:
|
||||
label: Is this a new feature request?
|
||||
description: Please search to see if a feature request already exists.
|
||||
options:
|
||||
- label: I have searched the existing issues
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Wanted change
|
||||
description: Tell us what you want to happen.
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Reason for change
|
||||
description: Justify your request, why do you want it, what is the benefit.
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
attributes:
|
||||
label: Proposed code change
|
||||
description: Do you have a potential code change in mind?
|
||||
validations:
|
||||
required: false
|
||||
2
.github/PULL_REQUEST_TEMPLATE.md
vendored
2
.github/PULL_REQUEST_TEMPLATE.md
vendored
@ -21,7 +21,7 @@
|
||||
|
||||
------------------------------
|
||||
|
||||
- [ ] I have read the [contributing](https://github.com/linuxserver/docker-baseimage-rdesktop/blob/bionic/.github/CONTRIBUTING.md) guideline and understand that I have made the correct modifications
|
||||
- [ ] I have read the [contributing](https://github.com/linuxserver/docker-baseimage-rdesktop/blob/master/.github/CONTRIBUTING.md) guideline and understand that I have made the correct modifications
|
||||
|
||||
------------------------------
|
||||
|
||||
|
||||
19
.github/workflows/call_issue_pr_tracker.yml
vendored
Normal file
19
.github/workflows/call_issue_pr_tracker.yml
vendored
Normal file
@ -0,0 +1,19 @@
|
||||
name: Issue & PR Tracker
|
||||
|
||||
on:
|
||||
issues:
|
||||
types: [opened,reopened,labeled,unlabeled,closed]
|
||||
pull_request_target:
|
||||
types: [opened,reopened,review_requested,review_request_removed,labeled,unlabeled,closed]
|
||||
pull_request_review:
|
||||
types: [submitted,edited,dismissed]
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
manage-project:
|
||||
permissions:
|
||||
issues: write
|
||||
uses: linuxserver/github-workflows/.github/workflows/issue-pr-tracker.yml@v1
|
||||
secrets: inherit
|
||||
16
.github/workflows/call_issues_cron.yml
vendored
Normal file
16
.github/workflows/call_issues_cron.yml
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
name: Mark stale issues and pull requests
|
||||
on:
|
||||
schedule:
|
||||
- cron: '25 7 * * *'
|
||||
workflow_dispatch:
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
stale:
|
||||
permissions:
|
||||
issues: write
|
||||
pull-requests: write
|
||||
uses: linuxserver/github-workflows/.github/workflows/issues-cron.yml@v1
|
||||
secrets: inherit
|
||||
20
.github/workflows/external_trigger.yml
vendored
20
.github/workflows/external_trigger.yml
vendored
@ -3,14 +3,26 @@ name: External Trigger Main
|
||||
on:
|
||||
workflow_dispatch:
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
external-trigger-bionic:
|
||||
external-trigger-master:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.3
|
||||
- uses: actions/checkout@v4.1.1
|
||||
|
||||
- name: External Trigger
|
||||
if: github.ref == 'refs/heads/bionic'
|
||||
if: github.ref == 'refs/heads/master'
|
||||
env:
|
||||
SKIP_EXTERNAL_TRIGGER: ${{ vars.SKIP_EXTERNAL_TRIGGER }}
|
||||
run: |
|
||||
echo "**** No external release, exiting ****"
|
||||
printf "# External trigger for docker-baseimage-rdesktop\n\n" >> $GITHUB_STEP_SUMMARY
|
||||
echo "Type is \`os\`" >> $GITHUB_STEP_SUMMARY
|
||||
echo "No external release, exiting" >> $GITHUB_STEP_SUMMARY
|
||||
exit 0
|
||||
if grep -q "^baseimage-rdesktop_master_${EXT_RELEASE}" <<< "${SKIP_EXTERNAL_TRIGGER}"; then
|
||||
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
|
||||
echo "> Github organizational variable \`SKIP_EXTERNAL_TRIGGER\` matches current external release; skipping trigger." >> $GITHUB_STEP_SUMMARY
|
||||
exit 0
|
||||
fi
|
||||
|
||||
37
.github/workflows/external_trigger_scheduler.yml
vendored
37
.github/workflows/external_trigger_scheduler.yml
vendored
@ -2,42 +2,47 @@ name: External Trigger Scheduler
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '32 * * * *'
|
||||
- cron: '55 * * * *'
|
||||
workflow_dispatch:
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
external-trigger-scheduler:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.3
|
||||
- uses: actions/checkout@v4.1.1
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
|
||||
- name: External Trigger Scheduler
|
||||
run: |
|
||||
echo "**** Branches found: ****"
|
||||
git for-each-ref --format='%(refname:short)' refs/remotes
|
||||
echo "**** Pulling the yq docker image ****"
|
||||
docker pull ghcr.io/linuxserver/yq
|
||||
for br in $(git for-each-ref --format='%(refname:short)' refs/remotes)
|
||||
printf "# External trigger scheduler for docker-baseimage-rdesktop\n\n" >> $GITHUB_STEP_SUMMARY
|
||||
printf "Found the branches:\n\n%s\n" "$(git for-each-ref --format='- %(refname:lstrip=3)' refs/remotes)" >> $GITHUB_STEP_SUMMARY
|
||||
for br in $(git for-each-ref --format='%(refname:lstrip=3)' refs/remotes)
|
||||
do
|
||||
br=$(echo "$br" | sed 's|origin/||g')
|
||||
echo "**** Evaluating branch ${br} ****"
|
||||
ls_branch=$(curl -sX GET https://raw.githubusercontent.com/linuxserver/docker-baseimage-rdesktop/${br}/jenkins-vars.yml \
|
||||
| docker run --rm -i --entrypoint yq ghcr.io/linuxserver/yq -r .ls_branch)
|
||||
if [ "$br" == "$ls_branch" ]; then
|
||||
echo "**** Branch ${br} appears to be live; checking workflow. ****"
|
||||
if [[ "${br}" == "HEAD" ]]; then
|
||||
printf "\nSkipping %s.\n" ${br} >> $GITHUB_STEP_SUMMARY
|
||||
continue
|
||||
fi
|
||||
printf "\n## Evaluating \`%s\`\n\n" ${br} >> $GITHUB_STEP_SUMMARY
|
||||
ls_jenkins_vars=$(curl -sX GET https://raw.githubusercontent.com/linuxserver/docker-baseimage-rdesktop/${br}/jenkins-vars.yml)
|
||||
ls_branch=$(echo "${ls_jenkins_vars}" | yq -r '.ls_branch')
|
||||
ls_trigger=$(echo "${ls_jenkins_vars}" | yq -r '.external_type')
|
||||
if [[ "${br}" == "${ls_branch}" ]] && [[ "${ls_trigger}" != "os" ]]; then
|
||||
echo "Branch appears to be live and trigger is not os; checking workflow." >> $GITHUB_STEP_SUMMARY
|
||||
if curl -sfX GET https://raw.githubusercontent.com/linuxserver/docker-baseimage-rdesktop/${br}/.github/workflows/external_trigger.yml > /dev/null 2>&1; then
|
||||
echo "**** Workflow exists. Triggering external trigger workflow for branch ${br} ****."
|
||||
echo "Triggering external trigger workflow for branch." >> $GITHUB_STEP_SUMMARY
|
||||
curl -iX POST \
|
||||
-H "Authorization: token ${{ secrets.CR_PAT }}" \
|
||||
-H "Accept: application/vnd.github.v3+json" \
|
||||
-d "{\"ref\":\"refs/heads/${br}\"}" \
|
||||
https://api.github.com/repos/linuxserver/docker-baseimage-rdesktop/actions/workflows/external_trigger.yml/dispatches
|
||||
else
|
||||
echo "**** Workflow doesn't exist; skipping trigger. ****"
|
||||
echo "Skipping branch due to no external trigger workflow present." >> $GITHUB_STEP_SUMMARY
|
||||
fi
|
||||
else
|
||||
echo "**** ${br} appears to be a dev branch; skipping trigger. ****"
|
||||
echo "Skipping branch due to being detected as dev branch or having no external version." >> $GITHUB_STEP_SUMMARY
|
||||
fi
|
||||
done
|
||||
|
||||
10
.github/workflows/greetings.yml
vendored
Executable file → Normal file
10
.github/workflows/greetings.yml
vendored
Executable file → Normal file
@ -2,12 +2,18 @@ name: Greetings
|
||||
|
||||
on: [pull_request_target, issues]
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
greeting:
|
||||
permissions:
|
||||
issues: write
|
||||
pull-requests: write
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/first-interaction@v1
|
||||
with:
|
||||
issue-message: 'Thanks for opening your first issue here! Be sure to follow the [bug](https://github.com/linuxserver/docker-baseimage-rdesktop/blob/bionic/.github/ISSUE_TEMPLATE/issue.bug.md) or [feature](https://github.com/linuxserver/docker-baseimage-rdesktop/blob/bionic/.github/ISSUE_TEMPLATE/issue.feature.md) issue templates!'
|
||||
pr-message: 'Thanks for opening this pull request! Be sure to follow the [pull request template](https://github.com/linuxserver/docker-baseimage-rdesktop/blob/bionic/.github/PULL_REQUEST_TEMPLATE.md)!'
|
||||
issue-message: 'Thanks for opening your first issue here! Be sure to follow the relevant issue templates, or risk having this issue marked as invalid.'
|
||||
pr-message: 'Thanks for opening this pull request! Be sure to follow the [pull request template](https://github.com/linuxserver/docker-baseimage-rdesktop/blob/master/.github/PULL_REQUEST_TEMPLATE.md)!'
|
||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
38
.github/workflows/package_trigger.yml
vendored
38
.github/workflows/package_trigger.yml
vendored
@ -1,38 +0,0 @@
|
||||
name: Package Trigger Main
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
package-trigger-bionic:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.3
|
||||
|
||||
- name: Package Trigger
|
||||
if: github.ref == 'refs/heads/bionic'
|
||||
run: |
|
||||
if [ -n "${{ secrets.PAUSE_PACKAGE_TRIGGER_BASEIMAGE_RDESKTOP_BIONIC }}" ]; then
|
||||
echo "**** Github secret PAUSE_PACKAGE_TRIGGER_BASEIMAGE_RDESKTOP_BIONIC is set; skipping trigger. ****"
|
||||
exit 0
|
||||
fi
|
||||
if [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-baseimage-rdesktop/job/bionic/lastBuild/api/json | jq -r '.building') == "true" ]; then
|
||||
echo "**** There already seems to be an active build on Jenkins; skipping package trigger ****"
|
||||
exit 0
|
||||
fi
|
||||
echo "**** Package trigger running off of bionic branch. To disable, set a Github secret named \"PAUSE_PACKAGE_TRIGGER_BASEIMAGE_RDESKTOP_BIONIC\". ****"
|
||||
response=$(curl -iX POST \
|
||||
https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-baseimage-rdesktop/job/bionic/buildWithParameters?PACKAGE_CHECK=true \
|
||||
--user ${{ secrets.JENKINS_USER }}:${{ secrets.JENKINS_TOKEN }} | grep -i location | sed "s|^[L|l]ocation: \(.*\)|\1|")
|
||||
echo "**** Jenkins job queue url: ${response%$'\r'} ****"
|
||||
echo "**** Sleeping 10 seconds until job starts ****"
|
||||
sleep 10
|
||||
buildurl=$(curl -s "${response%$'\r'}api/json" | jq -r '.executable.url')
|
||||
buildurl="${buildurl%$'\r'}"
|
||||
echo "**** Jenkins job build url: ${buildurl} ****"
|
||||
echo "**** Attempting to change the Jenkins job description ****"
|
||||
curl -iX POST \
|
||||
"${buildurl}submitDescription" \
|
||||
--user ${{ secrets.JENKINS_USER }}:${{ secrets.JENKINS_TOKEN }} \
|
||||
--data-urlencode "description=GHA package trigger https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}" \
|
||||
--data-urlencode "Submit=Submit"
|
||||
111
.github/workflows/package_trigger_scheduler.yml
vendored
111
.github/workflows/package_trigger_scheduler.yml
vendored
@ -2,49 +2,102 @@ name: Package Trigger Scheduler
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '04 6 * * 4'
|
||||
- cron: '52 13 * * 5'
|
||||
workflow_dispatch:
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
package-trigger-scheduler:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2.3.3
|
||||
- uses: actions/checkout@v4.1.1
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
|
||||
- name: Package Trigger Scheduler
|
||||
env:
|
||||
SKIP_PACKAGE_TRIGGER: ${{ vars.SKIP_PACKAGE_TRIGGER }}
|
||||
run: |
|
||||
echo "**** Branches found: ****"
|
||||
git for-each-ref --format='%(refname:short)' refs/remotes
|
||||
echo "**** Pulling the yq docker image ****"
|
||||
docker pull ghcr.io/linuxserver/yq
|
||||
for br in $(git for-each-ref --format='%(refname:short)' refs/remotes)
|
||||
printf "# Package trigger scheduler for docker-baseimage-rdesktop\n\n" >> $GITHUB_STEP_SUMMARY
|
||||
printf "Found the branches:\n\n%s\n" "$(git for-each-ref --format='- %(refname:lstrip=3)' refs/remotes)" >> $GITHUB_STEP_SUMMARY
|
||||
for br in $(git for-each-ref --format='%(refname:lstrip=3)' refs/remotes)
|
||||
do
|
||||
br=$(echo "$br" | sed 's|origin/||g')
|
||||
echo "**** Evaluating branch ${br} ****"
|
||||
ls_branch=$(curl -sX GET https://raw.githubusercontent.com/linuxserver/docker-baseimage-rdesktop/${br}/jenkins-vars.yml \
|
||||
| docker run --rm -i --entrypoint yq ghcr.io/linuxserver/yq -r .ls_branch)
|
||||
if [ "${br}" == "${ls_branch}" ]; then
|
||||
echo "**** Branch ${br} appears to be live; checking workflow. ****"
|
||||
if curl -sfX GET https://raw.githubusercontent.com/linuxserver/docker-baseimage-rdesktop/${br}/.github/workflows/package_trigger.yml > /dev/null 2>&1; then
|
||||
echo "**** Workflow exists. Triggering package trigger workflow for branch ${br}. ****"
|
||||
triggered_branches="${triggered_branches}${br} "
|
||||
curl -iX POST \
|
||||
-H "Authorization: token ${{ secrets.CR_PAT }}" \
|
||||
-H "Accept: application/vnd.github.v3+json" \
|
||||
-d "{\"ref\":\"refs/heads/${br}\"}" \
|
||||
https://api.github.com/repos/linuxserver/docker-baseimage-rdesktop/actions/workflows/package_trigger.yml/dispatches
|
||||
sleep 30
|
||||
if [[ "${br}" == "HEAD" ]]; then
|
||||
printf "\nSkipping %s.\n" ${br} >> $GITHUB_STEP_SUMMARY
|
||||
continue
|
||||
fi
|
||||
printf "\n## Evaluating \`%s\`\n\n" ${br} >> $GITHUB_STEP_SUMMARY
|
||||
JENKINS_VARS=$(curl -sX GET https://raw.githubusercontent.com/linuxserver/docker-baseimage-rdesktop/${br}/jenkins-vars.yml)
|
||||
if ! curl -sfX GET https://raw.githubusercontent.com/linuxserver/docker-baseimage-rdesktop/${br}/Jenkinsfile >/dev/null 2>&1; then
|
||||
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
|
||||
echo "> No Jenkinsfile found. Branch is either deprecated or is an early dev branch." >> $GITHUB_STEP_SUMMARY
|
||||
skipped_branches="${skipped_branches}${br} "
|
||||
elif [[ "${br}" == $(yq -r '.ls_branch' <<< "${JENKINS_VARS}") ]]; then
|
||||
echo "Branch appears to be live; checking workflow." >> $GITHUB_STEP_SUMMARY
|
||||
README_VARS=$(curl -sX GET https://raw.githubusercontent.com/linuxserver/docker-baseimage-rdesktop/${br}/readme-vars.yml)
|
||||
if [[ $(yq -r '.project_deprecation_status' <<< "${README_VARS}") == "true" ]]; then
|
||||
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
|
||||
echo "> Branch appears to be deprecated; skipping trigger." >> $GITHUB_STEP_SUMMARY
|
||||
skipped_branches="${skipped_branches}${br} "
|
||||
elif [[ $(yq -r '.skip_package_check' <<< "${JENKINS_VARS}") == "true" ]]; then
|
||||
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
|
||||
echo "> Skipping branch ${br} due to \`skip_package_check\` being set in \`jenkins-vars.yml\`." >> $GITHUB_STEP_SUMMARY
|
||||
skipped_branches="${skipped_branches}${br} "
|
||||
elif grep -q "^baseimage-rdesktop_${br}" <<< "${SKIP_PACKAGE_TRIGGER}"; then
|
||||
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
|
||||
echo "> Github organizational variable \`SKIP_PACKAGE_TRIGGER\` contains \`baseimage-rdesktop_${br}\`; skipping trigger." >> $GITHUB_STEP_SUMMARY
|
||||
skipped_branches="${skipped_branches}${br} "
|
||||
elif [ $(curl -s https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-baseimage-rdesktop/job/${br}/lastBuild/api/json | jq -r '.building' 2>/dev/null) == "true" ]; then
|
||||
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
|
||||
echo "> There already seems to be an active build on Jenkins; skipping package trigger for ${br}" >> $GITHUB_STEP_SUMMARY
|
||||
skipped_branches="${skipped_branches}${br} "
|
||||
else
|
||||
echo "**** Workflow doesn't exist; skipping trigger. ****"
|
||||
echo "> [!NOTE]" >> $GITHUB_STEP_SUMMARY
|
||||
echo "> Triggering package trigger for branch ${br}" >> $GITHUB_STEP_SUMMARY
|
||||
printf "> To disable, add \`baseimage-rdesktop_%s\` into the Github organizational variable \`SKIP_PACKAGE_TRIGGER\`.\n\n" "${br}" >> $GITHUB_STEP_SUMMARY
|
||||
triggered_branches="${triggered_branches}${br} "
|
||||
response=$(curl -iX POST \
|
||||
https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-baseimage-rdesktop/job/${br}/buildWithParameters?PACKAGE_CHECK=true \
|
||||
--user ${{ secrets.JENKINS_USER }}:${{ secrets.JENKINS_TOKEN }} | grep -i location | sed "s|^[L|l]ocation: \(.*\)|\1|")
|
||||
if [[ -z "${response}" ]]; then
|
||||
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
|
||||
echo "> Jenkins build could not be triggered. Skipping branch."
|
||||
continue
|
||||
fi
|
||||
echo "Jenkins [job queue url](${response%$'\r'})" >> $GITHUB_STEP_SUMMARY
|
||||
echo "Sleeping 10 seconds until job starts" >> $GITHUB_STEP_SUMMARY
|
||||
sleep 10
|
||||
buildurl=$(curl -s "${response%$'\r'}api/json" | jq -r '.executable.url')
|
||||
buildurl="${buildurl%$'\r'}"
|
||||
echo "Jenkins job [build url](${buildurl})" >> $GITHUB_STEP_SUMMARY
|
||||
echo "Attempting to change the Jenkins job description" >> $GITHUB_STEP_SUMMARY
|
||||
if ! curl -ifX POST \
|
||||
"${buildurl}submitDescription" \
|
||||
--user ${{ secrets.JENKINS_USER }}:${{ secrets.JENKINS_TOKEN }} \
|
||||
--data-urlencode "description=GHA package trigger https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}" \
|
||||
--data-urlencode "Submit=Submit"; then
|
||||
echo "> [!WARNING]" >> $GITHUB_STEP_SUMMARY
|
||||
echo "> Unable to change the Jenkins job description."
|
||||
fi
|
||||
sleep 20
|
||||
fi
|
||||
else
|
||||
echo "**** ${br} appears to be a dev branch; skipping trigger. ****"
|
||||
echo "Skipping branch ${br} due to being detected as dev branch." >> $GITHUB_STEP_SUMMARY
|
||||
fi
|
||||
done
|
||||
echo "**** Package check build(s) triggered for branch(es): ${triggered_branches} ****"
|
||||
echo "**** Notifying Discord ****"
|
||||
curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://cdn.discordapp.com/avatars/354986384542662657/df91181b3f1cf0ef1592fbe18e0962d7.png","embeds": [{"color": 9802903,
|
||||
"description": "**Package Check Build(s) Triggered for baseimage-rdesktop** \n**Branch(es):** '"${triggered_branches}"' \n**Build URL:** '"https://ci.linuxserver.io/blue/organizations/jenkins/Docker-Pipeline-Builders%2Fdocker-baseimage-rdesktop/activity/"' \n"}],
|
||||
"username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}
|
||||
if [[ -n "${triggered_branches}" ]] || [[ -n "${skipped_branches}" ]]; then
|
||||
if [[ -n "${triggered_branches}" ]]; then
|
||||
NOTIFY_BRANCHES="**Triggered:** ${triggered_branches} \n"
|
||||
NOTIFY_BUILD_URL="**Build URL:** https://ci.linuxserver.io/blue/organizations/jenkins/Docker-Pipeline-Builders%2Fdocker-baseimage-rdesktop/activity/ \n"
|
||||
echo "**** Package check build(s) triggered for branch(es): ${triggered_branches} ****"
|
||||
fi
|
||||
if [[ -n "${skipped_branches}" ]]; then
|
||||
NOTIFY_BRANCHES="${NOTIFY_BRANCHES}**Skipped:** ${skipped_branches} \n"
|
||||
fi
|
||||
echo "**** Notifying Discord ****"
|
||||
curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://cdn.discordapp.com/avatars/354986384542662657/df91181b3f1cf0ef1592fbe18e0962d7.png","embeds": [{"color": 9802903,
|
||||
"description": "**Package Check Build(s) for baseimage-rdesktop** \n'"${NOTIFY_BRANCHES}"''"${NOTIFY_BUILD_URL}"'"}],
|
||||
"username": "Github Actions"}' ${{ secrets.DISCORD_WEBHOOK }}
|
||||
fi
|
||||
|
||||
12
.github/workflows/permissions.yml
vendored
Normal file
12
.github/workflows/permissions.yml
vendored
Normal file
@ -0,0 +1,12 @@
|
||||
name: Permission check
|
||||
on:
|
||||
pull_request_target:
|
||||
paths:
|
||||
- '**/run'
|
||||
- '**/finish'
|
||||
- '**/check'
|
||||
- 'root/migrations/*'
|
||||
|
||||
jobs:
|
||||
permission_check:
|
||||
uses: linuxserver/github-workflows/.github/workflows/init-svc-executable-permissions.yml@v1
|
||||
23
.github/workflows/stale.yml
vendored
23
.github/workflows/stale.yml
vendored
@ -1,23 +0,0 @@
|
||||
name: Mark stale issues and pull requests
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: "30 1 * * *"
|
||||
|
||||
jobs:
|
||||
stale:
|
||||
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/stale@v3
|
||||
with:
|
||||
stale-issue-message: "This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions."
|
||||
stale-pr-message: "This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions."
|
||||
stale-issue-label: 'no-issue-activity'
|
||||
stale-pr-label: 'no-pr-activity'
|
||||
days-before-stale: 30
|
||||
days-before-close: 365
|
||||
exempt-issue-labels: 'awaiting-approval,work-in-progress'
|
||||
exempt-pr-labels: 'awaiting-approval,work-in-progress'
|
||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
220
Dockerfile
220
Dockerfile
@ -1,58 +1,54 @@
|
||||
FROM ghcr.io/linuxserver/baseimage-ubuntu:bionic as buildstage
|
||||
# syntax=docker/dockerfile:1
|
||||
|
||||
ARG XRDP_PULSE_VERSION=v0.4
|
||||
FROM ghcr.io/linuxserver/baseimage-ubuntu:noble AS buildstage
|
||||
|
||||
ARG XRDP_PULSE_VERSION=v0.7
|
||||
ARG DEBIAN_FRONTEND="noninteractive"
|
||||
|
||||
RUN \
|
||||
echo "**** install build deps ****" && \
|
||||
sed -i 's/# deb-src/deb-src/g' /etc/apt/sources.list && \
|
||||
apt-get update && \
|
||||
apt-get install -y \
|
||||
build-essential \
|
||||
devscripts \
|
||||
dpkg-dev \
|
||||
git \
|
||||
libpulse-dev \
|
||||
pulseaudio && \
|
||||
apt build-dep -y \
|
||||
pulseaudio \
|
||||
xrdp
|
||||
echo "**** install build deps ****" && \
|
||||
sed -i 's/# deb-src/deb-src/g' /etc/apt/sources.list && \
|
||||
apt-get update && \
|
||||
apt-get install -y \
|
||||
build-essential \
|
||||
devscripts \
|
||||
dpkg-dev \
|
||||
git \
|
||||
libpulse-dev \
|
||||
meson \
|
||||
pulseaudio && \
|
||||
apt build-dep -y \
|
||||
pulseaudio \
|
||||
xrdp
|
||||
|
||||
RUN \
|
||||
echo "**** build pulseaudio modules ****" && \
|
||||
mkdir -p /buildout/var/lib/xrdp-pulseaudio-installer && \
|
||||
tmp=$(mktemp -d); cd "$tmp" && \
|
||||
pulseaudio_version=$(dpkg-query -W -f='${source:Version}' pulseaudio|awk -F: '{print $2}') && \
|
||||
pulseaudio_upstream_version=$(dpkg-query -W -f='${source:Upstream-Version}' pulseaudio) && \
|
||||
set -- $(apt-cache policy pulseaudio | fgrep -A1 '***' | tail -1) && \
|
||||
mirror=$2 && \
|
||||
suite=${3#*/} && \
|
||||
dget -u "$mirror/pool/$suite/p/pulseaudio/pulseaudio_$pulseaudio_version.dsc" && \
|
||||
cd "pulseaudio-$pulseaudio_upstream_version" && \
|
||||
./configure && \
|
||||
cd - && \
|
||||
git clone https://github.com/neutrinolabs/pulseaudio-module-xrdp.git && \
|
||||
cd pulseaudio-module-xrdp && \
|
||||
git checkout ${XRDP_PULSE_VERSION} && \
|
||||
./bootstrap && \
|
||||
./configure PULSE_DIR="$tmp/pulseaudio-$pulseaudio_upstream_version" && \
|
||||
make && \
|
||||
install -t "/buildout/var/lib/xrdp-pulseaudio-installer" -D -m 644 src/.libs/*.so
|
||||
echo "**** build pulseaudio modules ****" && \
|
||||
mkdir -p /buildout/var/lib/xrdp-pulseaudio-installer && \
|
||||
tmp=$(mktemp -d); cd "$tmp" && \
|
||||
pulseaudio_upstream_version=$(dpkg-query -W -f='${source:Upstream-Version}' pulseaudio) && \
|
||||
apt-get source pulseaudio && \
|
||||
cd "pulseaudio-$pulseaudio_upstream_version" && \
|
||||
meson build && \
|
||||
cd - && \
|
||||
git clone https://github.com/neutrinolabs/pulseaudio-module-xrdp.git && \
|
||||
cd pulseaudio-module-xrdp && \
|
||||
git checkout ${XRDP_PULSE_VERSION} && \
|
||||
./bootstrap && \
|
||||
./configure PULSE_DIR="$tmp/pulseaudio-$pulseaudio_upstream_version" && \
|
||||
make && \
|
||||
install -t "/buildout/var/lib/xrdp-pulseaudio-installer" -D -m 644 src/.libs/*.so
|
||||
|
||||
RUN \
|
||||
echo "**** build xrdp with fuse disabled ****" && \
|
||||
cd /tmp && \
|
||||
apt-get source xrdp && \
|
||||
cd xrdp-* && \
|
||||
sed -i 's/--enable-fuse/--disable-fuse/g' debian/rules && \
|
||||
debuild -b -uc -us && \
|
||||
cp -ax ../xrdp_*.deb /buildout/xrdp.deb
|
||||
|
||||
# docker compose
|
||||
FROM ghcr.io/linuxserver/docker-compose:amd64-latest as compose
|
||||
echo "**** build xrdp with fuse disabled ****" && \
|
||||
cd /tmp && \
|
||||
apt-get source xrdp && \
|
||||
cd xrdp-* && \
|
||||
sed -i 's/--enable-fuse/--disable-fuse/g' debian/rules && \
|
||||
debuild -b -uc -us && \
|
||||
cp -ax ../xrdp_*.deb /buildout/xrdp.deb
|
||||
|
||||
# runtime stage
|
||||
FROM ghcr.io/linuxserver/baseimage-ubuntu:bionic
|
||||
FROM ghcr.io/linuxserver/baseimage-ubuntu:noble
|
||||
|
||||
# set version label
|
||||
ARG BUILD_DATE
|
||||
@ -62,53 +58,97 @@ LABEL maintainer="thelamer"
|
||||
|
||||
# copy over libs and installers from build stage
|
||||
COPY --from=buildstage /buildout/ /
|
||||
COPY --from=compose /usr/local/bin/docker-compose /usr/local/bin/docker-compose
|
||||
|
||||
#Add needed nvidia environment variables for https://github.com/NVIDIA/nvidia-docker
|
||||
ENV NVIDIA_DRIVER_CAPABILITIES=all \
|
||||
HOME=/config
|
||||
|
||||
RUN \
|
||||
echo "**** install deps ****" && \
|
||||
ldconfig && \
|
||||
apt-get update && \
|
||||
DEBIAN_FRONTEND=noninteractive \
|
||||
apt-get install -y --no-install-recommends \
|
||||
apt-transport-https \
|
||||
ca-certificates \
|
||||
curl \
|
||||
dbus-x11 \
|
||||
gawk \
|
||||
gnupg2 \
|
||||
libfuse2 \
|
||||
libx11-dev \
|
||||
libxfixes3 \
|
||||
libxml2 \
|
||||
libxrandr2 \
|
||||
openssh-client \
|
||||
pulseaudio \
|
||||
software-properties-common \
|
||||
sudo \
|
||||
x11-apps \
|
||||
x11-xserver-utils \
|
||||
xfonts-base \
|
||||
xorgxrdp \
|
||||
xrdp \
|
||||
xserver-xorg-core \
|
||||
xutils \
|
||||
zlib1g && \
|
||||
dpkg -i /xrdp.deb && \
|
||||
rm /xrdp.deb && \
|
||||
echo "**** install docker ****" && \
|
||||
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add - && \
|
||||
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable" && \
|
||||
apt-get update && \
|
||||
apt-get install -y --no-install-recommends \
|
||||
docker-ce-cli && \
|
||||
echo "**** cleanup and user perms ****" && \
|
||||
echo "abc:abc" | chpasswd && \
|
||||
usermod -aG sudo abc && \
|
||||
apt-get autoclean && \
|
||||
rm -rf \
|
||||
/var/lib/apt/lists/* \
|
||||
/var/tmp/* \
|
||||
/tmp/*
|
||||
echo "**** enable locales ****" && \
|
||||
sed -i \
|
||||
'/locale/d' \
|
||||
/etc/dpkg/dpkg.cfg.d/excludes && \
|
||||
echo "**** add docker repos ****" && \
|
||||
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | tee /usr/share/keyrings/docker.asc >/dev/null && \
|
||||
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker.asc] https://download.docker.com/linux/ubuntu noble stable" > /etc/apt/sources.list.d/docker.list && \
|
||||
echo "**** install deps ****" && \
|
||||
ldconfig && \
|
||||
apt-get update && \
|
||||
DEBIAN_FRONTEND=noninteractive \
|
||||
apt-get install -y --no-install-recommends \
|
||||
apt-transport-https \
|
||||
ca-certificates \
|
||||
dbus-x11 \
|
||||
docker-ce-cli \
|
||||
docker-compose-plugin \
|
||||
fonts-noto-color-emoji \
|
||||
fonts-noto-core \
|
||||
gawk \
|
||||
gnupg2 \
|
||||
libfuse2 \
|
||||
libx11-dev \
|
||||
libxfixes3 \
|
||||
libxml2 \
|
||||
libxrandr2 \
|
||||
locales-all \
|
||||
mesa-va-drivers \
|
||||
mesa-vulkan-drivers \
|
||||
netcat-openbsd \
|
||||
openbox \
|
||||
openssh-client \
|
||||
pulseaudio \
|
||||
software-properties-common \
|
||||
sudo \
|
||||
x11-apps \
|
||||
x11-xserver-utils \
|
||||
xfonts-base \
|
||||
xorgxrdp \
|
||||
xrdp \
|
||||
xserver-common \
|
||||
xserver-xorg-core \
|
||||
xserver-xorg-video-amdgpu \
|
||||
xserver-xorg-video-ati \
|
||||
xserver-xorg-video-intel \
|
||||
xserver-xorg-video-nouveau \
|
||||
xserver-xorg-video-qxl \
|
||||
xterm \
|
||||
xutils \
|
||||
zlib1g && \
|
||||
dpkg -i /xrdp.deb && \
|
||||
rm /xrdp.deb && \
|
||||
echo "**** openbox tweaks ****" && \
|
||||
sed -i \
|
||||
-e 's/NLIMC/NLMC/g' \
|
||||
-e '/debian-menu/d' \
|
||||
-e 's|</applications>| <application class="*"><maximized>yes</maximized></application>\n</applications>|' \
|
||||
-e 's|</keyboard>| <keybind key="C-S-d"><action name="ToggleDecorations"/></keybind>\n</keyboard>|' \
|
||||
/etc/xdg/openbox/rc.xml && \
|
||||
echo "**** user perms ****" && \
|
||||
sed -e 's/%sudo ALL=(ALL:ALL) ALL/%sudo ALL=(ALL:ALL) NOPASSWD: ALL/g' \
|
||||
-i /etc/sudoers && \
|
||||
echo "abc:abc" | chpasswd && \
|
||||
usermod -s /bin/bash abc && \
|
||||
usermod -aG sudo abc && \
|
||||
echo "**** proot-apps ****" && \
|
||||
mkdir /proot-apps/ && \
|
||||
PAPPS_RELEASE=$(curl -sX GET "https://api.github.com/repos/linuxserver/proot-apps/releases/latest" \
|
||||
| awk '/tag_name/{print $4;exit}' FS='[""]') && \
|
||||
curl -L https://github.com/linuxserver/proot-apps/releases/download/${PAPPS_RELEASE}/proot-apps-x86_64.tar.gz \
|
||||
| tar -xzf - -C /proot-apps/ && \
|
||||
echo "${PAPPS_RELEASE}" > /proot-apps/pversion && \
|
||||
echo "**** locales ****" && \
|
||||
for LOCALE in $(curl -sL https://raw.githubusercontent.com/thelamer/lang-stash/master/langs); do \
|
||||
localedef -i $LOCALE -f UTF-8 $LOCALE.UTF-8; \
|
||||
done && \
|
||||
echo "**** theme ****" && \
|
||||
curl -s https://raw.githubusercontent.com/thelamer/lang-stash/master/theme.tar.gz \
|
||||
| tar xzvf - -C /usr/share/themes/Clearlooks/openbox-3/ && \
|
||||
echo "**** cleanup ****" && \
|
||||
apt-get autoclean && \
|
||||
rm -rf \
|
||||
/var/lib/apt/lists/* \
|
||||
/var/tmp/* \
|
||||
/tmp/*
|
||||
|
||||
# add local files
|
||||
COPY /root /
|
||||
|
||||
@ -1,58 +1,54 @@
|
||||
FROM ghcr.io/linuxserver/baseimage-ubuntu:arm64v8-bionic as buildstage
|
||||
# syntax=docker/dockerfile:1
|
||||
|
||||
ARG XRDP_PULSE_VERSION=v0.4
|
||||
FROM ghcr.io/linuxserver/baseimage-ubuntu:arm64v8-noble AS buildstage
|
||||
|
||||
ARG XRDP_PULSE_VERSION=v0.7
|
||||
ARG DEBIAN_FRONTEND="noninteractive"
|
||||
|
||||
RUN \
|
||||
echo "**** install build deps ****" && \
|
||||
sed -i 's/# deb-src/deb-src/g' /etc/apt/sources.list && \
|
||||
apt-get update && \
|
||||
apt-get install -y \
|
||||
build-essential \
|
||||
devscripts \
|
||||
dpkg-dev \
|
||||
git \
|
||||
libpulse-dev \
|
||||
pulseaudio && \
|
||||
apt build-dep -y \
|
||||
pulseaudio \
|
||||
xrdp
|
||||
echo "**** install build deps ****" && \
|
||||
sed -i 's/# deb-src/deb-src/g' /etc/apt/sources.list && \
|
||||
apt-get update && \
|
||||
apt-get install -y \
|
||||
build-essential \
|
||||
devscripts \
|
||||
dpkg-dev \
|
||||
git \
|
||||
libpulse-dev \
|
||||
meson \
|
||||
pulseaudio && \
|
||||
apt build-dep -y \
|
||||
pulseaudio \
|
||||
xrdp
|
||||
|
||||
RUN \
|
||||
echo "**** build pulseaudio modules ****" && \
|
||||
mkdir -p /buildout/var/lib/xrdp-pulseaudio-installer && \
|
||||
tmp=$(mktemp -d); cd "$tmp" && \
|
||||
pulseaudio_version=$(dpkg-query -W -f='${source:Version}' pulseaudio|awk -F: '{print $2}') && \
|
||||
pulseaudio_upstream_version=$(dpkg-query -W -f='${source:Upstream-Version}' pulseaudio) && \
|
||||
set -- $(apt-cache policy pulseaudio | fgrep -A1 '***' | tail -1) && \
|
||||
mirror=$2 && \
|
||||
suite=${3#*/} && \
|
||||
dget -u "$mirror/pool/$suite/p/pulseaudio/pulseaudio_$pulseaudio_version.dsc" && \
|
||||
cd "pulseaudio-$pulseaudio_upstream_version" && \
|
||||
./configure && \
|
||||
cd - && \
|
||||
git clone https://github.com/neutrinolabs/pulseaudio-module-xrdp.git && \
|
||||
cd pulseaudio-module-xrdp && \
|
||||
git checkout ${XRDP_PULSE_VERSION} && \
|
||||
./bootstrap && \
|
||||
./configure PULSE_DIR="$tmp/pulseaudio-$pulseaudio_upstream_version" && \
|
||||
make && \
|
||||
install -t "/buildout/var/lib/xrdp-pulseaudio-installer" -D -m 644 src/.libs/*.so
|
||||
echo "**** build pulseaudio modules ****" && \
|
||||
mkdir -p /buildout/var/lib/xrdp-pulseaudio-installer && \
|
||||
tmp=$(mktemp -d); cd "$tmp" && \
|
||||
pulseaudio_upstream_version=$(dpkg-query -W -f='${source:Upstream-Version}' pulseaudio) && \
|
||||
apt-get source pulseaudio && \
|
||||
cd "pulseaudio-$pulseaudio_upstream_version" && \
|
||||
meson build && \
|
||||
cd - && \
|
||||
git clone https://github.com/neutrinolabs/pulseaudio-module-xrdp.git && \
|
||||
cd pulseaudio-module-xrdp && \
|
||||
git checkout ${XRDP_PULSE_VERSION} && \
|
||||
./bootstrap && \
|
||||
./configure PULSE_DIR="$tmp/pulseaudio-$pulseaudio_upstream_version" && \
|
||||
make && \
|
||||
install -t "/buildout/var/lib/xrdp-pulseaudio-installer" -D -m 644 src/.libs/*.so
|
||||
|
||||
RUN \
|
||||
echo "**** build xrdp with fuse disabled ****" && \
|
||||
cd /tmp && \
|
||||
apt-get source xrdp && \
|
||||
cd xrdp-* && \
|
||||
sed -i 's/--enable-fuse/--disable-fuse/g' debian/rules && \
|
||||
debuild -b -uc -us && \
|
||||
cp -ax ../xrdp_*.deb /buildout/xrdp.deb
|
||||
|
||||
# docker compose
|
||||
FROM ghcr.io/linuxserver/docker-compose:arm64v8-latest as compose
|
||||
echo "**** build xrdp with fuse disabled ****" && \
|
||||
cd /tmp && \
|
||||
apt-get source xrdp && \
|
||||
cd xrdp-* && \
|
||||
sed -i 's/--enable-fuse/--disable-fuse/g' debian/rules && \
|
||||
debuild -b -uc -us && \
|
||||
cp -ax ../xrdp_*.deb /buildout/xrdp.deb
|
||||
|
||||
# runtime stage
|
||||
FROM ghcr.io/linuxserver/baseimage-ubuntu:arm64v8-bionic
|
||||
FROM ghcr.io/linuxserver/baseimage-ubuntu:arm64v8-noble
|
||||
|
||||
# set version label
|
||||
ARG BUILD_DATE
|
||||
@ -62,53 +58,97 @@ LABEL maintainer="thelamer"
|
||||
|
||||
# copy over libs and installers from build stage
|
||||
COPY --from=buildstage /buildout/ /
|
||||
COPY --from=compose /usr/local/bin/docker-compose /usr/local/bin/docker-compose
|
||||
|
||||
#Add needed nvidia environment variables for https://github.com/NVIDIA/nvidia-docker
|
||||
ENV NVIDIA_DRIVER_CAPABILITIES=all \
|
||||
HOME=/config
|
||||
|
||||
RUN \
|
||||
echo "**** install deps ****" && \
|
||||
ldconfig && \
|
||||
apt-get update && \
|
||||
DEBIAN_FRONTEND=noninteractive \
|
||||
apt-get install -y --no-install-recommends \
|
||||
apt-transport-https \
|
||||
ca-certificates \
|
||||
curl \
|
||||
dbus-x11 \
|
||||
gawk \
|
||||
gnupg2 \
|
||||
libfuse2 \
|
||||
libx11-dev \
|
||||
libxfixes3 \
|
||||
libxml2 \
|
||||
libxrandr2 \
|
||||
openssh-client \
|
||||
pulseaudio \
|
||||
software-properties-common \
|
||||
sudo \
|
||||
x11-apps \
|
||||
x11-xserver-utils \
|
||||
xfonts-base \
|
||||
xorgxrdp \
|
||||
xrdp \
|
||||
xserver-xorg-core \
|
||||
xutils \
|
||||
zlib1g && \
|
||||
dpkg -i /xrdp.deb && \
|
||||
rm /xrdp.deb && \
|
||||
echo "**** install docker ****" && \
|
||||
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add - && \
|
||||
add-apt-repository "deb [arch=arm64] https://download.docker.com/linux/ubuntu bionic stable" && \
|
||||
apt-get update && \
|
||||
apt-get install -y --no-install-recommends \
|
||||
docker-ce-cli && \
|
||||
echo "**** cleanup and user perms ****" && \
|
||||
echo "abc:abc" | chpasswd && \
|
||||
usermod -aG sudo abc && \
|
||||
apt-get autoclean && \
|
||||
rm -rf \
|
||||
/var/lib/apt/lists/* \
|
||||
/var/tmp/* \
|
||||
/tmp/*
|
||||
echo "**** enable locales ****" && \
|
||||
sed -i \
|
||||
'/locale/d' \
|
||||
/etc/dpkg/dpkg.cfg.d/excludes && \
|
||||
echo "**** add docker repos ****" && \
|
||||
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | tee /usr/share/keyrings/docker.asc >/dev/null && \
|
||||
echo "deb [arch=arm64 signed-by=/usr/share/keyrings/docker.asc] https://download.docker.com/linux/ubuntu noble stable" > /etc/apt/sources.list.d/docker.list && \
|
||||
echo "**** install deps ****" && \
|
||||
ldconfig && \
|
||||
apt-get update && \
|
||||
DEBIAN_FRONTEND=noninteractive \
|
||||
apt-get install -y --no-install-recommends \
|
||||
apt-transport-https \
|
||||
ca-certificates \
|
||||
dbus-x11 \
|
||||
docker-ce-cli \
|
||||
docker-compose-plugin \
|
||||
fonts-noto-color-emoji \
|
||||
fonts-noto-core \
|
||||
gawk \
|
||||
gnupg2 \
|
||||
libfuse2 \
|
||||
libx11-dev \
|
||||
libxfixes3 \
|
||||
libxml2 \
|
||||
libxrandr2 \
|
||||
locales-all \
|
||||
mesa-va-drivers \
|
||||
mesa-vulkan-drivers \
|
||||
netcat-openbsd \
|
||||
openbox \
|
||||
openssh-client \
|
||||
pulseaudio \
|
||||
software-properties-common \
|
||||
sudo \
|
||||
x11-apps \
|
||||
x11-xserver-utils \
|
||||
xfonts-base \
|
||||
xorgxrdp \
|
||||
xrdp \
|
||||
xserver-common \
|
||||
xserver-xorg-core \
|
||||
xserver-xorg-video-amdgpu \
|
||||
xserver-xorg-video-armsoc-endlessm \
|
||||
xserver-xorg-video-ati \
|
||||
xserver-xorg-video-nouveau \
|
||||
xserver-xorg-video-qxl \
|
||||
xterm \
|
||||
xutils \
|
||||
zlib1g && \
|
||||
dpkg -i /xrdp.deb && \
|
||||
rm /xrdp.deb && \
|
||||
echo "**** openbox tweaks ****" && \
|
||||
sed -i \
|
||||
-e 's/NLIMC/NLMC/g' \
|
||||
-e '/debian-menu/d' \
|
||||
-e 's|</applications>| <application class="*"><maximized>yes</maximized></application>\n</applications>|' \
|
||||
-e 's|</keyboard>| <keybind key="C-S-d"><action name="ToggleDecorations"/></keybind>\n</keyboard>|' \
|
||||
/etc/xdg/openbox/rc.xml && \
|
||||
echo "**** user perms ****" && \
|
||||
sed -e 's/%sudo ALL=(ALL:ALL) ALL/%sudo ALL=(ALL:ALL) NOPASSWD: ALL/g' \
|
||||
-i /etc/sudoers && \
|
||||
echo "abc:abc" | chpasswd && \
|
||||
usermod -s /bin/bash abc && \
|
||||
usermod -aG sudo abc && \
|
||||
echo "**** proot-apps ****" && \
|
||||
mkdir /proot-apps/ && \
|
||||
PAPPS_RELEASE=$(curl -sX GET "https://api.github.com/repos/linuxserver/proot-apps/releases/latest" \
|
||||
| awk '/tag_name/{print $4;exit}' FS='[""]') && \
|
||||
curl -L https://github.com/linuxserver/proot-apps/releases/download/${PAPPS_RELEASE}/proot-apps-aarch64.tar.gz \
|
||||
| tar -xzf - -C /proot-apps/ && \
|
||||
echo "${PAPPS_RELEASE}" > /proot-apps/pversion && \
|
||||
echo "**** locales ****" && \
|
||||
for LOCALE in $(curl -sL https://raw.githubusercontent.com/thelamer/lang-stash/master/langs); do \
|
||||
localedef -i $LOCALE -f UTF-8 $LOCALE.UTF-8; \
|
||||
done && \
|
||||
echo "**** theme ****" && \
|
||||
curl -s https://raw.githubusercontent.com/thelamer/lang-stash/master/theme.tar.gz \
|
||||
| tar xzvf - -C /usr/share/themes/Clearlooks/openbox-3/ && \
|
||||
echo "**** cleanup ****" && \
|
||||
apt-get autoclean && \
|
||||
rm -rf \
|
||||
/var/lib/apt/lists/* \
|
||||
/var/tmp/* \
|
||||
/tmp/*
|
||||
|
||||
# add local files
|
||||
COPY /root /
|
||||
|
||||
118
Dockerfile.armhf
118
Dockerfile.armhf
@ -1,118 +0,0 @@
|
||||
FROM ghcr.io/linuxserver/baseimage-ubuntu:arm32v7-bionic as buildstage
|
||||
|
||||
ARG XRDP_PULSE_VERSION=v0.4
|
||||
ARG DEBIAN_FRONTEND="noninteractive"
|
||||
|
||||
RUN \
|
||||
echo "**** install build deps ****" && \
|
||||
sed -i 's/# deb-src/deb-src/g' /etc/apt/sources.list && \
|
||||
apt-get update && \
|
||||
apt-get install -y \
|
||||
build-essential \
|
||||
devscripts \
|
||||
dpkg-dev \
|
||||
git \
|
||||
libpulse-dev \
|
||||
pulseaudio && \
|
||||
apt build-dep -y \
|
||||
pulseaudio \
|
||||
xrdp
|
||||
|
||||
RUN \
|
||||
echo "**** build pulseaudio modules ****" && \
|
||||
mkdir -p /buildout/var/lib/xrdp-pulseaudio-installer && \
|
||||
tmp=$(mktemp -d); cd "$tmp" && \
|
||||
pulseaudio_version=$(dpkg-query -W -f='${source:Version}' pulseaudio|awk -F: '{print $2}') && \
|
||||
pulseaudio_upstream_version=$(dpkg-query -W -f='${source:Upstream-Version}' pulseaudio) && \
|
||||
set -- $(apt-cache policy pulseaudio | fgrep -A1 '***' | tail -1) && \
|
||||
mirror=$2 && \
|
||||
suite=${3#*/} && \
|
||||
dget -u "$mirror/pool/$suite/p/pulseaudio/pulseaudio_$pulseaudio_version.dsc" && \
|
||||
cd "pulseaudio-$pulseaudio_upstream_version" && \
|
||||
./configure && \
|
||||
cd - && \
|
||||
git clone https://github.com/neutrinolabs/pulseaudio-module-xrdp.git && \
|
||||
cd pulseaudio-module-xrdp && \
|
||||
git checkout ${XRDP_PULSE_VERSION} && \
|
||||
./bootstrap && \
|
||||
./configure PULSE_DIR="$tmp/pulseaudio-$pulseaudio_upstream_version" && \
|
||||
make && \
|
||||
install -t "/buildout/var/lib/xrdp-pulseaudio-installer" -D -m 644 src/.libs/*.so
|
||||
|
||||
RUN \
|
||||
echo "**** build xrdp with fuse disabled ****" && \
|
||||
cd /tmp && \
|
||||
apt-get source xrdp && \
|
||||
cd xrdp-* && \
|
||||
sed -i 's/--enable-fuse/--disable-fuse/g' debian/rules && \
|
||||
debuild -b -uc -us && \
|
||||
cp -ax ../xrdp_*.deb /buildout/xrdp.deb
|
||||
|
||||
# docker compose
|
||||
FROM ghcr.io/linuxserver/docker-compose:arm32v7-latest as compose
|
||||
|
||||
# runtime stage
|
||||
FROM ghcr.io/linuxserver/baseimage-ubuntu:arm32v7-bionic
|
||||
|
||||
# set version label
|
||||
ARG BUILD_DATE
|
||||
ARG VERSION
|
||||
LABEL build_version="Linuxserver.io version:- ${VERSION} Build-date:- ${BUILD_DATE}"
|
||||
LABEL maintainer="thelamer"
|
||||
|
||||
# copy over libs and installers from build stage
|
||||
COPY --from=buildstage /buildout/ /
|
||||
COPY --from=compose /usr/local/bin/docker-compose /usr/local/bin/docker-compose
|
||||
|
||||
RUN \
|
||||
echo "**** install deps ****" && \
|
||||
ldconfig && \
|
||||
apt-get update && \
|
||||
DEBIAN_FRONTEND=noninteractive \
|
||||
apt-get install -y --no-install-recommends \
|
||||
apt-transport-https \
|
||||
ca-certificates \
|
||||
curl \
|
||||
dbus-x11 \
|
||||
gawk \
|
||||
gnupg2 \
|
||||
libfuse2 \
|
||||
libx11-dev \
|
||||
libxfixes3 \
|
||||
libxml2 \
|
||||
libxrandr2 \
|
||||
openssh-client \
|
||||
pulseaudio \
|
||||
software-properties-common \
|
||||
sudo \
|
||||
x11-apps \
|
||||
x11-xserver-utils \
|
||||
xfonts-base \
|
||||
xorgxrdp \
|
||||
xrdp \
|
||||
xserver-xorg-core \
|
||||
xutils \
|
||||
zlib1g && \
|
||||
dpkg -i /xrdp.deb && \
|
||||
rm /xrdp.deb && \
|
||||
echo "**** install docker ****" && \
|
||||
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add - && \
|
||||
add-apt-repository "deb [arch=armhf] https://download.docker.com/linux/ubuntu bionic stable" && \
|
||||
apt-get update && \
|
||||
apt-get install -y --no-install-recommends \
|
||||
docker-ce-cli && \
|
||||
echo "**** cleanup and user perms ****" && \
|
||||
echo "abc:abc" | chpasswd && \
|
||||
usermod -aG sudo abc && \
|
||||
apt-get autoclean && \
|
||||
rm -rf \
|
||||
/var/lib/apt/lists/* \
|
||||
/var/tmp/* \
|
||||
/tmp/*
|
||||
|
||||
# add local files
|
||||
COPY /root /
|
||||
|
||||
# ports and volumes
|
||||
EXPOSE 3389
|
||||
VOLUME /config
|
||||
1000
Jenkinsfile
vendored
1000
Jenkinsfile
vendored
File diff suppressed because it is too large
Load Diff
186
README.md
186
README.md
@ -1,29 +1,179 @@
|
||||
<!-- DO NOT EDIT THIS FILE MANUALLY -->
|
||||
<!-- Please read the https://github.com/linuxserver/docker-baseimage-rdesktop/blob/bionic/.github/CONTRIBUTING.md -->
|
||||
<!-- DO NOT EDIT THIS FILE MANUALLY -->
|
||||
<!-- Please read https://github.com/linuxserver/docker-baseimage-rdesktop/blob/master/.github/CONTRIBUTING.md -->
|
||||
# rdesktop Base Images from LinuxServer
|
||||
|
||||
[linuxserverurl]: https://linuxserver.io
|
||||
[forumurl]: https://forum.linuxserver.io
|
||||
[ircurl]: https://www.linuxserver.io/irc/
|
||||
The purpose of these images is to provide a full featured rdesktop Linux desktop experience for any Linux application or desktop environment. They ship with passwordless sudo to allow easy package installation, testing, and customization. By default they have no logic to mount out anything but the users home directory, meaning on image updates anything outside of `/config` will be lost.
|
||||
|
||||
[][linuxserverurl]
|
||||
- Support for using our base images in your own projects is provided on a Reasonable Endeavours basis, please see our [Support Policy](https://www.linuxserver.io/supportpolicy) for details.
|
||||
- There is no `latest` tag for any of our base images, by design. We often make breaking changes between versions, and we don't publish release notes like we do for the downstream images.
|
||||
- If you're intending to distribute an image using one of our bases, please read our [docs on container branding](https://docs.linuxserver.io/general/container-branding/) first.
|
||||
- Images are supported for as long as the upstream release on which they are based, after which we will stop building new base images for that version.
|
||||
|
||||
## Contact information:-
|
||||
# Options
|
||||
|
||||
| Type | Address/Details |
|
||||
| :---: | --- |
|
||||
| Discord | [Discord](https://discord.gg/YWrKVTn) |
|
||||
| IRC | freenode at `#linuxserver.io` more information at:- [IRC][ircurl]
|
||||
| Forum | [LinuxServer.io forum][forumurl] |
|
||||
All application settings are passed via environment variables:
|
||||
|
||||
|
||||
|
||||
| Variable | Description |
|
||||
| :----: | --- |
|
||||
| LC_ALL | Set the Language for the container to run as IE `fr_FR.UTF-8` `ar_AE.UTF-8` |
|
||||
| NO_DECOR | If set the application will run without window borders. (Decor can be enabled and disabled with Ctrl+Shift+d) |
|
||||
| NO_FULL | Do not autmatically fullscreen applications when using openbox. |
|
||||
|
||||
[](https://microbadger.com/images/lsiobase/rdesktop "Get your own image badge on microbadger.com")
|
||||
## Language Support - Internationalization
|
||||
|
||||
[](https://github.com/linuxserver/docker-baseimage-rdesktop/blob/master/Dockerfile)
|
||||
The environment variable `LC_ALL` can be used to start this image in a different language than English simply pass for example to launch the Desktop session in French `LC_ALL=fr_FR.UTF-8`. Some languages like Chinese, Japanese, or Korean will be missing fonts needed to render properly known as cjk fonts, but others may exist and not be installed. We only ensure fonts for Latin characters are present. Fonts can be installed with a mod on startup.
|
||||
|
||||
A custom base image built with [Ubuntu linux](https://www.ubuntu.com/) and [xrdp](http://xrdp.org/)
|
||||
To install cjk fonts on startup as an example pass the environment variables(Debian):
|
||||
|
||||
```
|
||||
-e DOCKER_MODS=linuxserver/mods:universal-package-install
|
||||
-e INSTALL_PACKAGES=fonts-noto-cjk
|
||||
-e LC_ALL=zh_CN.UTF-8
|
||||
```
|
||||
|
||||
# Available Distros
|
||||
|
||||
All base images are built for x86_64 and aarch64 platforms.
|
||||
|
||||
| Distro | Current Tag |
|
||||
| :----: | --- |
|
||||
| Ubuntu | ubuntunoble |
|
||||
|
||||
# PRoot Apps
|
||||
|
||||
All images include [proot-apps](https://github.com/linuxserver/proot-apps) which allow portable applications to be installed to persistent storage in the user's `$HOME` directory. These applications and their settings will persist upgrades of the base container and can be mounted into different flavors of rdesktop containers. IE if you are running an Alpine based container you will be able to use the same `/config` directory mounted into an Ubuntu based container and retain the same applications and settings as long as they were installed with `proot-apps install`.
|
||||
|
||||
A list of linuxserver.io supported applications is located [HERE](https://github.com/linuxserver/proot-apps?tab=readme-ov-file#supported-apps).
|
||||
|
||||
# I like to read documentation
|
||||
|
||||
## Building images
|
||||
|
||||
### Application containers
|
||||
|
||||
Included in these base images is a simple [Openbox DE](http://openbox.org/) and the accompanying logic needed to launch a single application. Lets look at the bare minimum needed to create an application container starting with a Dockerfile:
|
||||
|
||||
```
|
||||
FROM ghcr.io/linuxserver/baseimage-rdesktop:alpine320
|
||||
RUN apk add --no-cache firefox
|
||||
COPY /root /
|
||||
```
|
||||
|
||||
And we can define the application to start using:
|
||||
|
||||
```
|
||||
mkdir -p root/defaults
|
||||
echo "firefox" > root/defaults/autostart
|
||||
```
|
||||
|
||||
Resulting in a folder that looks like this:
|
||||
|
||||
```
|
||||
├── Dockerfile
|
||||
└── root
|
||||
└── defaults
|
||||
└── autostart
|
||||
```
|
||||
|
||||
Now build and test:
|
||||
|
||||
```
|
||||
docker build -t firefox .
|
||||
docker run --rm -it -p 3389:3389 firefox bash
|
||||
```
|
||||
|
||||
On rdp port 3389 you will be presented with a fullscreen firefox window.
|
||||
|
||||
This similar setup can be used to embed any Linux Desktop application in an rdp accesible container.
|
||||
|
||||
**If building images it is important to note that many application will not work inside of Docker without `--security-opt seccomp=unconfined`, they may have launch flags to not use syscalls blocked by Docker like with chromium based applications and `--no-sandbox`. In general do not expect every application will simply work like a native Linux installation without some modifications**
|
||||
|
||||
#### In container application launching
|
||||
|
||||
Also included in the init logic is the ability to define application launchers. As the user has the ability to close the application or if they want to open multiple instances of it this can be useful. Here is an example of a menu definition file for Firefox:
|
||||
|
||||
```
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<openbox_menu xmlns="http://openbox.org/3.4/menu">
|
||||
<menu id="root-menu" label="MENU">
|
||||
<item label="xterm" icon="/usr/share/pixmaps/xterm-color_48x48.xpm"><action name="Execute"><command>/usr/bin/xterm</command></action></item>
|
||||
<item label="FireFox" icon="/usr/share/icons/hicolor/48x48/apps/firefox.png"><action name="Execute"><command>/usr/bin/firefox</command></action></item>
|
||||
</menu>
|
||||
</openbox_menu>
|
||||
```
|
||||
|
||||
Simply create this file and add it to your defaults folder as `menu.xml`:
|
||||
|
||||
```
|
||||
├── Dockerfile
|
||||
└── root
|
||||
└── defaults
|
||||
└── autostart
|
||||
└── menu.xml
|
||||
```
|
||||
|
||||
This allows users to right click the desktop background to launch the application.
|
||||
|
||||
|
||||
### Full Desktop environments
|
||||
|
||||
When building an application container we are leveraging the Openbox DE to handle window management, but it is also possible to completely replace the DE that is launched on container init using the `startwm.sh` script, located again in defaults:
|
||||
|
||||
```
|
||||
├── Dockerfile
|
||||
└── root
|
||||
└── defaults
|
||||
└── startwm.sh
|
||||
```
|
||||
|
||||
If included in the build logic it will be launched in place of Openbox. Examples for this kind of configuration can be found in our [rdesktop repository](https://github.com/linuxserver/docker-rdesktop)
|
||||
|
||||
## Open Source GPU Acceleration
|
||||
|
||||
For accelerated apps or games, render devices can be mounted into the container and leveraged by applications using:
|
||||
|
||||
`--device /dev/dri:/dev/dri`
|
||||
|
||||
This feature only supports **Open Source** GPU drivers:
|
||||
|
||||
| Driver | Description |
|
||||
| :----: | --- |
|
||||
| Intel | i965 and i915 drivers for Intel iGPU chipsets |
|
||||
| AMD | AMDGPU, Radeon, and ATI drivers for AMD dedicated or APU chipsets |
|
||||
| NVIDIA | nouveau2 drivers only, closed source NVIDIA drivers lack DRI3 support |
|
||||
|
||||
## Nvidia GPU Support
|
||||
|
||||
**Nvidia is not compatible with Alpine based images**
|
||||
|
||||
Nvidia support is available by leveraging Zink for OpenGL support. This can be enabled with the following run flags:
|
||||
|
||||
| Variable | Description |
|
||||
| :----: | --- |
|
||||
| --gpus all | This can be filtered down but for most setups this will pass the one Nvidia GPU on the system |
|
||||
| --runtime nvidia | Specify the Nvidia runtime which mounts drivers and tools in from the host |
|
||||
|
||||
The compose syntax is slightly different for this as you will need to set nvidia as the default runtime:
|
||||
|
||||
```
|
||||
sudo nvidia-ctk runtime configure --runtime=docker --set-as-default
|
||||
sudo service docker restart
|
||||
```
|
||||
|
||||
And to assign the GPU in compose:
|
||||
|
||||
```
|
||||
services:
|
||||
myimage:
|
||||
image: myname/myimage:mytag
|
||||
deploy:
|
||||
resources:
|
||||
reservations:
|
||||
devices:
|
||||
- driver: nvidia
|
||||
count: 1
|
||||
capabilities: [compute,video,graphics,utility]
|
||||
```
|
||||
|
||||
The following line is only in this repo for loop testing:
|
||||
|
||||
- { date: "01.01.50:", desc: "I am the release message for this internal repo." }
|
||||
|
||||
@ -3,9 +3,9 @@
|
||||
# jenkins variables
|
||||
project_name: docker-baseimage-rdesktop
|
||||
external_type: os
|
||||
release_type: prerelease
|
||||
release_tag: bionic
|
||||
ls_branch: bionic
|
||||
release_type: stable
|
||||
release_tag: ubuntunoble
|
||||
ls_branch: master
|
||||
repo_vars:
|
||||
- BUILD_VERSION_ARG = 'XRDP_VERSION'
|
||||
- LS_USER = 'linuxserver'
|
||||
@ -20,7 +20,7 @@ repo_vars:
|
||||
- CI_WEB='false'
|
||||
- CI_PORT='3389'
|
||||
- CI_SSL='false'
|
||||
- CI_DELAY='30'
|
||||
- CI_DOCKER_LOGS_TIMEOUT='120'
|
||||
- CI_DOCKERENV='TZ=US/Pacific'
|
||||
- CI_AUTH='user:password'
|
||||
- CI_AUTH=''
|
||||
- CI_WEBPATH=''
|
||||
|
||||
@ -1,324 +1,639 @@
|
||||
adduser3.116ubuntu1
|
||||
apt1.6.14
|
||||
apt-transport-https1.6.14
|
||||
apt-utils1.6.14
|
||||
base-files10.1ubuntu2.11
|
||||
base-passwd3.5.44
|
||||
bash4.4.18-2ubuntu1.2
|
||||
bsdmainutils11.1.2ubuntu1
|
||||
bsdutils1:2.31.1-0.4ubuntu3.7
|
||||
bzip21.0.6-8.1ubuntu0.2
|
||||
ca-certificates20210119~18.04.2
|
||||
coreutils8.28-1ubuntu1
|
||||
cpp4:7.4.0-1ubuntu2.3
|
||||
cpp-77.5.0-3ubuntu1~18.04
|
||||
curl7.58.0-2ubuntu3.16
|
||||
dash0.5.8-2.10
|
||||
dbus1.12.2-1ubuntu1.2
|
||||
dbus-x111.12.2-1ubuntu1.2
|
||||
dconf-gsettings-backend0.26.0-2ubuntu3
|
||||
dconf-service0.26.0-2ubuntu3
|
||||
debconf1.5.66ubuntu1
|
||||
debianutils4.8.4
|
||||
diffutils1:3.6-1
|
||||
dirmngr2.2.4-1ubuntu1.4
|
||||
distro-info-data0.37ubuntu0.13
|
||||
docker-ce-cli5:20.10.11~3-0~ubuntu-bionic
|
||||
dpkg1.19.0.5ubuntu2.3
|
||||
e2fsprogs1.44.1-1ubuntu1.3
|
||||
fdisk2.31.1-0.4ubuntu3.7
|
||||
findutils4.6.0+git+20170828-2
|
||||
fontconfig-config2.12.6-0ubuntu2
|
||||
fonts-dejavu-core2.37-1
|
||||
gawk1:4.1.4+dfsg-1build1
|
||||
gcc-7-base7.5.0-3ubuntu1~18.04
|
||||
gcc-8-base8.4.0-1ubuntu1~18.04
|
||||
gir1.2-glib-2.01.56.1-1
|
||||
glib-networking2.56.0-1ubuntu0.1
|
||||
glib-networking-common2.56.0-1ubuntu0.1
|
||||
glib-networking-services2.56.0-1ubuntu0.1
|
||||
gnupg22.2.4-1ubuntu1.4
|
||||
gnupg2.2.4-1ubuntu1.4
|
||||
gnupg-l10n2.2.4-1ubuntu1.4
|
||||
gnupg-utils2.2.4-1ubuntu1.4
|
||||
gpg2.2.4-1ubuntu1.4
|
||||
gpg-agent2.2.4-1ubuntu1.4
|
||||
gpgconf2.2.4-1ubuntu1.4
|
||||
gpgsm2.2.4-1ubuntu1.4
|
||||
gpgv2.2.4-1ubuntu1.4
|
||||
gpg-wks-client2.2.4-1ubuntu1.4
|
||||
gpg-wks-server2.2.4-1ubuntu1.4
|
||||
grep3.1-2build1
|
||||
groff-base1.22.3-10
|
||||
gsettings-desktop-schemas3.28.0-1ubuntu1
|
||||
gzip1.6-5ubuntu1.1
|
||||
hostname3.20
|
||||
init-system-helpers1.51
|
||||
iso-codes3.79-1
|
||||
keyboard-configuration1.178ubuntu2.9
|
||||
krb5-locales1.16-2ubuntu0.2
|
||||
libacl12.2.52-3build1
|
||||
libapparmor12.12-4ubuntu5.1
|
||||
libapt-inst2.01.6.14
|
||||
libapt-pkg5.01.6.14
|
||||
libasn1-8-heimdal7.5.0+dfsg-1
|
||||
libasound21.1.3-5ubuntu0.6
|
||||
libasound2-data1.1.3-5ubuntu0.6
|
||||
libasound2-plugins1.1.1-1ubuntu1
|
||||
libassuan02.5.1-2
|
||||
libasyncns00.8-6
|
||||
libattr11:2.4.47-2build1
|
||||
libaudit11:2.8.2-1ubuntu1.1
|
||||
libaudit-common1:2.8.2-1ubuntu1.1
|
||||
libblkid12.31.1-0.4ubuntu3.7
|
||||
libbsd00.8.7-1ubuntu0.1
|
||||
libbz2-1.01.0.6-8.1ubuntu0.2
|
||||
libc62.27-3ubuntu1.4
|
||||
libcap21:2.25-1.2
|
||||
libcap-ng00.7.7-3.1
|
||||
libc-bin2.27-3ubuntu1.4
|
||||
libcom-err21.44.1-1ubuntu1.3
|
||||
libcurl47.58.0-2ubuntu3.16
|
||||
libdb5.35.3.28-13.1ubuntu1.1
|
||||
libdbus-1-31.12.2-1ubuntu1.2
|
||||
libdconf10.26.0-2ubuntu3
|
||||
libdebconfclient00.213ubuntu1
|
||||
libdrm22.4.101-2~18.04.1
|
||||
libdrm-amdgpu12.4.101-2~18.04.1
|
||||
libdrm-common2.4.101-2~18.04.1
|
||||
libdrm-intel12.4.101-2~18.04.1
|
||||
libdrm-nouveau22.4.101-2~18.04.1
|
||||
libdrm-radeon12.4.101-2~18.04.1
|
||||
libedit23.1-20170329-1
|
||||
libegl11.0.0-2ubuntu2.3
|
||||
libegl1-mesa20.0.8-0ubuntu1~18.04.1
|
||||
libegl-mesa020.0.8-0ubuntu1~18.04.1
|
||||
libelf10.170-0.4ubuntu0.1
|
||||
libepoxy01.4.3-1
|
||||
libexpat12.2.5-3ubuntu0.2
|
||||
libext2fs21.44.1-1ubuntu1.3
|
||||
libfdisk12.31.1-0.4ubuntu3.7
|
||||
libffi63.2.1-8
|
||||
libflac81.3.2-1
|
||||
libfontconfig12.12.6-0ubuntu2
|
||||
libfontenc11:1.1.3-1
|
||||
libfreetype62.8.1-2ubuntu2.1
|
||||
libfuse22.9.7-1ubuntu1
|
||||
libgbm120.0.8-0ubuntu1~18.04.1
|
||||
libgcc11:8.4.0-1ubuntu1~18.04
|
||||
libgcrypt201.8.1-4ubuntu1.3
|
||||
libgdbm51.14.1-6
|
||||
libgirepository-1.0-11.56.1-1
|
||||
libgl11.0.0-2ubuntu2.3
|
||||
libgl1-mesa-dri20.0.8-0ubuntu1~18.04.1
|
||||
libglapi-mesa20.0.8-0ubuntu1~18.04.1
|
||||
libglib2.0-02.56.4-0ubuntu0.18.04.8
|
||||
libglvnd01.0.0-2ubuntu2.3
|
||||
libglx01.0.0-2ubuntu2.3
|
||||
libglx-mesa020.0.8-0ubuntu1~18.04.1
|
||||
libgmp102:6.1.2+dfsg-2
|
||||
libgnutls303.5.18-1ubuntu1.5
|
||||
libgpg-error01.27-6
|
||||
libgssapi3-heimdal7.5.0+dfsg-1
|
||||
libgssapi-krb5-21.16-2ubuntu0.2
|
||||
libhcrypto4-heimdal7.5.0+dfsg-1
|
||||
libheimbase1-heimdal7.5.0+dfsg-1
|
||||
libheimntlm0-heimdal7.5.0+dfsg-1
|
||||
libhogweed43.4.1-0ubuntu0.18.04.1
|
||||
libhx509-5-heimdal7.5.0+dfsg-1
|
||||
libice62:1.0.9-2
|
||||
libicu6060.2-3ubuntu3.2
|
||||
libidn2-02.0.4-1.1ubuntu0.2
|
||||
libisl190.19-1
|
||||
libjack-jackd2-01.9.12~dfsg-2
|
||||
libjpeg88c-2ubuntu8
|
||||
libjpeg-turbo81.5.2-0ubuntu5.18.04.4
|
||||
libjson-glib-1.0-01.4.2-3ubuntu0.18.04.1
|
||||
libjson-glib-1.0-common1.4.2-3ubuntu0.18.04.1
|
||||
libk5crypto31.16-2ubuntu0.2
|
||||
libkeyutils11.5.9-9.2ubuntu2
|
||||
libkmod224-1ubuntu3.5
|
||||
libkrb5-26-heimdal7.5.0+dfsg-1
|
||||
libkrb5-31.16-2ubuntu0.2
|
||||
libkrb5support01.16-2ubuntu0.2
|
||||
libksba81.3.5-2
|
||||
libldap-2.4-22.4.45+dfsg-1ubuntu1.10
|
||||
libldap-common2.4.45+dfsg-1ubuntu1.10
|
||||
libllvm101:10.0.0-4ubuntu1~18.04.2
|
||||
liblocale-gettext-perl1.07-3build2
|
||||
libltdl72.4.6-2
|
||||
liblz4-10.0~r131-2ubuntu3.1
|
||||
liblzma55.2.2-1.3
|
||||
libmount12.31.1-0.4ubuntu3.7
|
||||
libmpc31.1.0-1
|
||||
libmpdec22.4.2-1ubuntu1
|
||||
libmpfr64.0.1-1
|
||||
libncurses56.1-1ubuntu1.18.04
|
||||
libncursesw56.1-1ubuntu1.18.04
|
||||
libnettle63.4.1-0ubuntu0.18.04.1
|
||||
libnghttp2-141.30.0-1ubuntu1
|
||||
libnpth01.5-3
|
||||
libogg01.3.2-1
|
||||
libopus01.1.2-1ubuntu1
|
||||
liborc-0.4-01:0.4.28-1
|
||||
libp11-kit00.23.9-2ubuntu0.1
|
||||
libpam0g1.1.8-3.6ubuntu2.18.04.3
|
||||
libpam-modules1.1.8-3.6ubuntu2.18.04.3
|
||||
libpam-modules-bin1.1.8-3.6ubuntu2.18.04.3
|
||||
libpam-runtime1.1.8-3.6ubuntu2.18.04.3
|
||||
libpciaccess00.14-1
|
||||
libpcre32:8.39-9
|
||||
libpipeline11.5.0-1
|
||||
libpixman-1-00.34.0-2
|
||||
libpng16-161.6.34-1ubuntu0.18.04.2
|
||||
libprocps62:3.3.12-3ubuntu1.2
|
||||
libproxy1v50.4.15-1ubuntu0.2
|
||||
libpsl50.19.1-5build1
|
||||
libpthread-stubs0-dev0.3-4
|
||||
libpulse01:11.1-1ubuntu7.11
|
||||
libpulsedsp1:11.1-1ubuntu7.11
|
||||
libpython3.6-minimal3.6.9-1~18.04ubuntu1.4
|
||||
libpython3.6-stdlib3.6.9-1~18.04ubuntu1.4
|
||||
libpython3-stdlib3.6.7-1~18.04
|
||||
libreadline77.0-3
|
||||
libroken18-heimdal7.5.0+dfsg-1
|
||||
librtmp12.4+20151223.gitfa8646d.1-1
|
||||
libsamplerate00.1.9-1
|
||||
libsasl2-22.1.27~101-g0780600+dfsg-3ubuntu2.3
|
||||
libsasl2-modules2.1.27~101-g0780600+dfsg-3ubuntu2.3
|
||||
libsasl2-modules-db2.1.27~101-g0780600+dfsg-3ubuntu2.3
|
||||
libseccomp22.5.1-1ubuntu1~18.04.1
|
||||
libselinux12.7-2build2
|
||||
libsemanage12.7-2build2
|
||||
libsemanage-common2.7-2build2
|
||||
libsensors41:3.4.0-4
|
||||
libsepol12.7-1
|
||||
libsigsegv22.12-1
|
||||
libsm62:1.2.2-1
|
||||
libsmartcols12.31.1-0.4ubuntu3.7
|
||||
libsnapd-glib11.58-0ubuntu0.18.04.0
|
||||
libsndfile11.0.28-4ubuntu0.18.04.2
|
||||
libsoup2.4-12.62.1-1ubuntu0.4
|
||||
libspeexdsp11.2~rc1.2-1ubuntu2
|
||||
libsqlite3-03.22.0-1ubuntu0.4
|
||||
libss21.44.1-1ubuntu1.3
|
||||
libssl1.0.01.0.2n-1ubuntu5.7
|
||||
libssl1.11.1.1-1ubuntu2.1~18.04.13
|
||||
libstdc++68.4.0-1ubuntu1~18.04
|
||||
libsystemd0237-3ubuntu10.52
|
||||
libtasn1-64.13-2
|
||||
libtdb11.3.15-2
|
||||
libtinfo56.1-1ubuntu1.18.04
|
||||
libudev1237-3ubuntu10.52
|
||||
libunistring20.9.9-0ubuntu2
|
||||
libuuid12.31.1-0.4ubuntu3.7
|
||||
libvorbis0a1.3.5-4.2
|
||||
libvorbisenc21.3.5-4.2
|
||||
libwayland-client01.16.0-1ubuntu1.1~18.04.3
|
||||
libwayland-server01.16.0-1ubuntu1.1~18.04.3
|
||||
libwebrtc-audio-processing10.3-1
|
||||
libwind0-heimdal7.5.0+dfsg-1
|
||||
libwrap07.6.q-27
|
||||
libx11-62:1.6.4-3ubuntu0.4
|
||||
libx11-data2:1.6.4-3ubuntu0.4
|
||||
libx11-dev2:1.6.4-3ubuntu0.4
|
||||
libx11-xcb12:1.6.4-3ubuntu0.4
|
||||
libxau61:1.0.8-1ubuntu1
|
||||
libxau-dev1:1.0.8-1ubuntu1
|
||||
libxaw72:1.0.13-1
|
||||
libxcb11.13-2~ubuntu18.04
|
||||
libxcb1-dev1.13-2~ubuntu18.04
|
||||
libxcb-dri2-01.13-2~ubuntu18.04
|
||||
libxcb-dri3-01.13-2~ubuntu18.04
|
||||
libxcb-glx01.13-2~ubuntu18.04
|
||||
libxcb-present01.13-2~ubuntu18.04
|
||||
libxcb-shape01.13-2~ubuntu18.04
|
||||
libxcb-sync11.13-2~ubuntu18.04
|
||||
libxcb-xfixes01.13-2~ubuntu18.04
|
||||
libxcomposite11:0.4.4-2
|
||||
libxcursor11:1.1.15-1
|
||||
libxdamage11:1.1.4-3
|
||||
libxdmcp61:1.1.2-3
|
||||
libxdmcp-dev1:1.1.2-3
|
||||
libxext62:1.3.3-1
|
||||
libxfixes31:5.0.3-1
|
||||
libxfont21:2.0.3-1
|
||||
libxft22.3.2-1
|
||||
libxi62:1.7.9-1
|
||||
libxinerama12:1.1.3-1
|
||||
libxkbfile11:1.0.9-2
|
||||
libxml22.9.4+dfsg1-6.1ubuntu1.4
|
||||
libxmu62:1.1.2-2
|
||||
libxmuu12:1.1.2-2
|
||||
libxpm41:3.5.12-1
|
||||
libxrandr22:1.5.1-1
|
||||
libxrender11:0.9.10-1
|
||||
libxshmfence11.3-1
|
||||
libxt61:1.1.5-1
|
||||
libxtst62:1.2.3-1
|
||||
libxv12:1.0.11-1
|
||||
libxxf86dga12:1.1.4-1
|
||||
libxxf86vm11:1.1.4-1
|
||||
libzstd11.3.3+dfsg-2ubuntu1.2
|
||||
locales2.27-3ubuntu1.4
|
||||
login1:4.5-1ubuntu2
|
||||
lsb-base9.20170808ubuntu1
|
||||
lsb-release9.20170808ubuntu1
|
||||
man-db2.8.3-2ubuntu0.1
|
||||
mawk1.3.3-17ubuntu3
|
||||
mime-support3.60ubuntu1
|
||||
mount2.31.1-0.4ubuntu3.7
|
||||
multiarch-support2.27-3ubuntu1.4
|
||||
ncurses-base6.1-1ubuntu1.18.04
|
||||
ncurses-bin6.1-1ubuntu1.18.04
|
||||
openssh-client1:7.6p1-4ubuntu0.5
|
||||
openssl1.1.1-1ubuntu2.1~18.04.13
|
||||
passwd1:4.5-1ubuntu2
|
||||
perl-base5.26.1-6ubuntu0.5
|
||||
pinentry-curses1.1.0-1
|
||||
procps2:3.3.12-3ubuntu1.2
|
||||
publicsuffix20180223.1310-1
|
||||
pulseaudio1:11.1-1ubuntu7.11
|
||||
pulseaudio-utils1:11.1-1ubuntu7.11
|
||||
python33.6.7-1~18.04
|
||||
python3.63.6.9-1~18.04ubuntu1.4
|
||||
python3.6-minimal3.6.9-1~18.04ubuntu1.4
|
||||
python3-apt1.6.5ubuntu0.7
|
||||
python3-dbus1.2.6-1
|
||||
python3-gi3.26.1-2ubuntu1
|
||||
python3-minimal3.6.7-1~18.04
|
||||
python3-software-properties0.96.24.32.18
|
||||
python-apt-common1.6.5ubuntu0.7
|
||||
readline-common7.0-3
|
||||
sed4.4-2
|
||||
sensible-utils0.0.12
|
||||
software-properties-common0.96.24.32.18
|
||||
ssl-cert1.0.39
|
||||
sudo1.8.21p2-3ubuntu1.4
|
||||
sysvinit-utils2.88dsf-59.10ubuntu1
|
||||
tar1.29b-2ubuntu0.2
|
||||
tzdata2021e-0ubuntu0.18.04
|
||||
ubuntu-keyring2018.09.18.1~18.04.2
|
||||
ucf3.0038
|
||||
udev237-3ubuntu10.52
|
||||
util-linux2.31.1-0.4ubuntu3.7
|
||||
x11-apps7.7+6ubuntu1
|
||||
x11-common1:7.7+19ubuntu7.1
|
||||
x11proto-core-dev2018.4-4
|
||||
x11proto-dev2018.4-4
|
||||
x11-session-utils7.7+2build1
|
||||
x11-utils7.7+3build1
|
||||
x11-xkb-utils7.7+3ubuntu0.18.04.1
|
||||
x11-xserver-utils7.7+7build1
|
||||
xfonts-base1:1.0.4+nmu1
|
||||
xfonts-encodings1:1.0.4-2
|
||||
xfonts-utils1:7.7+6
|
||||
xkb-data2.23.1-1ubuntu1.18.04.1
|
||||
xorg-sgml-doctools1:1.11-1
|
||||
xorgxrdp0.9.5-2
|
||||
xrdp0.9.5-2
|
||||
xserver-common2:1.19.6-1ubuntu4.9
|
||||
xserver-xorg-core2:1.19.6-1ubuntu4.9
|
||||
xtrans-dev1.3.5-1
|
||||
xutils1:7.7+19ubuntu7.1
|
||||
zlib1g1:1.2.11.dfsg-0ubuntu2
|
||||
NAME VERSION TYPE
|
||||
adduser 3.137ubuntu1 deb
|
||||
apt 2.8.3 deb
|
||||
apt-transport-https 2.8.3 deb
|
||||
apt-utils 2.8.3 deb
|
||||
base-files 13ubuntu10.4 deb
|
||||
base-passwd 3.6.3build1 deb
|
||||
bash 5.2.21-2ubuntu4 deb
|
||||
blinker 1.7.0 python
|
||||
bsdextrautils 2.39.3-9ubuntu6.4 deb
|
||||
bsdutils 1:2.39.3-9ubuntu6.4 deb
|
||||
ca-certificates 20240203 deb
|
||||
catatonit 0.1.7-1 deb
|
||||
coreutils 9.4-3ubuntu6.1 deb
|
||||
cpp 4:13.2.0-7ubuntu1 deb
|
||||
cpp-13 13.3.0-6ubuntu2~24.04 deb
|
||||
cpp-13-x86-64-linux-gnu 13.3.0-6ubuntu2~24.04 deb
|
||||
cpp-x86-64-linux-gnu 4:13.2.0-7ubuntu1 deb
|
||||
cron 3.0pl1-184ubuntu2 deb
|
||||
cron-daemon-common 3.0pl1-184ubuntu2 deb
|
||||
cryptography 41.0.7 python (+1 duplicate)
|
||||
curl 8.5.0-2ubuntu10.6 deb
|
||||
dash 0.5.12-6ubuntu5 deb
|
||||
dbus 1.14.10-4ubuntu4.1 deb
|
||||
dbus-bin 1.14.10-4ubuntu4.1 deb
|
||||
dbus-daemon 1.14.10-4ubuntu4.1 deb
|
||||
dbus-python 1.3.2 python
|
||||
dbus-session-bus-common 1.14.10-4ubuntu4.1 deb
|
||||
dbus-system-bus-common 1.14.10-4ubuntu4.1 deb
|
||||
dbus-x11 1.14.10-4ubuntu4.1 deb
|
||||
dconf-gsettings-backend 0.40.0-4ubuntu0.1 deb
|
||||
dconf-service 0.40.0-4ubuntu0.1 deb
|
||||
debconf 1.5.86ubuntu1 deb
|
||||
debianutils 5.17build1 deb
|
||||
diffutils 1:3.10-1build1 deb
|
||||
dirmngr 2.4.4-2ubuntu17.4 deb
|
||||
distro 1.9.0 python
|
||||
distro-info-data 0.60ubuntu0.5 deb
|
||||
docker-ce-cli 5:29.2.1-1~ubuntu.24.04~noble deb
|
||||
docker-compose-plugin 5.0.2-1~ubuntu.24.04~noble deb
|
||||
dpkg 1.22.6ubuntu6.5 deb
|
||||
e2fsprogs 1.47.0-2.4~exp1ubuntu4.1 deb
|
||||
findutils 4.9.0-5build1 deb
|
||||
fontconfig 2.15.0-1.1ubuntu2 deb
|
||||
fontconfig-config 2.15.0-1.1ubuntu2 deb
|
||||
fonts-noto-color-emoji 2.047-0ubuntu0.24.04.1 deb
|
||||
fonts-noto-core 20201225-2 deb
|
||||
fonts-noto-mono 20201225-2 deb
|
||||
fonts-urw-base35 20200910-8 deb
|
||||
gawk 1:5.2.1-2build3 deb
|
||||
gcc-13-base 13.3.0-6ubuntu2~24.04 deb
|
||||
gcc-14-base 14.2.0-4ubuntu2~24.04 deb
|
||||
gir1.2-girepository-2.0 1.80.1-1 deb
|
||||
gir1.2-glib-2.0 2.80.0-6ubuntu3.8 deb
|
||||
gir1.2-packagekitglib-1.0 1.2.8-2ubuntu1.4 deb
|
||||
github.com/AlecAivazis/survey/v2 v2.3.7 go-module
|
||||
github.com/DefangLabs/secret-detector v0.0.0-20250403165618-22662109213e go-module
|
||||
github.com/acarl005/stripansi v0.0.0-20180116102854-5a71ef0e047d go-module
|
||||
github.com/beorn7/perks v1.0.1 go-module
|
||||
github.com/buger/goterm v1.0.4 go-module
|
||||
github.com/cenkalti/backoff/v5 v5.0.3 go-module
|
||||
github.com/cespare/xxhash/v2 v2.3.0 go-module
|
||||
github.com/compose-spec/compose-go/v2 v2.10.1 go-module
|
||||
github.com/containerd/console v1.0.5 go-module
|
||||
github.com/containerd/containerd/api v1.10.0 go-module
|
||||
github.com/containerd/containerd/v2 v2.2.1 go-module
|
||||
github.com/containerd/continuity v0.4.5 go-module
|
||||
github.com/containerd/errdefs v1.0.0 go-module
|
||||
github.com/containerd/errdefs/pkg v0.3.0 go-module
|
||||
github.com/containerd/log v0.1.0 go-module
|
||||
github.com/containerd/platforms v1.0.0-rc.2 go-module
|
||||
github.com/containerd/ttrpc v1.2.7 go-module
|
||||
github.com/containerd/typeurl/v2 v2.2.3 go-module
|
||||
github.com/davecgh/go-spew v1.1.1 go-module
|
||||
github.com/distribution/reference v0.6.0 go-module
|
||||
github.com/docker/buildx v0.30.1 go-module
|
||||
github.com/docker/cli v28.5.2+incompatible go-module
|
||||
github.com/docker/cli-docs-tool v0.11.0 go-module
|
||||
github.com/docker/cli/cmd/docker UNKNOWN go-module
|
||||
github.com/docker/compose/v5 v0.0.0-20260120125753-c428a77111d5 go-module
|
||||
github.com/docker/distribution v2.8.3+incompatible go-module
|
||||
github.com/docker/docker v28.5.2+incompatible go-module
|
||||
github.com/docker/docker-credential-helpers v0.9.3 go-module
|
||||
github.com/docker/go v1.5.1-1.0.20160303222718-d30aec9fd63c go-module
|
||||
github.com/docker/go-connections v0.6.0 go-module
|
||||
github.com/docker/go-metrics v0.0.1 go-module
|
||||
github.com/docker/go-units v0.5.0 go-module
|
||||
github.com/eiannone/keyboard v0.0.0-20220611211555-0d226195f203 go-module
|
||||
github.com/felixge/httpsnoop v1.0.4 go-module
|
||||
github.com/fvbommel/sortorder v1.1.0 go-module
|
||||
github.com/go-logr/logr v1.4.3 go-module
|
||||
github.com/go-logr/stdr v1.2.2 go-module
|
||||
github.com/go-viper/mapstructure/v2 v2.5.0 go-module
|
||||
github.com/gofrs/flock v0.13.0 go-module
|
||||
github.com/gogo/protobuf v1.3.2 go-module
|
||||
github.com/golang-jwt/jwt/v5 v5.3.0 go-module
|
||||
github.com/golang/protobuf v1.5.4 go-module
|
||||
github.com/google/go-cmp v0.7.0 go-module
|
||||
github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 go-module
|
||||
github.com/google/uuid v1.6.0 go-module
|
||||
github.com/gorilla/mux v1.8.1 go-module
|
||||
github.com/grpc-ecosystem/grpc-gateway/v2 v2.27.2 go-module
|
||||
github.com/hashicorp/errwrap v1.1.0 go-module
|
||||
github.com/hashicorp/go-multierror v1.1.1 go-module
|
||||
github.com/hashicorp/go-version v1.8.0 go-module
|
||||
github.com/in-toto/in-toto-golang v0.9.0 go-module
|
||||
github.com/inhies/go-bytesize v0.0.0-20220417184213-4913239db9cf go-module
|
||||
github.com/jonboulle/clockwork v0.5.0 go-module
|
||||
github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51 go-module
|
||||
github.com/klauspost/compress v1.18.2 go-module
|
||||
github.com/mattn/go-colorable v0.1.14 go-module
|
||||
github.com/mattn/go-isatty v0.0.20 go-module
|
||||
github.com/mattn/go-runewidth v0.0.16 go-module
|
||||
github.com/mattn/go-shellwords v1.0.12 go-module
|
||||
github.com/mgutz/ansi v0.0.0-20170206155736-9520e82c474b go-module
|
||||
github.com/mitchellh/hashstructure/v2 v2.0.2 go-module
|
||||
github.com/moby/buildkit v0.26.3 go-module
|
||||
github.com/moby/docker-image-spec v1.3.1 go-module
|
||||
github.com/moby/go-archive v0.1.0 go-module
|
||||
github.com/moby/locker v1.0.1 go-module
|
||||
github.com/moby/patternmatcher v0.6.0 go-module
|
||||
github.com/moby/sys/atomicwriter v0.1.0 go-module
|
||||
github.com/moby/sys/capability v0.4.0 go-module
|
||||
github.com/moby/sys/sequential v0.6.0 go-module
|
||||
github.com/moby/sys/signal v0.7.1 go-module
|
||||
github.com/moby/sys/symlink v0.3.0 go-module
|
||||
github.com/moby/sys/user v0.4.0 go-module
|
||||
github.com/moby/sys/userns v0.1.0 go-module
|
||||
github.com/moby/term v0.5.2 go-module
|
||||
github.com/morikuni/aec v1.1.0 go-module
|
||||
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 go-module
|
||||
github.com/opencontainers/go-digest v1.0.0 go-module
|
||||
github.com/opencontainers/image-spec v1.1.1 go-module
|
||||
github.com/pelletier/go-toml v1.9.5 go-module
|
||||
github.com/pkg/errors v0.9.1 go-module
|
||||
github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10 go-module
|
||||
github.com/pmezard/go-difflib v1.0.0 go-module
|
||||
github.com/prometheus/client_golang v1.23.2 go-module
|
||||
github.com/prometheus/client_model v0.6.2 go-module
|
||||
github.com/prometheus/common v0.66.1 go-module
|
||||
github.com/prometheus/procfs v0.16.1 go-module
|
||||
github.com/rivo/uniseg v0.2.0 go-module
|
||||
github.com/santhosh-tekuri/jsonschema/v6 v6.0.1 go-module
|
||||
github.com/secure-systems-lab/go-securesystemslib v0.9.1 go-module
|
||||
github.com/shibumi/go-pathspec v1.3.0 go-module
|
||||
github.com/sirupsen/logrus v1.9.4 go-module
|
||||
github.com/skratchdot/open-golang v0.0.0-20200116055534-eef842397966 go-module
|
||||
github.com/spf13/cobra v1.10.2 go-module
|
||||
github.com/spf13/pflag v1.0.10 go-module
|
||||
github.com/stretchr/testify v1.11.1 go-module
|
||||
github.com/theupdateframework/notary v0.7.0 go-module
|
||||
github.com/tilt-dev/fsnotify v1.4.8-0.20220602155310-fff9c274a375 go-module
|
||||
github.com/tonistiigi/dchapes-mode v0.0.0-20250318174251-73d941a28323 go-module
|
||||
github.com/tonistiigi/fsutil v0.0.0-20250605211040-586307ad452f go-module
|
||||
github.com/tonistiigi/go-csvvalue v0.0.0-20240814133006-030d3b2625d0 go-module
|
||||
github.com/tonistiigi/units v0.0.0-20180711220420-6950e57a87ea go-module
|
||||
github.com/tonistiigi/vt100 v0.0.0-20240514184818-90bafcd6abab go-module
|
||||
github.com/xhit/go-str2duration/v2 v2.1.0 go-module
|
||||
glib-networking 2.80.0-1build1 deb
|
||||
glib-networking-common 2.80.0-1build1 deb
|
||||
glib-networking-services 2.80.0-1build1 deb
|
||||
gnupg 2.4.4-2ubuntu17.4 deb
|
||||
gnupg-l10n 2.4.4-2ubuntu17.4 deb
|
||||
gnupg-utils 2.4.4-2ubuntu17.4 deb
|
||||
gnupg2 2.4.4-2ubuntu17.4 deb
|
||||
go.opentelemetry.io/auto/sdk v1.2.1 go-module
|
||||
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.63.0 go-module
|
||||
go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace v0.63.0 go-module
|
||||
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.63.0 go-module
|
||||
go.opentelemetry.io/otel v1.38.0 go-module
|
||||
go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.38.0 go-module
|
||||
go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetrichttp v1.38.0 go-module
|
||||
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.38.0 go-module
|
||||
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.38.0 go-module
|
||||
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.38.0 go-module
|
||||
go.opentelemetry.io/otel/metric v1.38.0 go-module
|
||||
go.opentelemetry.io/otel/sdk v1.38.0 go-module
|
||||
go.opentelemetry.io/otel/sdk/metric v1.38.0 go-module
|
||||
go.opentelemetry.io/otel/trace v1.38.0 go-module
|
||||
go.opentelemetry.io/proto/otlp v1.7.1 go-module
|
||||
go.uber.org/mock v0.6.0 go-module
|
||||
go.yaml.in/yaml/v2 v2.4.2 go-module
|
||||
go.yaml.in/yaml/v4 v4.0.0-rc.3 go-module
|
||||
golang.org/x/crypto v0.45.0 go-module
|
||||
golang.org/x/net v0.47.0 go-module
|
||||
golang.org/x/sync v0.19.0 go-module
|
||||
golang.org/x/sys v0.40.0 go-module
|
||||
golang.org/x/term v0.37.0 go-module
|
||||
golang.org/x/text v0.31.0 go-module
|
||||
golang.org/x/time v0.14.0 go-module
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20251029180050-ab9386a59fda go-module
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20251029180050-ab9386a59fda go-module
|
||||
google.golang.org/grpc v1.78.0 go-module
|
||||
google.golang.org/protobuf v1.36.10 go-module
|
||||
gopkg.in/ini.v1 v1.67.0 go-module
|
||||
gopkg.in/yaml.v3 v3.0.1 go-module
|
||||
gpg 2.4.4-2ubuntu17.4 deb
|
||||
gpg-agent 2.4.4-2ubuntu17.4 deb
|
||||
gpg-wks-client 2.4.4-2ubuntu17.4 deb
|
||||
gpgconf 2.4.4-2ubuntu17.4 deb
|
||||
gpgsm 2.4.4-2ubuntu17.4 deb
|
||||
gpgv 2.4.4-2ubuntu17.4 deb
|
||||
grep 3.11-4build1 deb
|
||||
groff-base 1.23.0-3build2 deb
|
||||
gsettings-desktop-schemas 46.1-0ubuntu1 deb
|
||||
gzip 1.12-1ubuntu3.1 deb
|
||||
hostname 3.23+nmu2ubuntu2 deb
|
||||
httplib2 0.20.4 python
|
||||
init-system-helpers 1.66ubuntu1 deb
|
||||
iso-codes 4.16.0-1 deb
|
||||
jq 1.7.1 binary
|
||||
jq 1.7.1-3ubuntu0.24.04.1 deb
|
||||
keyboard-configuration 1.226ubuntu1 deb
|
||||
keyboxd 2.4.4-2ubuntu17.4 deb
|
||||
krb5-locales 1.20.1-6ubuntu2.6 deb
|
||||
launchpadlib 1.11.0 python
|
||||
lazr-restfulclient 0.14.6 python
|
||||
lazr-uri 1.0.6 python
|
||||
libacl1 2.3.2-1build1.1 deb
|
||||
libaom3 3.8.2-2ubuntu0.1 deb
|
||||
libapparmor1 4.0.1really4.0.1-0ubuntu0.24.04.5 deb
|
||||
libappstream5 1.0.2-1build6 deb
|
||||
libapt-pkg6.0t64 2.8.3 deb
|
||||
libargon2-1 0~20190702+dfsg-4build1 deb
|
||||
libasound2-data 1.2.11-1ubuntu0.1 deb
|
||||
libasound2-plugins 1.2.7.1-1ubuntu5 deb
|
||||
libasound2t64 1.2.11-1ubuntu0.1 deb
|
||||
libassuan0 2.5.6-1build1 deb
|
||||
libasyncns0 0.8-6build4 deb
|
||||
libattr1 1:2.5.2-1build1.1 deb
|
||||
libaudit-common 1:3.1.2-2.1build1.1 deb
|
||||
libaudit1 1:3.1.2-2.1build1.1 deb
|
||||
libavahi-client3 0.8-13ubuntu6.1 deb
|
||||
libavahi-common-data 0.8-13ubuntu6.1 deb
|
||||
libavahi-common3 0.8-13ubuntu6.1 deb
|
||||
libavcodec60 7:6.1.1-3ubuntu5 deb
|
||||
libavutil58 7:6.1.1-3ubuntu5 deb
|
||||
libblkid1 2.39.3-9ubuntu6.4 deb
|
||||
libbrotli1 1.1.0-2build2 deb
|
||||
libbsd0 0.12.1-1build1.1 deb
|
||||
libbz2-1.0 1.0.8-5.1build0.1 deb
|
||||
libc-bin 2.39-0ubuntu8.7 deb
|
||||
libc6 2.39-0ubuntu8.7 deb
|
||||
libcairo-gobject2 1.18.0-3build1 deb
|
||||
libcairo2 1.18.0-3build1 deb
|
||||
libcap-ng0 0.8.4-2build2 deb
|
||||
libcap2 1:2.66-5ubuntu2.2 deb
|
||||
libcap2-bin 1:2.66-5ubuntu2.2 deb
|
||||
libcbor0.10 0.10.2-1.2ubuntu2 deb
|
||||
libcodec2-1.2 1.2.0-2build1 deb
|
||||
libcom-err2 1.47.0-2.4~exp1ubuntu4.1 deb
|
||||
libcrypt1 1:4.4.36-4build1 deb
|
||||
libcryptsetup12 2:2.7.0-1ubuntu4.2 deb
|
||||
libcups2t64 2.4.7-1.2ubuntu7.9 deb
|
||||
libcurl3t64-gnutls 8.5.0-2ubuntu10.6 deb
|
||||
libcurl4t64 8.5.0-2ubuntu10.6 deb
|
||||
libdatrie1 0.2.13-3build1 deb
|
||||
libdav1d7 1.4.1-1build1 deb
|
||||
libdb5.3t64 5.3.28+dfsg2-7 deb
|
||||
libdbus-1-3 1.14.10-4ubuntu4.1 deb
|
||||
libdconf1 0.40.0-4ubuntu0.1 deb
|
||||
libde265-0 1.0.15-1build3 deb
|
||||
libdebconfclient0 0.271ubuntu3 deb
|
||||
libdeflate0 1.19-1build1.1 deb
|
||||
libdevmapper1.02.1 2:1.02.185-3ubuntu3.2 deb
|
||||
libdrm-amdgpu1 2.4.125-1ubuntu0.1~24.04.1 deb
|
||||
libdrm-common 2.4.125-1ubuntu0.1~24.04.1 deb
|
||||
libdrm-intel1 2.4.125-1ubuntu0.1~24.04.1 deb
|
||||
libdrm-nouveau2 2.4.125-1ubuntu0.1~24.04.1 deb
|
||||
libdrm-radeon1 2.4.125-1ubuntu0.1~24.04.1 deb
|
||||
libdrm2 2.4.125-1ubuntu0.1~24.04.1 deb
|
||||
libduktape207 2.7.0+tests-0ubuntu3 deb
|
||||
libdw1t64 0.190-1.1ubuntu0.1 deb
|
||||
libedit2 3.1-20230828-1build1 deb
|
||||
libegl-mesa0 25.2.8-0ubuntu0.24.04.1 deb
|
||||
libegl1 1.7.0-1build1 deb
|
||||
libelf1t64 0.190-1.1ubuntu0.1 deb
|
||||
libepoxy0 1.5.10-1build1 deb
|
||||
libexpat1 2.6.1-2ubuntu0.3 deb
|
||||
libext2fs2t64 1.47.0-2.4~exp1ubuntu4.1 deb
|
||||
libfdisk1 2.39.3-9ubuntu6.4 deb
|
||||
libffi8 3.4.6-1build1 deb
|
||||
libfftw3-single3 3.3.10-1ubuntu3 deb
|
||||
libfido2-1 1.14.0-1build3 deb
|
||||
libflac12t64 1.4.3+ds-2.1ubuntu2 deb
|
||||
libfontconfig1 2.15.0-1.1ubuntu2 deb
|
||||
libfontenc1 1:1.1.8-1build1 deb
|
||||
libfreetype6 2.13.2+dfsg-1build3 deb
|
||||
libfribidi0 1.0.13-3build1 deb
|
||||
libfuse2t64 2.9.9-8.1build1 deb
|
||||
libgbm1 25.2.8-0ubuntu0.24.04.1 deb
|
||||
libgcc-s1 14.2.0-4ubuntu2~24.04 deb
|
||||
libgcrypt20 1.10.3-2build1 deb
|
||||
libgdbm6t64 1.23-5.1build1 deb
|
||||
libgdk-pixbuf-2.0-0 2.42.10+dfsg-3ubuntu3.2 deb
|
||||
libgdk-pixbuf2.0-common 2.42.10+dfsg-3ubuntu3.2 deb
|
||||
libgif7 5.2.2-1ubuntu1 deb
|
||||
libgirepository-1.0-1 1.80.1-1 deb
|
||||
libgl1 1.7.0-1build1 deb
|
||||
libgl1-mesa-dri 25.2.8-0ubuntu0.24.04.1 deb
|
||||
libglib2.0-0t64 2.80.0-6ubuntu3.8 deb
|
||||
libglib2.0-bin 2.80.0-6ubuntu3.8 deb
|
||||
libglib2.0-data 2.80.0-6ubuntu3.8 deb
|
||||
libglvnd0 1.7.0-1build1 deb
|
||||
libglx-mesa0 25.2.8-0ubuntu0.24.04.1 deb
|
||||
libglx0 1.7.0-1build1 deb
|
||||
libgmp10 2:6.3.0+dfsg-2ubuntu6.1 deb
|
||||
libgnutls30t64 3.8.3-1.1ubuntu3.4 deb
|
||||
libgomp1 14.2.0-4ubuntu2~24.04 deb
|
||||
libgpg-error0 1.47-3build2.1 deb
|
||||
libgraphite2-3 1.3.14-2build1 deb
|
||||
libgs-common 10.02.1~dfsg1-0ubuntu7.8 deb
|
||||
libgs10 10.02.1~dfsg1-0ubuntu7.8 deb
|
||||
libgs10-common 10.02.1~dfsg1-0ubuntu7.8 deb
|
||||
libgsm1 1.0.22-1build1 deb
|
||||
libgssapi-krb5-2 1.20.1-6ubuntu2.6 deb
|
||||
libgstreamer-plugins-base1.0-0 1.24.2-1ubuntu0.3 deb
|
||||
libgstreamer1.0-0 1.24.2-1ubuntu0.1 deb
|
||||
libharfbuzz0b 8.3.0-2build2 deb
|
||||
libheif-plugin-aomdec 1.17.6-1ubuntu4.2 deb
|
||||
libheif-plugin-libde265 1.17.6-1ubuntu4.2 deb
|
||||
libheif1 1.17.6-1ubuntu4.2 deb
|
||||
libhogweed6t64 3.9.1-2.2build1.1 deb
|
||||
libhwy1t64 1.0.7-8.1build1 deb
|
||||
libice6 2:1.0.10-1build3 deb
|
||||
libicu74 74.2-1ubuntu3.1 deb
|
||||
libid3tag0 0.15.1b-14build1 deb
|
||||
libidn12 1.42-1build1 deb
|
||||
libidn2-0 2.3.7-2build1.1 deb
|
||||
libijs-0.35 0.35-15.1build1 deb
|
||||
libimlib2t64 1.12.1-1.1build2 deb
|
||||
libisl23 0.26-3build1.1 deb
|
||||
libjack-jackd2-0 1.9.21~dfsg-3ubuntu3 deb
|
||||
libjbig0 2.1-6.1ubuntu2 deb
|
||||
libjbig2dec0 0.20-1build3 deb
|
||||
libjpeg-turbo8 2.1.5-2ubuntu2 deb
|
||||
libjpeg8 8c-2ubuntu11 deb
|
||||
libjq1 1.7.1-3ubuntu0.24.04.1 deb
|
||||
libjson-c5 0.17-1build1 deb
|
||||
libjson-glib-1.0-0 1.8.0-2build2 deb
|
||||
libjson-glib-1.0-common 1.8.0-2build2 deb
|
||||
libjxl0.7 0.7.0-10.2ubuntu6.1 deb
|
||||
libk5crypto3 1.20.1-6ubuntu2.6 deb
|
||||
libkeyutils1 1.6.3-3build1 deb
|
||||
libkmod2 31+20240202-2ubuntu7.1 deb
|
||||
libkrb5-3 1.20.1-6ubuntu2.6 deb
|
||||
libkrb5support0 1.20.1-6ubuntu2.6 deb
|
||||
libksba8 1.6.6-1build1 deb
|
||||
liblcms2-2 2.14-2build1 deb
|
||||
libldap-common 2.6.10+dfsg-0ubuntu0.24.04.1 deb
|
||||
libldap2 2.6.10+dfsg-0ubuntu0.24.04.1 deb
|
||||
liblerc4 4.0.0+ds-4ubuntu2 deb
|
||||
libllvm20 1:20.1.2-0ubuntu1~24.04.2 deb
|
||||
liblocale-gettext-perl 1.07-6ubuntu5 deb
|
||||
libltdl7 2.4.7-7build1 deb
|
||||
liblz4-1 1.9.4-1build1.1 deb
|
||||
liblzma5 5.6.1+really5.4.5-1ubuntu0.2 deb
|
||||
libmd0 1.1.0-2build1.1 deb
|
||||
libmount1 2.39.3-9ubuntu6.4 deb
|
||||
libmp3lame0 3.100-6build1 deb
|
||||
libmpc3 1.3.1-1build1.1 deb
|
||||
libmpfr6 4.2.1-1build1.1 deb
|
||||
libmpg123-0t64 1.32.5-1ubuntu1.1 deb
|
||||
libncursesw6 6.4+20240113-1ubuntu2 deb
|
||||
libnettle8t64 3.9.1-2.2build1.1 deb
|
||||
libnghttp2-14 1.59.0-1ubuntu0.2 deb
|
||||
libnpth0t64 1.6-3.1build1 deb
|
||||
libnuma1 2.0.18-1ubuntu0.24.04.1 deb
|
||||
libobrender32v5 3.6.1-12build5 deb
|
||||
libobt2v5 3.6.1-12build5 deb
|
||||
libogg0 1.3.5-3build1 deb
|
||||
libonig5 6.9.9-1build1 deb
|
||||
libopenjp2-7 2.5.0-2ubuntu0.4 deb
|
||||
libopus0 1.4-1build1 deb
|
||||
liborc-0.4-0t64 1:0.4.38-1ubuntu0.1 deb
|
||||
libp11-kit0 0.25.3-4ubuntu2.1 deb
|
||||
libpackagekit-glib2-18 1.2.8-2ubuntu1.4 deb
|
||||
libpam-modules 1.5.3-5ubuntu5.5 deb
|
||||
libpam-modules-bin 1.5.3-5ubuntu5.5 deb
|
||||
libpam-runtime 1.5.3-5ubuntu5.5 deb
|
||||
libpam-systemd 255.4-1ubuntu8.12 deb
|
||||
libpam0g 1.5.3-5ubuntu5.5 deb
|
||||
libpango-1.0-0 1.52.1+ds-1build1 deb
|
||||
libpangocairo-1.0-0 1.52.1+ds-1build1 deb
|
||||
libpangoft2-1.0-0 1.52.1+ds-1build1 deb
|
||||
libpangoxft-1.0-0 1.52.1+ds-1build1 deb
|
||||
libpaper1 1.1.29build1 deb
|
||||
libpciaccess0 0.17-3ubuntu0.24.04.2 deb
|
||||
libpcre2-8-0 10.42-4ubuntu2.1 deb
|
||||
libpipeline1 1.5.7-2 deb
|
||||
libpixman-1-0 0.42.2-1build1 deb
|
||||
libpng16-16t64 1.6.43-5ubuntu0.5 deb
|
||||
libpolkit-agent-1-0 124-2ubuntu1.24.04.2 deb
|
||||
libpolkit-gobject-1-0 124-2ubuntu1.24.04.2 deb
|
||||
libproc2-0 2:4.0.4-4ubuntu3.2 deb
|
||||
libproxy1v5 0.5.4-4build1 deb
|
||||
libpsl5t64 0.21.2-1.1build1 deb
|
||||
libpthread-stubs0-dev 0.4-1build3 deb
|
||||
libpulse0 1:16.1+dfsg1-2ubuntu10.1 deb
|
||||
libpython3-stdlib 3.12.3-0ubuntu2.1 deb
|
||||
libpython3.12-minimal 3.12.3-1ubuntu0.11 deb
|
||||
libpython3.12-stdlib 3.12.3-1ubuntu0.11 deb
|
||||
librav1e0 0.7.1-2 deb
|
||||
libreadline8t64 8.2-4build1 deb
|
||||
librsvg2-2 2.58.0+dfsg-1build1 deb
|
||||
librtmp1 2.4+20151223.gitfa8646d.1-2build7 deb
|
||||
libsamplerate0 0.2.2-4build1 deb
|
||||
libsasl2-2 2.1.28+dfsg1-5ubuntu3.1 deb
|
||||
libsasl2-modules 2.1.28+dfsg1-5ubuntu3.1 deb
|
||||
libsasl2-modules-db 2.1.28+dfsg1-5ubuntu3.1 deb
|
||||
libseccomp2 2.5.5-1ubuntu3.1 deb
|
||||
libselinux1 3.5-2ubuntu2.1 deb
|
||||
libsemanage-common 3.5-1build5 deb
|
||||
libsemanage2 3.5-1build5 deb
|
||||
libsensors-config 1:3.6.0-9build1 deb
|
||||
libsensors5 1:3.6.0-9build1 deb
|
||||
libsepol2 3.5-2build1 deb
|
||||
libsharpyuv0 1.3.2-0.4build3 deb
|
||||
libshine3 3.1.1-2build1 deb
|
||||
libsigsegv2 2.14-1ubuntu2 deb
|
||||
libsm6 2:1.2.3-1build3 deb
|
||||
libsmartcols1 2.39.3-9ubuntu6.4 deb
|
||||
libsnapd-glib-2-1 1.64-0ubuntu5 deb
|
||||
libsnappy1v5 1.1.10-1build1 deb
|
||||
libsndfile1 1.2.2-1ubuntu5.24.04.1 deb
|
||||
libsoup-3.0-0 3.4.4-5ubuntu0.7 deb
|
||||
libsoup-3.0-common 3.4.4-5ubuntu0.7 deb
|
||||
libsoxr0 0.1.3-4build3 deb
|
||||
libspectre1 0.2.12-1build2 deb
|
||||
libspeex1 1.2.1-2ubuntu2.24.04.1 deb
|
||||
libspeexdsp1 1.2.1-1ubuntu3 deb
|
||||
libsqlite3-0 3.45.1-1ubuntu2.5 deb
|
||||
libss2 1.47.0-2.4~exp1ubuntu4.1 deb
|
||||
libssh-4 0.10.6-2ubuntu0.2 deb
|
||||
libssl3t64 3.0.13-0ubuntu3.7 deb
|
||||
libstartup-notification0 0.12-6build3 deb
|
||||
libstdc++6 14.2.0-4ubuntu2~24.04 deb
|
||||
libstemmer0d 2.2.0-4build1 deb
|
||||
libsvtav1enc1d1 1.7.0+dfsg-2build1 deb
|
||||
libswresample4 7:6.1.1-3ubuntu5 deb
|
||||
libsystemd-shared 255.4-1ubuntu8.12 deb
|
||||
libsystemd0 255.4-1ubuntu8.12 deb
|
||||
libtasn1-6 4.19.0-3ubuntu0.24.04.2 deb
|
||||
libtdb1 1.4.10-1build1 deb
|
||||
libthai-data 0.1.29-2build1 deb
|
||||
libthai0 0.1.29-2build1 deb
|
||||
libtheora0 1.1.1+dfsg.1-16.1build3 deb
|
||||
libtiff6 4.5.1+git230720-4ubuntu2.4 deb
|
||||
libtinfo6 6.4+20240113-1ubuntu2 deb
|
||||
libtwolame0 0.4.0-2build3 deb
|
||||
libuchardet0 0.0.8-1build1 deb
|
||||
libudev1 255.4-1ubuntu8.12 deb
|
||||
libunistring5 1.1-2build1.1 deb
|
||||
libunwind8 1.6.2-3build1.1 deb
|
||||
libutempter0 1.2.1-3build1 deb
|
||||
libuuid1 2.39.3-9ubuntu6.4 deb
|
||||
libva-drm2 2.20.0-2ubuntu0.1 deb
|
||||
libva-x11-2 2.20.0-2ubuntu0.1 deb
|
||||
libva2 2.20.0-2ubuntu0.1 deb
|
||||
libvdpau1 1.5-2build1 deb
|
||||
libvorbis0a 1.3.7-1build3 deb
|
||||
libvorbisenc2 1.3.7-1build3 deb
|
||||
libvpl2 2023.3.0-1build1 deb
|
||||
libvpx9 1.14.0-1ubuntu2.2 deb
|
||||
libvulkan1 1.3.275.0-1build1 deb
|
||||
libwayland-client0 1.22.0-2.1build1 deb
|
||||
libwebp7 1.3.2-0.4build3 deb
|
||||
libwebpdemux2 1.3.2-0.4build3 deb
|
||||
libwebpmux3 1.3.2-0.4build3 deb
|
||||
libwebrtc-audio-processing1 0.3.1-0ubuntu6 deb
|
||||
libwrap0 7.6.q-33 deb
|
||||
libx11-6 2:1.8.7-1build1 deb
|
||||
libx11-data 2:1.8.7-1build1 deb
|
||||
libx11-dev 2:1.8.7-1build1 deb
|
||||
libx11-xcb1 2:1.8.7-1build1 deb
|
||||
libx264-164 2:0.164.3108+git31e19f9-1 deb
|
||||
libx265-199 3.5-2build1 deb
|
||||
libxau-dev 1:1.0.9-1build6 deb
|
||||
libxau6 1:1.0.9-1build6 deb
|
||||
libxaw7 2:1.0.14-1build2 deb
|
||||
libxcb-damage0 1.15-1ubuntu2 deb
|
||||
libxcb-dri2-0 1.15-1ubuntu2 deb
|
||||
libxcb-dri3-0 1.15-1ubuntu2 deb
|
||||
libxcb-glx0 1.15-1ubuntu2 deb
|
||||
libxcb-present0 1.15-1ubuntu2 deb
|
||||
libxcb-randr0 1.15-1ubuntu2 deb
|
||||
libxcb-render0 1.15-1ubuntu2 deb
|
||||
libxcb-shape0 1.15-1ubuntu2 deb
|
||||
libxcb-shm0 1.15-1ubuntu2 deb
|
||||
libxcb-sync1 1.15-1ubuntu2 deb
|
||||
libxcb-util1 0.4.0-1build3 deb
|
||||
libxcb-xfixes0 1.15-1ubuntu2 deb
|
||||
libxcb1 1.15-1ubuntu2 deb
|
||||
libxcb1-dev 1.15-1ubuntu2 deb
|
||||
libxcomposite1 1:0.4.5-1build3 deb
|
||||
libxcursor1 1:1.2.1-1build1 deb
|
||||
libxcvt0 0.1.2-1build1 deb
|
||||
libxdamage1 1:1.1.6-1build1 deb
|
||||
libxdmcp-dev 1:1.1.3-0ubuntu6 deb
|
||||
libxdmcp6 1:1.1.3-0ubuntu6 deb
|
||||
libxext6 2:1.3.4-1build2 deb
|
||||
libxfixes3 1:6.0.0-2build1 deb
|
||||
libxfont2 1:2.0.6-1build1 deb
|
||||
libxft2 2.3.6-1build1 deb
|
||||
libxi6 2:1.8.1-1build1 deb
|
||||
libxinerama1 2:1.1.4-3build1 deb
|
||||
libxkbfile1 1:1.1.0-1build4 deb
|
||||
libxml2 2.9.14+dfsg-1.3ubuntu3.7 deb
|
||||
libxmlb2 0.3.18-1 deb
|
||||
libxmu6 2:1.1.3-3build2 deb
|
||||
libxmuu1 2:1.1.3-3build2 deb
|
||||
libxpm4 1:3.5.17-1build2 deb
|
||||
libxrandr2 2:1.5.2-2build1 deb
|
||||
libxrender1 1:0.9.10-1.1build1 deb
|
||||
libxshmfence1 1.3-1build5 deb
|
||||
libxss1 1:1.2.3-1build3 deb
|
||||
libxt6t64 1:1.2.1-1.2build1 deb
|
||||
libxtst6 2:1.2.3-1.1build1 deb
|
||||
libxv1 2:1.0.11-1.1build1 deb
|
||||
libxvidcore4 2:1.3.7-1build1 deb
|
||||
libxvmc1 2:1.0.12-2build3 deb
|
||||
libxxf86dga1 2:1.1.5-1build1 deb
|
||||
libxxf86vm1 1:1.1.4-1build4 deb
|
||||
libxxhash0 0.8.2-2build1 deb
|
||||
libyaml-0-2 0.2.5-1build1 deb
|
||||
libzstd1 1.5.5+dfsg2-2build1.1 deb
|
||||
libzvbi-common 0.2.42-2 deb
|
||||
libzvbi0t64 0.2.42-2 deb
|
||||
locales 2.39-0ubuntu8.7 deb
|
||||
locales-all 2.39-0ubuntu8.7 deb
|
||||
login 1:4.13+dfsg1-4ubuntu3.2 deb
|
||||
logsave 1.47.0-2.4~exp1ubuntu4.1 deb
|
||||
lsb-release 12.0-2 deb
|
||||
man-db 2.12.0-4build2 deb
|
||||
mawk 1.3.4.20240123-1build1 deb
|
||||
media-types 10.1.0 deb
|
||||
mesa-libgallium 25.2.8-0ubuntu0.24.04.1 deb
|
||||
mesa-va-drivers 25.2.8-0ubuntu0.24.04.1 deb
|
||||
mesa-vulkan-drivers 25.2.8-0ubuntu0.24.04.1 deb
|
||||
mount 2.39.3-9ubuntu6.4 deb
|
||||
ncurses-base 6.4+20240113-1ubuntu2 deb
|
||||
ncurses-bin 6.4+20240113-1ubuntu2 deb
|
||||
netbase 6.4 deb
|
||||
netcat-openbsd 1.226-1ubuntu2 deb
|
||||
oauthlib 3.2.2 python
|
||||
ocl-icd-libopencl1 2.3.2-1build1 deb
|
||||
openbox 3.6.1-12build5 deb
|
||||
openssh-client 1:9.6p1-3ubuntu13.14 deb
|
||||
openssl 3.0.13-0ubuntu3.7 deb
|
||||
packagekit 1.2.8-2ubuntu1.4 deb
|
||||
passwd 1:4.13+dfsg1-4ubuntu3.2 deb
|
||||
perl-base 5.38.2-3.2ubuntu0.2 deb
|
||||
pinentry-curses 1.2.1-3ubuntu5 deb
|
||||
polkitd 124-2ubuntu1.24.04.2 deb
|
||||
poppler-data 0.4.12-1 deb
|
||||
procps 2:4.0.4-4ubuntu3.2 deb
|
||||
publicsuffix 20231001.0357-0.1 deb
|
||||
pulseaudio 1:16.1+dfsg1-2ubuntu10.1 deb
|
||||
pulseaudio-utils 1:16.1+dfsg1-2ubuntu10.1 deb
|
||||
pygobject 3.48.2 python
|
||||
pyjwt 2.7.0 python
|
||||
pyparsing 3.1.1 python
|
||||
python-apt 2.7.7+ubuntu5.2 python
|
||||
python-apt-common 2.7.7ubuntu5.2 deb
|
||||
python3 3.12.3-0ubuntu2.1 deb
|
||||
python3-apt 2.7.7ubuntu5.2 deb
|
||||
python3-blinker 1.7.0-1 deb
|
||||
python3-cffi-backend 1.16.0-2build1 deb
|
||||
python3-cryptography 41.0.7-4ubuntu0.1 deb
|
||||
python3-dbus 1.3.2-5build3 deb
|
||||
python3-distro 1.9.0-1 deb
|
||||
python3-gi 3.48.2-1 deb
|
||||
python3-httplib2 0.20.4-3 deb
|
||||
python3-jwt 2.7.0-1 deb
|
||||
python3-launchpadlib 1.11.0-6 deb
|
||||
python3-lazr.restfulclient 0.14.6-1 deb
|
||||
python3-lazr.uri 1.0.6-3 deb
|
||||
python3-minimal 3.12.3-0ubuntu2.1 deb
|
||||
python3-oauthlib 3.2.2-1 deb
|
||||
python3-pkg-resources 68.1.2-2ubuntu1.2 deb
|
||||
python3-pyparsing 3.1.1-1 deb
|
||||
python3-six 1.16.0-4 deb
|
||||
python3-software-properties 0.99.49.3 deb
|
||||
python3-wadllib 1.3.6-5 deb
|
||||
python3.12 3.12.3-1ubuntu0.11 deb
|
||||
python3.12-minimal 3.12.3-1ubuntu0.11 deb
|
||||
readline-common 8.2-4build1 deb
|
||||
sed 4.9-2build1 deb
|
||||
sensible-utils 0.0.22 deb
|
||||
session-migration 0.3.9build1 deb
|
||||
sgml-base 1.31 deb
|
||||
shared-mime-info 2.4-4 deb
|
||||
six 1.16.0 python
|
||||
software-properties-common 0.99.49.3 deb
|
||||
ssl-cert 1.1.2ubuntu1 deb
|
||||
stdlib go1.24.11 go-module
|
||||
stdlib go1.25.6 go-module
|
||||
sudo 1.9.15p5-3ubuntu5.24.04.1 deb
|
||||
systemd 255.4-1ubuntu8.12 deb
|
||||
systemd-dev 255.4-1ubuntu8.12 deb
|
||||
systemd-sysv 255.4-1ubuntu8.12 deb
|
||||
sysvinit-utils 3.08-6ubuntu3 deb
|
||||
tags.cncf.io/container-device-interface v1.1.0 go-module
|
||||
tar 1.35+dfsg-3build1 deb
|
||||
tzdata 2025b-0ubuntu0.24.04.1 deb
|
||||
ubuntu-keyring 2023.11.28.1 deb
|
||||
ucf 3.0043+nmu1 deb
|
||||
udev 255.4-1ubuntu8.12 deb
|
||||
unminimize 0.2.1 deb
|
||||
util-linux 2.39.3-9ubuntu6.4 deb
|
||||
wadllib 1.3.6 python
|
||||
x11-apps 7.7+11build3 deb
|
||||
x11-common 1:7.7+23ubuntu3 deb
|
||||
x11-session-utils 7.7+6build2 deb
|
||||
x11-utils 7.7+6build2 deb
|
||||
x11-xkb-utils 7.7+8build2 deb
|
||||
x11-xserver-utils 7.7+10build2 deb
|
||||
x11proto-dev 2023.2-1 deb
|
||||
xbitmaps 1.1.1-2.2 deb
|
||||
xfonts-base 1:1.0.5+nmu1 deb
|
||||
xfonts-encodings 1:1.0.5-0ubuntu2 deb
|
||||
xfonts-utils 1:7.7+6build3 deb
|
||||
xkb-data 2.41-2ubuntu1.1 deb
|
||||
xml-core 0.19 deb
|
||||
xorg-sgml-doctools 1:1.11-1.1 deb
|
||||
xorgxrdp 1:0.9.19-1 deb
|
||||
xrdp 0.9.24-4 deb
|
||||
xserver-common 2:21.1.12-1ubuntu1.5 deb
|
||||
xserver-xorg-core 2:21.1.12-1ubuntu1.5 deb
|
||||
xserver-xorg-video-amdgpu 23.0.0-1ubuntu0.24.04.1 deb
|
||||
xserver-xorg-video-ati 1:22.0.0-1build1 deb
|
||||
xserver-xorg-video-intel 2:2.99.917+git20210115-1build1 deb
|
||||
xserver-xorg-video-nouveau 1:1.0.17-2ubuntu0.1 deb
|
||||
xserver-xorg-video-qxl 0.1.6-1build1 deb
|
||||
xserver-xorg-video-radeon 1:22.0.0-1build1 deb
|
||||
xterm 390-1ubuntu3 deb
|
||||
xtrans-dev 1.4.0-1 deb
|
||||
xutils 1:7.7+23ubuntu3 deb
|
||||
zlib1g 1:1.3.dfsg-3.1ubuntu2.1 deb
|
||||
|
||||
183
readme-vars.yml
183
readme-vars.yml
@ -4,30 +4,181 @@
|
||||
project_name: baseimage-rdesktop
|
||||
full_custom_readme: |
|
||||
{% raw -%}
|
||||
[linuxserverurl]: https://linuxserver.io
|
||||
[forumurl]: https://forum.linuxserver.io
|
||||
[ircurl]: https://www.linuxserver.io/irc/
|
||||
# rdesktop Base Images from LinuxServer
|
||||
|
||||
[][linuxserverurl]
|
||||
The purpose of these images is to provide a full featured rdesktop Linux desktop experience for any Linux application or desktop environment. They ship with passwordless sudo to allow easy package installation, testing, and customization. By default they have no logic to mount out anything but the users home directory, meaning on image updates anything outside of `/config` will be lost.
|
||||
|
||||
## Contact information:-
|
||||
- Support for using our base images in your own projects is provided on a Reasonable Endeavours basis, please see our [Support Policy](https://www.linuxserver.io/supportpolicy) for details.
|
||||
- There is no `latest` tag for any of our base images, by design. We often make breaking changes between versions, and we don't publish release notes like we do for the downstream images.
|
||||
- If you're intending to distribute an image using one of our bases, please read our [docs on container branding](https://docs.linuxserver.io/general/container-branding/) first.
|
||||
- Images are supported for as long as the upstream release on which they are based, after which we will stop building new base images for that version.
|
||||
|
||||
| Type | Address/Details |
|
||||
| :---: | --- |
|
||||
| Discord | [Discord](https://discord.gg/YWrKVTn) |
|
||||
| IRC | freenode at `#linuxserver.io` more information at:- [IRC][ircurl]
|
||||
| Forum | [LinuxServer.io forum][forumurl] |
|
||||
# Options
|
||||
|
||||
|
||||
|
||||
All application settings are passed via environment variables:
|
||||
|
||||
[](https://microbadger.com/images/lsiobase/rdesktop "Get your own image badge on microbadger.com")
|
||||
| Variable | Description |
|
||||
| :----: | --- |
|
||||
| LC_ALL | Set the Language for the container to run as IE `fr_FR.UTF-8` `ar_AE.UTF-8` |
|
||||
| NO_DECOR | If set the application will run without window borders. (Decor can be enabled and disabled with Ctrl+Shift+d) |
|
||||
| NO_FULL | Do not autmatically fullscreen applications when using openbox. |
|
||||
|
||||
[](https://github.com/linuxserver/docker-baseimage-rdesktop/blob/master/Dockerfile)
|
||||
## Language Support - Internationalization
|
||||
|
||||
A custom base image built with [Ubuntu linux](https://www.ubuntu.com/) and [xrdp](http://xrdp.org/)
|
||||
The environment variable `LC_ALL` can be used to start this image in a different language than English simply pass for example to launch the Desktop session in French `LC_ALL=fr_FR.UTF-8`. Some languages like Chinese, Japanese, or Korean will be missing fonts needed to render properly known as cjk fonts, but others may exist and not be installed. We only ensure fonts for Latin characters are present. Fonts can be installed with a mod on startup.
|
||||
|
||||
To install cjk fonts on startup as an example pass the environment variables(Debian):
|
||||
|
||||
```
|
||||
-e DOCKER_MODS=linuxserver/mods:universal-package-install
|
||||
-e INSTALL_PACKAGES=fonts-noto-cjk
|
||||
-e LC_ALL=zh_CN.UTF-8
|
||||
```
|
||||
|
||||
# Available Distros
|
||||
|
||||
All base images are built for x86_64 and aarch64 platforms.
|
||||
|
||||
| Distro | Current Tag |
|
||||
| :----: | --- |
|
||||
| Ubuntu | ubuntunoble |
|
||||
|
||||
# PRoot Apps
|
||||
|
||||
All images include [proot-apps](https://github.com/linuxserver/proot-apps) which allow portable applications to be installed to persistent storage in the user's `$HOME` directory. These applications and their settings will persist upgrades of the base container and can be mounted into different flavors of rdesktop containers. IE if you are running an Alpine based container you will be able to use the same `/config` directory mounted into an Ubuntu based container and retain the same applications and settings as long as they were installed with `proot-apps install`.
|
||||
|
||||
A list of linuxserver.io supported applications is located [HERE](https://github.com/linuxserver/proot-apps?tab=readme-ov-file#supported-apps).
|
||||
|
||||
# I like to read documentation
|
||||
|
||||
## Building images
|
||||
|
||||
### Application containers
|
||||
|
||||
Included in these base images is a simple [Openbox DE](http://openbox.org/) and the accompanying logic needed to launch a single application. Lets look at the bare minimum needed to create an application container starting with a Dockerfile:
|
||||
|
||||
```
|
||||
FROM ghcr.io/linuxserver/baseimage-rdesktop:alpine320
|
||||
RUN apk add --no-cache firefox
|
||||
COPY /root /
|
||||
```
|
||||
|
||||
And we can define the application to start using:
|
||||
|
||||
```
|
||||
mkdir -p root/defaults
|
||||
echo "firefox" > root/defaults/autostart
|
||||
```
|
||||
|
||||
Resulting in a folder that looks like this:
|
||||
|
||||
```
|
||||
├── Dockerfile
|
||||
└── root
|
||||
└── defaults
|
||||
└── autostart
|
||||
```
|
||||
|
||||
Now build and test:
|
||||
|
||||
```
|
||||
docker build -t firefox .
|
||||
docker run --rm -it -p 3389:3389 firefox bash
|
||||
```
|
||||
|
||||
On rdp port 3389 you will be presented with a fullscreen firefox window.
|
||||
|
||||
This similar setup can be used to embed any Linux Desktop application in an rdp accesible container.
|
||||
|
||||
**If building images it is important to note that many application will not work inside of Docker without `--security-opt seccomp=unconfined`, they may have launch flags to not use syscalls blocked by Docker like with chromium based applications and `--no-sandbox`. In general do not expect every application will simply work like a native Linux installation without some modifications**
|
||||
|
||||
#### In container application launching
|
||||
|
||||
Also included in the init logic is the ability to define application launchers. As the user has the ability to close the application or if they want to open multiple instances of it this can be useful. Here is an example of a menu definition file for Firefox:
|
||||
|
||||
```
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<openbox_menu xmlns="http://openbox.org/3.4/menu">
|
||||
<menu id="root-menu" label="MENU">
|
||||
<item label="xterm" icon="/usr/share/pixmaps/xterm-color_48x48.xpm"><action name="Execute"><command>/usr/bin/xterm</command></action></item>
|
||||
<item label="FireFox" icon="/usr/share/icons/hicolor/48x48/apps/firefox.png"><action name="Execute"><command>/usr/bin/firefox</command></action></item>
|
||||
</menu>
|
||||
</openbox_menu>
|
||||
```
|
||||
|
||||
Simply create this file and add it to your defaults folder as `menu.xml`:
|
||||
|
||||
```
|
||||
├── Dockerfile
|
||||
└── root
|
||||
└── defaults
|
||||
└── autostart
|
||||
└── menu.xml
|
||||
```
|
||||
|
||||
This allows users to right click the desktop background to launch the application.
|
||||
|
||||
|
||||
### Full Desktop environments
|
||||
|
||||
When building an application container we are leveraging the Openbox DE to handle window management, but it is also possible to completely replace the DE that is launched on container init using the `startwm.sh` script, located again in defaults:
|
||||
|
||||
```
|
||||
├── Dockerfile
|
||||
└── root
|
||||
└── defaults
|
||||
└── startwm.sh
|
||||
```
|
||||
|
||||
If included in the build logic it will be launched in place of Openbox. Examples for this kind of configuration can be found in our [rdesktop repository](https://github.com/linuxserver/docker-rdesktop)
|
||||
|
||||
## Open Source GPU Acceleration
|
||||
|
||||
For accelerated apps or games, render devices can be mounted into the container and leveraged by applications using:
|
||||
|
||||
`--device /dev/dri:/dev/dri`
|
||||
|
||||
This feature only supports **Open Source** GPU drivers:
|
||||
|
||||
| Driver | Description |
|
||||
| :----: | --- |
|
||||
| Intel | i965 and i915 drivers for Intel iGPU chipsets |
|
||||
| AMD | AMDGPU, Radeon, and ATI drivers for AMD dedicated or APU chipsets |
|
||||
| NVIDIA | nouveau2 drivers only, closed source NVIDIA drivers lack DRI3 support |
|
||||
|
||||
## Nvidia GPU Support
|
||||
|
||||
**Nvidia is not compatible with Alpine based images**
|
||||
|
||||
Nvidia support is available by leveraging Zink for OpenGL support. This can be enabled with the following run flags:
|
||||
|
||||
| Variable | Description |
|
||||
| :----: | --- |
|
||||
| --gpus all | This can be filtered down but for most setups this will pass the one Nvidia GPU on the system |
|
||||
| --runtime nvidia | Specify the Nvidia runtime which mounts drivers and tools in from the host |
|
||||
|
||||
The compose syntax is slightly different for this as you will need to set nvidia as the default runtime:
|
||||
|
||||
```
|
||||
sudo nvidia-ctk runtime configure --runtime=docker --set-as-default
|
||||
sudo service docker restart
|
||||
```
|
||||
|
||||
And to assign the GPU in compose:
|
||||
|
||||
```
|
||||
services:
|
||||
myimage:
|
||||
image: myname/myimage:mytag
|
||||
deploy:
|
||||
resources:
|
||||
reservations:
|
||||
devices:
|
||||
- driver: nvidia
|
||||
count: 1
|
||||
capabilities: [compute,video,graphics,utility]
|
||||
```
|
||||
|
||||
The following line is only in this repo for loop testing:
|
||||
|
||||
- { date: "01.01.50:", desc: "I am the release message for this internal repo." }
|
||||
{%- endraw %}
|
||||
|
||||
1
root/defaults/autostart
Executable file
1
root/defaults/autostart
Executable file
@ -0,0 +1 @@
|
||||
xterm
|
||||
0
root/defaults/bashrc
Normal file → Executable file
0
root/defaults/bashrc
Normal file → Executable file
6
root/defaults/menu.xml
Normal file
6
root/defaults/menu.xml
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<openbox_menu xmlns="http://openbox.org/3.4/menu">
|
||||
<menu id="root-menu" label="MENU">
|
||||
<item label="xterm" icon="/usr/share/pixmaps/xterm-color_48x48.xpm"><action name="Execute"><command>/usr/bin/xterm</command></action></item>
|
||||
</menu>
|
||||
</openbox_menu>
|
||||
16
root/defaults/startwm.sh
Executable file
16
root/defaults/startwm.sh
Executable file
@ -0,0 +1,16 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Combine env
|
||||
/usr/bin/with-contenv /usr/bin/env | sed 's/^/export /g' > /defaults/env.sh
|
||||
source /defaults/env.sh
|
||||
rm /defaults/env.sh
|
||||
|
||||
# Enable Nvidia GPU support if detected
|
||||
if which nvidia-smi; then
|
||||
export LIBGL_KOPPER_DRI2=1
|
||||
export MESA_LOADER_DRIVER_OVERRIDE=zink
|
||||
export GALLIUM_DRIVER=zink
|
||||
fi
|
||||
|
||||
/startpulse.sh &
|
||||
/usr/bin/openbox-session
|
||||
@ -1,23 +0,0 @@
|
||||
#!/usr/bin/with-contenv bash
|
||||
|
||||
if [ ! -e /lock.file ]; then
|
||||
# give abc a sudo shell
|
||||
chsh abc -s /bin/bash
|
||||
sed -e 's/%sudo ALL=(ALL:ALL) ALL/%sudo ALL=(ALL:ALL) NOPASSWD: ALL/g' \
|
||||
-i /etc/sudoers
|
||||
sed -e 's/^wheel:\(.*\)/wheel:\1,abc/g' -i /etc/group
|
||||
fi
|
||||
|
||||
# create lock file after first run
|
||||
touch /lock.file
|
||||
|
||||
# default file copies first run
|
||||
[[ ! -d /config/.config ]] && \
|
||||
mkdir -p /config/.config && \
|
||||
cp /defaults/bashrc /config/.bashrc && \
|
||||
cp /defaults/startwm.sh /config/startwm.sh
|
||||
|
||||
# permissions
|
||||
PERM=$(stat -c '%U' /config/.config)
|
||||
[[ "${PERM}" != "abc" ]] && \
|
||||
chown -R abc:abc /config
|
||||
5
root/etc/cont-init.d/13-keygen → root/etc/s6-overlay/s6-rc.d/init-keygen/run
Normal file → Executable file
5
root/etc/cont-init.d/13-keygen → root/etc/s6-overlay/s6-rc.d/init-keygen/run
Normal file → Executable file
@ -1,7 +1,8 @@
|
||||
#!/usr/bin/with-contenv bash
|
||||
# shellcheck shell=bash
|
||||
|
||||
if [ ! -f "/keylock" ]; then
|
||||
cd /etc/xrdp
|
||||
if [[ ! -f "/keylock" ]]; then
|
||||
cd /etc/xrdp || exit 1
|
||||
xrdp-keygen xrdp
|
||||
rm -f /etc/xrdp/*.pem
|
||||
openssl req -x509 -nodes -days 3650 -newkey rsa:2048 \
|
||||
1
root/etc/s6-overlay/s6-rc.d/init-keygen/type
Normal file
1
root/etc/s6-overlay/s6-rc.d/init-keygen/type
Normal file
@ -0,0 +1 @@
|
||||
oneshot
|
||||
1
root/etc/s6-overlay/s6-rc.d/init-keygen/up
Normal file
1
root/etc/s6-overlay/s6-rc.d/init-keygen/up
Normal file
@ -0,0 +1 @@
|
||||
/etc/s6-overlay/s6-rc.d/init-keygen/run
|
||||
1
root/etc/s6-overlay/s6-rc.d/init-prep-xrdp/type
Normal file
1
root/etc/s6-overlay/s6-rc.d/init-prep-xrdp/type
Normal file
@ -0,0 +1 @@
|
||||
oneshot
|
||||
1
root/etc/s6-overlay/s6-rc.d/init-prep-xrdp/up
Normal file
1
root/etc/s6-overlay/s6-rc.d/init-prep-xrdp/up
Normal file
@ -0,0 +1 @@
|
||||
/etc/s6-overlay/s6-rc.d/init-prep-xrdp/run
|
||||
1
root/etc/s6-overlay/s6-rc.d/init-rdesktop-end/type
Normal file
1
root/etc/s6-overlay/s6-rc.d/init-rdesktop-end/type
Normal file
@ -0,0 +1 @@
|
||||
oneshot
|
||||
1
root/etc/s6-overlay/s6-rc.d/init-rdesktop-end/up
Normal file
1
root/etc/s6-overlay/s6-rc.d/init-rdesktop-end/up
Normal file
@ -0,0 +1 @@
|
||||
# This file doesn't do anything, it's just the end of the rdesktop base init process
|
||||
67
root/etc/s6-overlay/s6-rc.d/init-rdesktop/run
Executable file
67
root/etc/s6-overlay/s6-rc.d/init-rdesktop/run
Executable file
@ -0,0 +1,67 @@
|
||||
#!/usr/bin/with-contenv bash
|
||||
# shellcheck shell=bash
|
||||
|
||||
# default file copies first run
|
||||
if [[ ! -d /config/.config ]]; then
|
||||
mkdir -p /config/.config
|
||||
cp /defaults/bashrc /config/.bashrc
|
||||
cp /defaults/startwm.sh /config/startwm.sh
|
||||
fi
|
||||
if [[ ! -f /config/.config/openbox/autostart ]]; then
|
||||
mkdir -p /config/.config/openbox
|
||||
cp /defaults/autostart /config/.config/openbox/autostart
|
||||
fi
|
||||
if [[ ! -f /config/.config/openbox/menu.xml ]]; then
|
||||
mkdir -p /config/.config/openbox
|
||||
cp /defaults/menu.xml /config/.config/openbox/menu.xml
|
||||
fi
|
||||
|
||||
# XDG Home
|
||||
printf "/config/.XDG" > /run/s6/container_environment/XDG_RUNTIME_DIR
|
||||
if [ ! -d "/config/.XDG" ]; then
|
||||
mkdir -p /config/.XDG
|
||||
chown abc:abc /config/.XDG
|
||||
fi
|
||||
|
||||
# Locale Support
|
||||
if [ ! -z ${LC_ALL+x} ]; then
|
||||
printf "${LC_ALL%.UTF-8}" > /run/s6/container_environment/LANGUAGE
|
||||
printf "${LC_ALL}" > /run/s6/container_environment/LANG
|
||||
fi
|
||||
|
||||
# Remove window borders
|
||||
if [[ ! -z ${NO_DECOR+x} ]] && [[ ! -f /decorlock ]]; then
|
||||
sed -i \
|
||||
's|</applications>| <application class="*"> <decor>no</decor> </application>\n</applications>|' \
|
||||
/etc/xdg/openbox/rc.xml
|
||||
touch /decorlock
|
||||
fi
|
||||
|
||||
# Fullscreen everything in openbox unless the user explicitly disables it
|
||||
if [[ ! -z ${NO_FULL+x} ]] && [[ ! -f /fulllock ]]; then
|
||||
sed -i \
|
||||
'/<application class="\*"><maximized>yes<\/maximized><\/application>/d' \
|
||||
/etc/xdg/openbox/rc.xml
|
||||
touch /fulllock
|
||||
fi
|
||||
|
||||
# Add proot-apps
|
||||
if [ ! -f "/config/.local/bin/proot-apps" ]; then
|
||||
mkdir -p /config/.local/bin/
|
||||
cp /proot-apps/* /config/.local/bin/
|
||||
echo 'export PATH="/config/.local/bin:$PATH"' >> /config/.bashrc
|
||||
chown abc:abc \
|
||||
/config/.bashrc \
|
||||
/config/.local/ \
|
||||
/config/.local/bin \
|
||||
/config/.local/bin/{ncat,proot-apps,proot,jq,pversion}
|
||||
elif ! diff -q /proot-apps/pversion /config/.local/bin/pversion > /dev/null; then
|
||||
cp /proot-apps/* /config/.local/bin/
|
||||
chown abc:abc /config/.local/bin/{ncat,proot-apps,proot,jq,pversion}
|
||||
fi
|
||||
|
||||
# permissions
|
||||
PERM=$(stat -c '%U' /config/.config)
|
||||
if [[ "${PERM}" != "abc" ]]; then
|
||||
chown -R abc:abc /config
|
||||
fi
|
||||
1
root/etc/s6-overlay/s6-rc.d/init-rdesktop/type
Normal file
1
root/etc/s6-overlay/s6-rc.d/init-rdesktop/type
Normal file
@ -0,0 +1 @@
|
||||
oneshot
|
||||
1
root/etc/s6-overlay/s6-rc.d/init-rdesktop/up
Normal file
1
root/etc/s6-overlay/s6-rc.d/init-rdesktop/up
Normal file
@ -0,0 +1 @@
|
||||
/etc/s6-overlay/s6-rc.d/init-rdesktop/run
|
||||
36
root/etc/s6-overlay/s6-rc.d/init-video/run
Executable file
36
root/etc/s6-overlay/s6-rc.d/init-video/run
Executable file
@ -0,0 +1,36 @@
|
||||
#!/usr/bin/with-contenv bash
|
||||
# shellcheck shell=bash
|
||||
|
||||
FILES=$(find /dev/dri /dev/dvb -type c -print 2>/dev/null)
|
||||
|
||||
for i in $FILES
|
||||
do
|
||||
VIDEO_GID=$(stat -c '%g' "${i}")
|
||||
VIDEO_UID=$(stat -c '%u' "${i}")
|
||||
# check if user matches device
|
||||
if id -u abc | grep -qw "${VIDEO_UID}"; then
|
||||
echo "**** permissions for ${i} are good ****"
|
||||
else
|
||||
# check if group matches and that device has group rw
|
||||
if id -G abc | grep -qw "${VIDEO_GID}" && [[ $(stat -c '%A' "${i}" | cut -b 5,6) = "rw" ]]; then
|
||||
echo "**** permissions for ${i} are good ****"
|
||||
# check if device needs to be added to video group
|
||||
elif ! id -G abc | grep -qw "${VIDEO_GID}"; then
|
||||
# check if video group needs to be created
|
||||
VIDEO_NAME=$(getent group "${VIDEO_GID}" | awk -F: '{print $1}')
|
||||
if [ -z "${VIDEO_NAME}" ]; then
|
||||
VIDEO_NAME="video$(head /dev/urandom | tr -dc 'a-z0-9' | head -c4)"
|
||||
groupadd "${VIDEO_NAME}"
|
||||
groupmod -g "${VIDEO_GID}" "${VIDEO_NAME}"
|
||||
echo "**** creating video group ${VIDEO_NAME} with id ${VIDEO_GID} ****"
|
||||
fi
|
||||
echo "**** adding ${i} to video group ${VIDEO_NAME} with id ${VIDEO_GID} ****"
|
||||
usermod -a -G "${VIDEO_NAME}" abc
|
||||
fi
|
||||
# check if device has group rw
|
||||
if [[ $(stat -c '%A' "${i}" | cut -b 5,6) != "rw" ]]; then
|
||||
echo -e "**** The device ${i} does not have group read/write permissions, attempting to fix inside the container.If it doesn't work, you can run the following on your docker host: ****\nsudo chmod g+rw ${i}\n"
|
||||
chmod g+rw "${i}"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
1
root/etc/s6-overlay/s6-rc.d/init-video/type
Normal file
1
root/etc/s6-overlay/s6-rc.d/init-video/type
Normal file
@ -0,0 +1 @@
|
||||
oneshot
|
||||
1
root/etc/s6-overlay/s6-rc.d/init-video/up
Normal file
1
root/etc/s6-overlay/s6-rc.d/init-video/up
Normal file
@ -0,0 +1 @@
|
||||
/etc/s6-overlay/s6-rc.d/init-video/run
|
||||
@ -0,0 +1 @@
|
||||
4
|
||||
@ -1,9 +1,9 @@
|
||||
#!/bin/execlineb -P
|
||||
#! /usr/bin/execlineb -P
|
||||
|
||||
# Redirect stderr to stdout.
|
||||
fdmove -c 2 1
|
||||
|
||||
# Notify service manager when xrdp is up
|
||||
s6-notifyoncheck -w 500 -c "true &>/dev/null </dev/tcp/127.0.0.1/3350"
|
||||
s6-notifyoncheck -w 500 -c "nc -z localhost 3350"
|
||||
|
||||
/usr/sbin/xrdp-sesman --nodaemon
|
||||
1
root/etc/s6-overlay/s6-rc.d/svc-xrdp-sesman/type
Normal file
1
root/etc/s6-overlay/s6-rc.d/svc-xrdp-sesman/type
Normal file
@ -0,0 +1 @@
|
||||
longrun
|
||||
12
root/etc/s6-overlay/s6-rc.d/svc-xrdp/run
Executable file
12
root/etc/s6-overlay/s6-rc.d/svc-xrdp/run
Executable file
@ -0,0 +1,12 @@
|
||||
#! /usr/bin/execlineb -P
|
||||
|
||||
# Move stderr to out so it's piped to logger
|
||||
fdmove -c 2 1
|
||||
|
||||
# Notify service manager when xrdp is up
|
||||
s6-notifyoncheck -w 500 -c "nc -z localhost 3389"
|
||||
|
||||
# set env
|
||||
s6-env DISPLAY=:1
|
||||
|
||||
/usr/sbin/xrdp --nodaemon
|
||||
1
root/etc/s6-overlay/s6-rc.d/svc-xrdp/type
Normal file
1
root/etc/s6-overlay/s6-rc.d/svc-xrdp/type
Normal file
@ -0,0 +1 @@
|
||||
longrun
|
||||
@ -1 +0,0 @@
|
||||
3
|
||||
@ -1,15 +0,0 @@
|
||||
#!/bin/execlineb -P
|
||||
|
||||
# Move stderr to out so it's piped to logger
|
||||
fdmove -c 2 1
|
||||
|
||||
# Notify service manager when xrdp is up
|
||||
s6-notifyoncheck -w 500 -c "true &>/dev/null </dev/tcp/127.0.0.1/3389"
|
||||
|
||||
# Wait until other services are running
|
||||
if { s6-svwait -t 10000 -U /var/run/s6/services/xrdp-sesman/ }
|
||||
|
||||
# set env
|
||||
s6-env DISPLAY=:1
|
||||
|
||||
/usr/sbin/xrdp --nodaemon
|
||||
@ -1,7 +1,7 @@
|
||||
#!/bin/bash
|
||||
while :
|
||||
do
|
||||
if [[ ! `/usr/bin/pulseaudio --check` ]]; then
|
||||
if [[ ! $(/usr/bin/pulseaudio --check) ]]; then
|
||||
/usr/bin/pulseaudio --start
|
||||
fi
|
||||
sleep 10
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user