Skip to content

Commit c358e75

Browse files
committed
add wayland init, rebase to 3.23
1 parent ddf6f74 commit c358e75

9 files changed

Lines changed: 48 additions & 12 deletions

File tree

.github/workflows/external_trigger.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
echo "> [!NOTE]" >> $GITHUB_STEP_SUMMARY
3030
echo "> External trigger running off of master branch. To disable this trigger, add \`pidgin_master\` into the Github organizational variable \`SKIP_EXTERNAL_TRIGGER\`." >> $GITHUB_STEP_SUMMARY
3131
printf "\n## Retrieving external version\n\n" >> $GITHUB_STEP_SUMMARY
32-
EXT_RELEASE=$(curl -sL "http://dl-cdn.alpinelinux.org/alpine/v3.22/community/x86_64/APKINDEX.tar.gz" | tar -xz -C /tmp \
32+
EXT_RELEASE=$(curl -sL "http://dl-cdn.alpinelinux.org/alpine/v3.23/community/x86_64/APKINDEX.tar.gz" | tar -xz -C /tmp \
3333
&& awk '/^P:'"pidgin"'$/,/V:/' /tmp/APKINDEX | sed -n 2p | sed 's/^V://')
3434
echo "Type is \`alpine_repo\`" >> $GITHUB_STEP_SUMMARY
3535
if grep -q "^pidgin_master_${EXT_RELEASE}" <<< "${SKIP_EXTERNAL_TRIGGER}"; then
@@ -107,7 +107,7 @@ jobs:
107107
if [ "${EXT_RELEASE_SANITIZED}" == "${IMAGE_VERSION}" ]; then
108108
echo "Sanitized version \`${EXT_RELEASE_SANITIZED}\` already pushed, exiting" >> $GITHUB_STEP_SUMMARY
109109
exit 0
110-
elif [[ $(curl -sL "http://dl-cdn.alpinelinux.org/alpine/v3.22/community/aarch64/APKINDEX.tar.gz" | tar -xz -C /tmp && awk '/^P:'"pidgin"'$/,/V:/' /tmp/APKINDEX | sed -n 2p | sed 's/^V://') != "${EXT_RELEASE}" ]]; then
110+
elif [[ $(curl -sL "http://dl-cdn.alpinelinux.org/alpine/v3.23/community/aarch64/APKINDEX.tar.gz" | tar -xz -C /tmp && awk '/^P:'"pidgin"'$/,/V:/' /tmp/APKINDEX | sed -n 2p | sed 's/^V://') != "${EXT_RELEASE}" ]]; then
111111
echo "New version \`${EXT_RELEASE}\` found; but not all arch repos updated yet; exiting" >> $GITHUB_STEP_SUMMARY
112112
FAILURE_REASON="New version ${EXT_RELEASE} for pidgin tag latest is detected, however not all arch repos are updated yet. Will try again later."
113113
curl -X POST -H "Content-Type: application/json" --data '{"avatar_url": "https://cdn.discordapp.com/avatars/354986384542662657/df91181b3f1cf0ef1592fbe18e0962d7.png","embeds": [{"color": 9802903,

Dockerfile

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# syntax=docker/dockerfile:1
22

33
# build stage
4-
FROM ghcr.io/linuxserver/baseimage-alpine:3.22 AS plugins
4+
FROM ghcr.io/linuxserver/baseimage-alpine:3.23 AS plugins
55

66
RUN \
77
echo "**** install dev deps ****" && \
@@ -104,7 +104,7 @@ RUN \
104104
make DESTDIR="/buildout" install
105105

106106
# runtime stage
107-
FROM ghcr.io/linuxserver/baseimage-selkies:alpine322
107+
FROM ghcr.io/linuxserver/baseimage-selkies:alpine323
108108

109109
# set version label
110110
ARG BUILD_DATE
@@ -127,7 +127,7 @@ RUN \
127127
https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/pidgin-logo.png && \
128128
echo "**** install packages ****" && \
129129
if [ -z ${PIDGIN_VERSION+x} ]; then \
130-
PIDGIN_VERSION=$(curl -sL "http://dl-cdn.alpinelinux.org/alpine/v3.22/community/x86_64/APKINDEX.tar.gz" | tar -xz -C /tmp \
130+
PIDGIN_VERSION=$(curl -sL "http://dl-cdn.alpinelinux.org/alpine/v3.23/community/x86_64/APKINDEX.tar.gz" | tar -xz -C /tmp \
131131
&& awk '/^P:pidgin$/,/V:/' /tmp/APKINDEX | sed -n 2p | sed 's/^V://'); \
132132
fi && \
133133
apk add --no-cache \

Dockerfile.aarch64

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# syntax=docker/dockerfile:1
22

33
# build stage
4-
FROM ghcr.io/linuxserver/baseimage-alpine:arm64v8-3.22 AS plugins
4+
FROM ghcr.io/linuxserver/baseimage-alpine:arm64v8-3.23 AS plugins
55

66
RUN \
77
echo "**** install dev deps ****" && \
@@ -104,7 +104,7 @@ RUN \
104104
make DESTDIR="/buildout" install
105105

106106
# runtime stage
107-
FROM ghcr.io/linuxserver/baseimage-selkies:arm64v8-alpine322
107+
FROM ghcr.io/linuxserver/baseimage-selkies:arm64v8-alpine323
108108

109109
# set version label
110110
ARG BUILD_DATE
@@ -127,7 +127,7 @@ RUN \
127127
https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/pidgin-logo.png && \
128128
echo "**** install packages ****" && \
129129
if [ -z ${PIDGIN_VERSION+x} ]; then \
130-
PIDGIN_VERSION=$(curl -sL "http://dl-cdn.alpinelinux.org/alpine/v3.22/community/x86_64/APKINDEX.tar.gz" | tar -xz -C /tmp \
130+
PIDGIN_VERSION=$(curl -sL "http://dl-cdn.alpinelinux.org/alpine/v3.23/community/x86_64/APKINDEX.tar.gz" | tar -xz -C /tmp \
131131
&& awk '/^P:pidgin$/,/V:/' /tmp/APKINDEX | sed -n 2p | sed 's/^V://'); \
132132
fi && \
133133
apk add --no-cache \

Jenkinsfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ pipeline {
2727
DEV_DOCKERHUB_IMAGE = 'lsiodev/pidgin'
2828
PR_DOCKERHUB_IMAGE = 'lspipepr/pidgin'
2929
DIST_IMAGE = 'alpine'
30-
DIST_TAG = '3.22'
31-
DIST_REPO = 'http://dl-cdn.alpinelinux.org/alpine/v3.22/community/'
30+
DIST_TAG = '3.23'
31+
DIST_REPO = 'http://dl-cdn.alpinelinux.org/alpine/v3.23/community/'
3232
DIST_REPO_PACKAGES = 'pidgin'
3333
MULTIARCH = 'true'
3434
CI = 'true'

README.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,7 @@ This container is based on [Docker Baseimage Selkies](https://github.com/linuxse
109109

110110
| Variable | Description |
111111
| :----: | --- |
112+
| PIXELFLUX_WAYLAND | **Experimental** If set to true the container will initialize in Wayland mode running [Smithay](https://github.com/Smithay/smithay) and Labwc while enabling zero copy encoding with a GPU |
112113
| CUSTOM_PORT | Internal port the container listens on for http if it needs to be swapped from the default `3000` |
113114
| CUSTOM_HTTPS_PORT | Internal port the container listens on for https if it needs to be swapped from the default `3001` |
114115
| CUSTOM_WS_PORT | Internal port the container listens on for websockets if it needs to be swapped from the default 8082 |
@@ -163,6 +164,30 @@ To launch the desktop session in a different language, set the `LC_ALL` environm
163164
* `-e LC_ALL=nl_NL.UTF-8` - Netherlands
164165
* `-e LC_ALL=it_IT.UTF-8` - Italian
165166

167+
### SealSkin Compatibility
168+
169+
This container is compatible with [SealSkin](https://github.com/linuxserver/docker-sealskin).
170+
171+
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.
172+
173+
* **SealSkin Server:** [Get it Here](https://github.com/linuxserver/docker-sealskin)
174+
* **Browser Extension:** [Install Here](https://chromewebstore.google.com/detail/sealskin-isolation/lclgfmnljgacfdpmmmjmfpdelndbbfhk)
175+
176+
### All GPU Acceleration - use sane resolutions
177+
178+
When using 3d acceleration via Nvidia DRM or DRI3 it is important to clamp the virtual display to a reasonable max resolution. This can be achieved with the environment setting:
179+
180+
* `-e MAX_RESOLUTION=3840x2160`
181+
182+
This will set the total virtual framebuffer to 4K, you can also set a manual resolution to achieve this.
183+
By default the virtual monitor in the session is 16K to support large monitors and dual display configurations. Leaving it this large has no impact on CPU based performance but costs GPU memory usage and memory bandwidth when leveraging one for acceleration. If you have performance issues in an accelerated session, try clamping the resolution to 1080p and work up from there:
184+
185+
```
186+
-e SELKIES_MANUAL_WIDTH=1920
187+
-e SELKIES_MANUAL_HEIGHT=1080
188+
-e MAX_RESOLUTION=1920x1080
189+
```
190+
166191
### DRI3 GPU Acceleration
167192

168193
For accelerated apps or games, render devices can be mounted into the container and leveraged by applications using:
@@ -552,6 +577,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
552577

553578
## Versions
554579

580+
* **28.12.25:** - Add Wayland init logic, rebase to Alpine 3.23.
555581
* **12.07.25:** - Rebase to Selkies and Alpine 3.22, HTTPS IS NOW REQUIRED.
556582
* **06.12.24:** - Rebase to Alpine 3.21.
557583
* **23.05.24:** - Rebase to Alpine 3.20.

jenkins-vars.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,8 @@ repo_vars:
1616
- DEV_DOCKERHUB_IMAGE = 'lsiodev/pidgin'
1717
- PR_DOCKERHUB_IMAGE = 'lspipepr/pidgin'
1818
- DIST_IMAGE = 'alpine'
19-
- DIST_TAG = '3.22'
20-
- DIST_REPO = 'http://dl-cdn.alpinelinux.org/alpine/v3.22/community/'
19+
- DIST_TAG = '3.23'
20+
- DIST_REPO = 'http://dl-cdn.alpinelinux.org/alpine/v3.23/community/'
2121
- DIST_REPO_PACKAGES = 'pidgin'
2222
- MULTIARCH = 'true'
2323
- CI = 'true'

readme-vars.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,7 @@ init_diagram: |
123123
"pidgin:latest" <- Base Images
124124
# changelog
125125
changelogs:
126+
- {date: "28.12.25:", desc: "Add Wayland init logic, rebase to Alpine 3.23."}
126127
- {date: "12.07.25:", desc: "Rebase to Selkies and Alpine 3.22, HTTPS IS NOW REQUIRED."}
127128
- {date: "06.12.24:", desc: "Rebase to Alpine 3.21."}
128129
- {date: "23.05.24:", desc: "Rebase to Alpine 3.20."}

root/defaults/autostart_wayland

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
pidgin

root/defaults/menu_wayland.xml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<openbox_menu xmlns="http://openbox.org/3.4/menu">
3+
<menu id="root-menu" label="MENU">
4+
<item label="Pidgin" icon="/usr/share/icons/hicolor/48x48/apps/pidgin.png"><action name="Execute"><command>/usr/bin/pidgin</command></action></item>
5+
<item label="foot" icon="/usr/share/icons/hicolor/48x48/apps/foot.png"><action name="Execute"><command>/usr/bin/foot</command></action></item>
6+
<item label="FireFox" icon="/usr/share/icons/hicolor/48x48/apps/firefox.png"><action name="Execute"><command>/usr/bin/firefox</command></action></item>
7+
</menu>
8+
</openbox_menu>

0 commit comments

Comments
 (0)