Compare commits

...

9 Commits

Author SHA1 Message Date
LinuxServer-CI
f21923e3cc
Bot Updating Package Versions 2026-01-08 00:02:08 +00:00
LinuxServer-CI
eb8e0c6c12
Bot Updating Package Versions 2026-01-02 17:24:37 +00:00
LinuxServer-CI
89b45018ad
Bot Updating Package Versions 2025-12-28 18:44:02 +00:00
LinuxServer-CI
aa3ce3b112
Bot Updating Templated Files 2025-12-28 18:38:32 +00:00
LinuxServer-CI
fe2f559827
Bot Updating Templated Files 2025-12-28 18:36:56 +00:00
LinuxServer-CI
6484612747
Bot Updating Templated Files 2025-12-28 18:35:23 +00:00
thelamer
b0cedd0843
add wayland init 2025-12-28 13:33:33 -05:00
LinuxServer-CI
dcda0a59d7
Bot Updating Package Versions 2025-12-25 00:02:01 +00:00
LinuxServer-CI
d6ca776894
Bot Updating Package Versions 2025-12-18 00:02:08 +00:00
11 changed files with 642 additions and 500 deletions

View File

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

View File

@ -1,6 +1,6 @@
# syntax=docker/dockerfile:1
FROM ghcr.io/linuxserver/baseimage-selkies:alpine322
FROM ghcr.io/linuxserver/baseimage-selkies:alpine323
# set version label
ARG BUILD_DATE
@ -19,7 +19,7 @@ RUN \
https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/inkscape-logo.png && \
echo "**** install packages ****" && \
if [ -z ${INKSCAPE_VERSION+x} ]; then \
INKSCAPE_VERSION=$(curl -sL "http://dl-cdn.alpinelinux.org/alpine/v3.22/community/x86_64/APKINDEX.tar.gz" | tar -xz -C /tmp \
INKSCAPE_VERSION=$(curl -sL "http://dl-cdn.alpinelinux.org/alpine/v3.23/community/x86_64/APKINDEX.tar.gz" | tar -xz -C /tmp \
&& awk '/^P:inkscape$/,/V:/' /tmp/APKINDEX | sed -n 2p | sed 's/^V://'); \
fi && \
apk add --no-cache \

View File

@ -1,6 +1,6 @@
# syntax=docker/dockerfile:1
FROM ghcr.io/linuxserver/baseimage-selkies:arm64v8-alpine322
FROM ghcr.io/linuxserver/baseimage-selkies:arm64v8-alpine323
# set version label
ARG BUILD_DATE
@ -19,7 +19,7 @@ RUN \
https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/inkscape-logo.png && \
echo "**** install packages ****" && \
if [ -z ${INKSCAPE_VERSION+x} ]; then \
INKSCAPE_VERSION=$(curl -sL "http://dl-cdn.alpinelinux.org/alpine/v3.22/community/x86_64/APKINDEX.tar.gz" | tar -xz -C /tmp \
INKSCAPE_VERSION=$(curl -sL "http://dl-cdn.alpinelinux.org/alpine/v3.23/community/x86_64/APKINDEX.tar.gz" | tar -xz -C /tmp \
&& awk '/^P:inkscape$/,/V:/' /tmp/APKINDEX | sed -n 2p | sed 's/^V://'); \
fi && \
apk add --no-cache \

4
Jenkinsfile vendored
View File

@ -27,8 +27,8 @@ pipeline {
DEV_DOCKERHUB_IMAGE = 'lsiodev/inkscape'
PR_DOCKERHUB_IMAGE = 'lspipepr/inkscape'
DIST_IMAGE = 'alpine'
DIST_TAG = '3.22'
DIST_REPO = 'http://dl-cdn.alpinelinux.org/alpine/v3.22/community/'
DIST_TAG = '3.23'
DIST_REPO = 'http://dl-cdn.alpinelinux.org/alpine/v3.23/community/'
DIST_REPO_PACKAGES = 'inkscape'
MULTIARCH = 'true'
CI = 'true'

View File

@ -88,6 +88,7 @@ This container is based on [Docker Baseimage Selkies](https://github.com/linuxse
| Variable | Description |
| :----: | --- |
| 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 |
| CUSTOM_PORT | Internal port the container listens on for http if it needs to be swapped from the default `3000` |
| CUSTOM_HTTPS_PORT | Internal port the container listens on for https if it needs to be swapped from the default `3001` |
| CUSTOM_WS_PORT | Internal port the container listens on for websockets if it needs to be swapped from the default 8082 |
@ -142,6 +143,30 @@ To launch the desktop session in a different language, set the `LC_ALL` environm
* `-e LC_ALL=nl_NL.UTF-8` - Netherlands
* `-e LC_ALL=it_IT.UTF-8` - Italian
### SealSkin Compatibility
This container is compatible with [SealSkin](https://github.com/linuxserver/docker-sealskin).
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.
* **SealSkin Server:** [Get it Here](https://github.com/linuxserver/docker-sealskin)
* **Browser Extension:** [Install Here](https://chromewebstore.google.com/detail/sealskin-isolation/lclgfmnljgacfdpmmmjmfpdelndbbfhk)
### All GPU Acceleration - use sane resolutions
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:
* `-e MAX_RESOLUTION=3840x2160`
This will set the total virtual framebuffer to 4K, you can also set a manual resolution to achieve this.
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:
```
-e SELKIES_MANUAL_WIDTH=1920
-e SELKIES_MANUAL_HEIGHT=1080
-e MAX_RESOLUTION=1920x1080
```
### DRI3 GPU Acceleration
For accelerated apps or games, render devices can be mounted into the container and leveraged by applications using:
@ -531,6 +556,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
## Versions
* **28.12.25:** - Add Wayland init logic, rebase to Alpine 3.23.
* **12.07.25:** - Rebase to Selkies and Alpine 3.22, HTTPS IS NOW REQUIRED.
* **06.12.24:** - Rebase to Alpine 3.21.
* **23.05.24:** - Rebase to Alpine 3.20.

View File

@ -16,8 +16,8 @@ repo_vars:
- DEV_DOCKERHUB_IMAGE = 'lsiodev/inkscape'
- PR_DOCKERHUB_IMAGE = 'lspipepr/inkscape'
- DIST_IMAGE = 'alpine'
- DIST_TAG = '3.22'
- DIST_REPO = 'http://dl-cdn.alpinelinux.org/alpine/v3.22/community/'
- DIST_TAG = '3.23'
- DIST_REPO = 'http://dl-cdn.alpinelinux.org/alpine/v3.23/community/'
- DIST_REPO_PACKAGES = 'inkscape'
- MULTIARCH = 'true'
- CI = 'true'

File diff suppressed because it is too large Load Diff

View File

@ -97,11 +97,12 @@ init_diagram: |
svc-xsettingsd -> legacy-services
}
Base Images: {
"baseimage-selkies:alpine322" <- "baseimage-alpine:3.22"
"baseimage-selkies:alpine323" <- "baseimage-alpine:3.23"
}
"inkscape:latest" <- Base Images
# changelog
changelogs:
- {date: "28.12.25:", desc: "Add Wayland init logic, rebase to Alpine 3.23."}
- {date: "12.07.25:", desc: "Rebase to Selkies and Alpine 3.22, HTTPS IS NOW REQUIRED."}
- {date: "06.12.24:", desc: "Rebase to Alpine 3.21."}
- {date: "23.05.24:", desc: "Rebase to Alpine 3.20."}

View File

@ -0,0 +1,5 @@
if [ ! -f $HOME/.config/inkscape/preferences.xml ]; then
mkdir -p $HOME/.config/inkscape
cp /defaults/preferences.xml $HOME/.config/inkscape/preferences.xml
fi
inkscape

View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<openbox_menu xmlns="http://openbox.org/3.4/menu">
<menu id="root-menu" label="MENU">
<item label="foot" icon="/usr/share/icons/hicolor/48x48/apps/foot.png"><action name="Execute"><command>/usr/bin/foot</command></action></item>
<item label="Inkscape" icon="/usr/share/icons/hicolor/48x48/apps/org.inkscape.Inkscape.png"><action name="Execute"><command>/usr/bin/inkscape</command></action></item>
</menu>
</openbox_menu>

View File

@ -1,7 +1,8 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<inkscape version="1" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd">
<group id="options" rotationlock="1">
<group id="boot" theme="colorful" enabled="0">
<group id="boot" theme="colorful" mode="0">
<group id="shown" ver1.4.2="1" />
</group>
</group>
</inkscape>