- Fix hazy text on Wayland by setting QT_SCALE_FACTOR_ROUNDING_POLICY=RoundPreferFloor
and QT_ENABLE_HIGHDPI_SCALING=1 in deb and AppImage launchers; remove forced
QT_QPA_PLATFORM=xcb from AppImage to allow native Wayland (fixes#33)
- Add menu icon size preference selector (Small/Medium/Large/Extra large) in
General preferences, applied via QMenu stylesheet at startup and on save (fixes#46)
- Replace verbose theme customization banner with concise 'Kindred Create Theme'
label in UI preferences; split Overlay group into 'Panel Visibility' and
'Overlay Interaction' sections (fixes#35)
- Remove Addon Manager branding label from General preferences, change recent
file list default from 4 to 10 (fixes#36)
The XKB_CONFIG_ROOT, FONTCONFIG_FILE, and FONTCONFIG_PATH exports were
accidentally removed in e68a5fef (SSL certificate fix). Without these,
the bundled libxkbcommon falls back to a hardcoded CI runner path that
does not exist on the target system, causing xkb_context_new to return
NULL and SIGSEGV in xkb_context_ref during Wayland keyboard init at
splash screen startup.
The build-deb.sh was copying org.freecad.FreeCAD.svg as the desktop
icon because it checked the install directory first, where only the
FreeCAD icon exists. Reorder to prefer resources/branding/kindred-logo.svg.
Also generate PNG icons from the SVG using rsvg-convert when available,
for better desktop environment compatibility.
The bundled Python's openssl has a hardcoded cafile path from the build
environment (/var/lib/gitea-runner/.cache/...) which does not exist on
the target system. This causes SSL certificate verification to fail for
internal services like silo.kindred.internal that use the FreeIPA CA.
Set SSL_CERT_FILE to the system CA bundle (/etc/ssl/certs/ca-certificates.crt
on Debian/Ubuntu or /etc/pki/tls/certs/ca-bundle.crt on RHEL) in both
the kindred-create and kindred-create-cmd wrapper scripts. This allows
the bundled Python to verify certificates signed by any CA in the
system trust store, including the FreeIPA CA.
The bundled libxkbcommon has hardcoded paths from the CI build
environment baked into the library. Set XKB_CONFIG_ROOT to point
to the bundled XKB data instead.
Similarly, set FONTCONFIG_FILE and FONTCONFIG_PATH to use the
bundled fontconfig configuration.
This fixes the segfault on startup caused by libxkbcommon trying
to load XKB data from a non-existent CI runner path.
The .deb package is a self-contained bundle that includes its own
Python interpreter and all Python packages (numpy, pyside6, etc.)
from the pixi/conda-forge environment in /opt/kindred-create/.
The wrapper scripts already set PYTHONHOME and PYTHONPATH to use
the bundled Python, so depending on system Python packages like
python3-numpy and python3-pyside6.* is incorrect and causes
installation failures on systems without those packages.
Keep only low-level system library dependencies that can't be
bundled (libc, libstdc++, OpenGL, X11, fonts) and external tools
(calculix-ccx, gmsh, graphviz) as Recommends.
- Build workflow now bundles the entire pixi/conda environment for .deb
- This includes all shared libraries (xerces, Qt, Python, etc.)
- Wrapper scripts updated with additional env vars (QT_QPA_PLATFORM_PLUGIN_PATH, XDG_DATA_DIRS, GI_TYPELIB_PATH)
- Wrapper scripts now handle both FreeCAD and freecad binary names
- Removes unnecessary files (headers, cmake, pycache) to reduce size
The bundled binaries need LD_LIBRARY_PATH, PYTHONPATH, and
QT_PLUGIN_PATH set to find their libraries. Replace symlinks
with wrapper scripts that set up the environment before exec.
- Fix version conversion for Debian policy compliance
(e.g., weekly-2025.01.28 -> 0~weekly.2025.01.28)
- Add MIME type registration for .fcstd files
- Add AppStream metainfo for software centers
- Add copyright file (required by Debian policy)
- Improve maintainer scripts with proper case statements
- Expand dependencies in control file (Depends/Recommends/Suggests)
- Add .deb build step to release workflow
- Simplify build workflow to let script handle version conversion
These files are not used in Debian or the PPA; they use conventions from
many years ago and in general are cruft. The canonical location for this
information is now https://salsa.debian.org/science-team/freecad. This
fixes#2984.