Skip to content

Drop xvfb-run wrapper, no longer needed since LibrePCB 2.2.0#8

Draft
firuzakhmad wants to merge 2 commits into
LibrePCB:masterfrom
firuzakhmad:drop-xvfb-wrapper
Draft

Drop xvfb-run wrapper, no longer needed since LibrePCB 2.2.0#8
firuzakhmad wants to merge 2 commits into
LibrePCB:masterfrom
firuzakhmad:drop-xvfb-wrapper

Conversation

@firuzakhmad

@firuzakhmad firuzakhmad commented Jul 25, 2026

Copy link
Copy Markdown

Draft on #1793.

Removed the wrapper script and symlinked librepcb-cli directly into
/usr/local/bin, per your suggestion. Kept the actual install under
/opt/librepcb rather than extracting there directly, since Qt looks
for its plugins relative to that path. Also dropped xvfb from the
apt install list, since nothing else needs it.

Confirmed locally that this can't work yet: building against the
current LIBREPCB_VERSION=2.1.1 fails at the "RUN librepcb-cli
--version" sanity check with "error while loading shared libraries:
libGL.so.1: cannot open shared object file", since 2.1.1 has no
fallback logic and tries to initialize the xcb platform without any
display present. Expected, and confirms this needs to wait for a
2.2.0 image.

I'll bump LIBREPCB_VERSION and confirm this actually builds and runs
cleanly once 2.2.0 is out, then mark this ready for review.

librepcb-cli now runs headlessly on its own (LibrePCB/LibrePCB#1793),
so the xvfb-run wrapper and the xvfb package are no longer needed.

Not bumping LIBREPCB_VERSION here since 2.2.0 hasn't been released
yet, the build-time version check further down would fail against
2.1.1, which doesn't have the headless fix. Opening as a draft until
that's actually available.
@ubruhin

ubruhin commented Jul 26, 2026

Copy link
Copy Markdown
Member

The wrapper script has no function anymore, so it should be removed completely. Just install the CLI directly to /usr/local.

The wrapper had no function anymore after dropping xvfb-run, so
remove it entirely and just symlink librepcb-cli into /usr/local/bin
instead. Keeping the actual install tree at /opt/librepcb rather
than extracting straight into /usr/local, since Qt resolves plugin
paths relative to that layout.
@firuzakhmad

Copy link
Copy Markdown
Author

Removed the wrapper script and symlinked librepcb-cli straight into
/usr/local/bin instead. Kept the actual install under /opt/librepcb
rather than extracting there directly, since Qt looks for its
plugins relative to that path.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants