You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/images/docker-pidgin.md
+41-35Lines changed: 41 additions & 35 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -92,19 +92,22 @@ We are currently transitioning our desktop containers from X11 to Wayland. While
92
92
**Important:** GPU acceleration support for X11 is being deprecated. Future development for hardware acceleration will focus entirely on the Wayland stack.
93
93
94
94
To enable Wayland mode, set the following environment variable:
95
-
*`-e PIXELFLUX_WAYLAND=true`
95
+
96
+
*`-e PIXELFLUX_WAYLAND=true`
96
97
97
98
**Why use Wayland?**
98
-
***Zero Copy Encoding:** When configured correctly with a GPU, the frame is rendered and encoded on the video card without ever being copied to the system RAM. This drastically lowers CPU usage and latency.
99
-
***Modern Stack:** Single-application containers utilize **Labwc** (replacing Openbox) and full desktop containers use **KDE Plasma Wayland**, providing a more modern and secure compositing environment while retaining the same user experience.
99
+
100
+
***Zero Copy Encoding:** When configured correctly with a GPU, the frame is rendered and encoded on the video card without ever being copied to the system RAM. This drastically lowers CPU usage and latency.
101
+
***Modern Stack:** Single-application containers utilize **Labwc** (replacing Openbox) and full desktop containers use **KDE Plasma Wayland**, providing a more modern and secure compositing environment while retaining the same user experience.
100
102
101
103
#### GPU Configuration
102
104
103
105
To use hardware acceleration in Wayland mode, we distinguish between the card used for **Rendering** (3D apps/Desktops) and **Encoding** (Video Stream).
104
106
105
107
**Configuration Variables:**
106
-
*`DRINODE`: The path to the GPU used for **Rendering** (EGL).
107
-
*`DRI_NODE`: The path to the GPU used for **Encoding** (VAAPI/NVENC).
108
+
109
+
*`DRINODE`: The path to the GPU used for **Rendering** (EGL).
110
+
*`DRI_NODE`: The path to the GPU used for **Encoding** (VAAPI/NVENC).
108
111
109
112
If both variables point to the same device, the container will automatically enable **Zero Copy** encoding, significantly reducing CPU usage and latency.
110
113
@@ -129,16 +132,15 @@ This container is compatible with [SealSkin](https://sealskin.app).
129
132
130
133
SealSkin is a self-hosted, client-server platform that provides secure authentication and collaboration features while using a browser extension to intercept user actions such as clicking a link or downloading a file and redirect them to a secure, isolated application environment running on a remote server.
131
134
132
-
* **SealSkin Server:** [Get it Here](https://github.com/linuxserver/docker-sealskin)
133
-
* **Browser Extension:** [Chrome](https://chromewebstore.google.com/detail/sealskin-isolation/lclgfmnljgacfdpmmmjmfpdelndbbfhk) and [Firefox](https://addons.mozilla.org/en-US/firefox/addon/sealskin-isolation/).
134
-
* **Mobile App:** [iOS](https://apps.apple.com/us/app/sealskin/id6758210210) and [Android](https://play.google.com/store/apps/details?id=io.linuxserver.sealskin)
135
-
135
+
* **SealSkin Server:** [Get it Here](https://github.com/linuxserver/docker-sealskin)
136
+
* **Browser Extension:** [Chrome](https://chromewebstore.google.com/detail/sealskin-isolation/lclgfmnljgacfdpmmmjmfpdelndbbfhk) and [Firefox](https://addons.mozilla.org/en-US/firefox/addon/sealskin-isolation/).
137
+
* **Mobile App:** [iOS](https://apps.apple.com/us/app/sealskin/id6758210210) and [Android](https://play.google.com/store/apps/details?id=io.linuxserver.sealskin)
136
138
137
139
### Options in all Selkies-based GUI containers
138
140
139
141
This container is based on [Docker Baseimage Selkies](https://github.com/linuxserver/docker-baseimage-selkies).
140
142
141
-
???+ note "Click to expand: Optional Environment Variables"
143
+
??? note "Click to expand: Optional Environment Variables"
142
144
143
145
| Variable | Description |
144
146
| :----: | --- |
@@ -167,15 +169,16 @@ This container is based on [Docker Baseimage Selkies](https://github.com/linuxse
167
169
| WATERMARK_LOCATION | Where to paint the image over the stream integer options below |
168
170
169
171
**`WATERMARK_LOCATION` Options:**
170
-
- **1**: Top Left
171
-
- **2**: Top Right
172
-
- **3**: Bottom Left
173
-
- **4**: Bottom Right
174
-
- **5**: Centered
175
-
- **6**: Animated
172
+
173
+
* **1**: Top Left
174
+
* **2**: Top Right
175
+
* **3**: Bottom Left
176
+
* **4**: Bottom Right
177
+
* **5**: Centered
178
+
* **6**: Animated
176
179
177
180
178
-
???+ note "Click to expand: Optional Run Configurations (DinD & GPU Mounts)"
181
+
??? note "Click to expand: Optional Run Configurations (DinD & GPU Mounts)"
179
182
180
183
| Argument | Description |
181
184
| :----: | --- |
@@ -184,7 +187,7 @@ This container is based on [Docker Baseimage Selkies](https://github.com/linuxse
184
187
| `--device /dev/dri:/dev/dri` | Mount a GPU into the container, this can be used in conjunction with the `DRINODE` environment variable to leverage a host video card for GPU accelerated applications. |
185
188
186
189
187
-
???+ note "Click to expand: Legacy X11 Resolution & Acceleration"
190
+
??? note "Click to expand: Legacy X11 Resolution & Acceleration"
188
191
189
192
**Note:** This section applies only if you are **NOT** using `PIXELFLUX_WAYLAND=true`.
190
193
@@ -194,7 +197,7 @@ This container is based on [Docker Baseimage Selkies](https://github.com/linuxse
194
197
195
198
This will set the total virtual framebuffer to 4K. By default, the virtual monitor is 16K. If you have performance issues in an accelerated X11 session, try clamping the resolution to 1080p and work up from there:
196
199
197
-
```
200
+
```bash
198
201
-e SELKIES_MANUAL_WIDTH=1920
199
202
-e SELKIES_MANUAL_HEIGHT=1080
200
203
-e MAX_RESOLUTION=1920x1080
@@ -205,16 +208,16 @@ This container is based on [Docker Baseimage Selkies](https://github.com/linuxse
205
208
206
209
To launch the desktop session in a different language, set the `LC_ALL` environment variable. For example:
@@ -226,7 +229,7 @@ Natively installed packages (e.g., via `apt-get install`) will not persist if th
226
229
227
230
To install an application, use the command line inside the container:
228
231
229
-
```
232
+
```bash
230
233
proot-apps install filezilla
231
234
```
232
235
@@ -244,7 +247,7 @@ You can install packages from the system's native repository using the [universa
244
247
245
248
### Advanced Configuration
246
249
247
-
???+ note "Click to expand: Hardening Options"
250
+
??? note "Click to expand: Hardening Options"
248
251
249
252
These variables can be used to lock down the desktop environment for single-application use cases or to restrict user capabilities.
250
253
@@ -266,21 +269,24 @@ You can install packages from the system's native repository using the [universa
266
269
| **`RESTART_APP`** | If true, enables a watchdog service that automatically restarts the main application if it is closed. The user's autostart script is made read-only and root owned to prevent tampering. |
267
270
268
271
269
-
???+ note "Click to expand: Selkies Application Settings"
272
+
??? note "Click to expand: Selkies Application Settings"
270
273
271
274
Using environment variables every facet of the application can be configured.
272
275
273
276
**Booleans and Locking:**
274
277
Boolean settings accept `true` or `false`. You can also prevent the user from changing a boolean setting in the UI by appending `|locked`.
275
-
* Example: `-e SELKIES_USE_CPU="true|locked"`
278
+
279
+
* Example: `-e SELKIES_USE_CPU="true|locked"`
276
280
277
281
**Enums and Lists:**
278
282
These settings accept a comma-separated list of values. The first item becomes default. If only one item is provided, the UI dropdown is hidden.
279
-
* Example: `-e SELKIES_ENCODER="jpeg"`
283
+
284
+
* Example: `-e SELKIES_ENCODER="jpeg"`
280
285
281
286
**Ranges:**
282
287
Use a hyphen-separated `min-max` format for a slider, or a single number to lock the value.
283
-
* Example: `-e SELKIES_FRAMERATE="60"`
288
+
289
+
* Example: `-e SELKIES_FRAMERATE="60"`
284
290
285
291
**Manual Resolution Mode:**
286
292
If `SELKIES_MANUAL_WIDTH` or `SELKIES_MANUAL_HEIGHT` are set, the resolution is locked to those values.
0 commit comments