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: README.md
+43-34Lines changed: 43 additions & 34 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -87,19 +87,22 @@ We are currently transitioning our desktop containers from X11 to Wayland. While
87
87
**Important:** GPU acceleration support for X11 is being deprecated. Future development for hardware acceleration will focus entirely on the Wayland stack.
88
88
89
89
To enable Wayland mode, set the following environment variable:
90
-
*`-e PIXELFLUX_WAYLAND=true`
90
+
91
+
*`-e PIXELFLUX_WAYLAND=true`
91
92
92
93
**Why use Wayland?**
93
-
***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.
94
-
***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.
94
+
95
+
***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.
96
+
***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.
95
97
96
98
#### GPU Configuration
97
99
98
100
To use hardware acceleration in Wayland mode, we distinguish between the card used for **Rendering** (3D apps/Desktops) and **Encoding** (Video Stream).
99
101
100
102
**Configuration Variables:**
101
-
*`DRINODE`: The path to the GPU used for **Rendering** (EGL).
102
-
*`DRI_NODE`: The path to the GPU used for **Encoding** (VAAPI/NVENC).
103
+
104
+
*`DRINODE`: The path to the GPU used for **Rendering** (EGL).
105
+
*`DRI_NODE`: The path to the GPU used for **Encoding** (VAAPI/NVENC).
103
106
104
107
If both variables point to the same device, the container will automatically enable **Zero Copy** encoding, significantly reducing CPU usage and latency.
105
108
@@ -122,10 +125,12 @@ For Intel and AMD GPUs.
122
125
**Note: Nvidia support is not available for Alpine-based images.**
123
126
124
127
**Prerequisites:**
125
-
1. **Driver:** Proprietary drivers **580 or higher** are required.
126
-
2. **Kernel Parameter:** Set `nvidia-drm.modeset=1` in your host bootloader (GRUB/systemd-boot).
127
-
3. **Initialization:** On headless systems, run `nvidia-modprobe --modeset` on the host (once per boot) to initialize the card.
128
-
4. **Docker Runtime:** Configure the host docker daemon to use the Nvidia runtime:
128
+
129
+
1. **Driver:** Proprietary drivers **580 or higher** are required.
130
+
2. **Kernel Parameter:** Set `nvidia-drm.modeset=1` in your host bootloader (GRUB/systemd-boot).
131
+
3. **Initialization:** On headless systems, run `nvidia-modprobe --modeset` on the host (once per boot) to initialize the card.
132
+
4. **Docker Runtime:** Configure the host docker daemon to use the Nvidia runtime:
@@ -157,10 +163,9 @@ This container is compatible with [SealSkin](https://sealskin.app).
157
163
158
164
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.
159
165
160
-
* **SealSkin Server:** [Get it Here](https://github.com/linuxserver/docker-sealskin)
161
-
* **Browser Extension:** [Chrome](https://chromewebstore.google.com/detail/sealskin-isolation/lclgfmnljgacfdpmmmjmfpdelndbbfhk) and [Firefox](https://addons.mozilla.org/en-US/firefox/addon/sealskin-isolation/).
162
-
* **Mobile App:** [iOS](https://apps.apple.com/us/app/sealskin/id6758210210) and [Android](https://play.google.com/store/apps/details?id=io.linuxserver.sealskin)
163
-
166
+
* **SealSkin Server:** [Get it Here](https://github.com/linuxserver/docker-sealskin)
167
+
* **Browser Extension:** [Chrome](https://chromewebstore.google.com/detail/sealskin-isolation/lclgfmnljgacfdpmmmjmfpdelndbbfhk) and [Firefox](https://addons.mozilla.org/en-US/firefox/addon/sealskin-isolation/).
168
+
* **Mobile App:** [iOS](https://apps.apple.com/us/app/sealskin/id6758210210) and [Android](https://play.google.com/store/apps/details?id=io.linuxserver.sealskin)
164
169
165
170
### Options in all Selkies-based GUI containers
166
171
@@ -196,12 +201,13 @@ This container is based on [Docker Baseimage Selkies](https://github.com/linuxse
196
201
| WATERMARK_LOCATION | Where to paint the image over the stream integer options below |
197
202
198
203
**`WATERMARK_LOCATION` Options:**
199
-
- **1**: Top Left
200
-
- **2**: Top Right
201
-
- **3**: Bottom Left
202
-
- **4**: Bottom Right
203
-
- **5**: Centered
204
-
- **6**: Animated
204
+
205
+
* **1**: Top Left
206
+
* **2**: Top Right
207
+
* **3**: Bottom Left
208
+
* **4**: Bottom Right
209
+
* **5**: Centered
210
+
* **6**: Animated
205
211
206
212
</details>
207
213
@@ -227,7 +233,7 @@ When using 3d acceleration via Nvidia DRM or DRI3 in X11 mode, it is important t
227
233
228
234
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:
229
235
230
-
```
236
+
```bash
231
237
-e SELKIES_MANUAL_WIDTH=1920
232
238
-e SELKIES_MANUAL_HEIGHT=1080
233
239
-e MAX_RESOLUTION=1920x1080
@@ -239,16 +245,16 @@ This will set the total virtual framebuffer to 4K. By default, the virtual monit
239
245
240
246
To launch the desktop session in a different language, set the `LC_ALL` environment variable. For example:
0 commit comments