Releases: Smech-Labs/spk-compile
Release list
spk-compile v2.2.18 — CMake bootstrap + full GPU support
What's new in v2.2.18
CMake bootstrap phase
KDE Frameworks 6.27.0 requires CMake 3.29+. Ubuntu 24.04 ships 3.28.3.
A new cmake-bootstrap phase downloads the official Kitware CMake 3.31.6
binary and installs it to /usr/local/bin before the KDE phase runs.
Full GPU driver support (v2.2.17)
Mesa now builds with:
- Gallium:
radeonsi(AMD),nouveau(NVIDIA),iris/crocus(Intel),swrast - Vulkan:
amd(RADV),intel(ANV) - nouveau Vulkan (NVK) excluded — requires rustc not present in the build env; NVIDIA Vulkan users install proprietary drivers
Flatpak + fwupd backends (v2.2.15)
Plasma Discover ships with -DWITH_FLATPAK=ON -DWITH_FWUPD=ON -DWITH_PACKAGEKIT=ON
Phase stamp caching
Completed phases are stamped in /mnt/spk-compile-sources/.stamps — persistent across reboots, allowing interrupted builds to resume from where they left off.
Oopsie count: 13
All oopsies are preserved in git history as sovereign engineering transparency.
spk-compile v2.2.5
systemd now compiled fully from source (gperf + libcap + util-linux + systemd mainline). systemd version auto-resolved from GitHub API at build time. Google Chrome remains the only pre-built binary (proprietary — no source available).
spk-compile v2.2.3
Adds bundle phase as the final step in every SmechOS build. Produces /tmp/smechos-packages/*.tar.xz — one archive per spk package (base-system, kernel-modules, firmware, bootloader-grub, qt6, mesa-graphics, kde-frameworks, plasma, plasma-discover, packagekit-spk). Upload these to a GitHub Release and set RELEASE_BASE_URL in spk to make spk install fully functional end-to-end.
spk-compile v2.2.2
Auto-resolving KDE versions
spk-compile now queries download.kde.org before every build and automatically picks the latest published stable Plasma and KF6 releases. No more manually bumping version constants — builders always compile the current maintained release.
How it works
At the start of every python3 spk-compile.py <profile> run, _resolve_kde_versions():
- Fetches
https://download.kde.org/stable/plasma/→ picks the highestx.y.zdirectory - Fetches
https://download.kde.org/stable/frameworks/→ picks the highestx.ydirectory - Parses the full KF6 point version from the file listing inside that directory
- Updates
PLASMA_VER,KF6_VER,PLASMA_URL,KF6_URLglobals before any phase runs
The resolved versions are printed in the build header so you always know exactly what was compiled.
spk-compile v2.2.0
What's new
New profile: smechos-plasma-live (17 phases)
A full KDE Plasma live ISO build profile using glibc + systemd instead of musl + OpenRC.
| Phase | What it does |
|---|---|
| userland-glibc | GNU userland against host glibc |
| systemd | systemd 256.7 installed from Debian packages |
| systemd-config | Graphical target, SDDM display manager unit |
| calamares | yaml-cpp + kpmcore + Calamares 3.3.10 graphical installer |
| chrome | Google Chrome stable extracted from .deb |
| discover | Plasma Discover + PackageKit + SPK backend |
| live-initramfs | Static busybox initramfs with squashfs + overlayfs live boot |
New ISO builder: --iso live
python3 spk-compile.py smechos-plasma-live --iso live
Produces /tmp/smechos-plasma-live.iso with three GRUB boot entries:
- SmechOS KDE Plasma (Live)
- SmechOS KDE Plasma (Live, nomodeset)
- Install SmechOS (Calamares)
New helpers
build_env_glibc()— likebuild_env()but uses system gcc/glibc_extract_deb()— extracts a.debdata.tar into a target directory
spk-compile v2.1.0
spk-compile v2.1.0 — SmechOS/SmechVisor Build Orchestrator (Project SmechDeployV2)
Single standalone Python 3 script. No pip, no venv, no external dependencies.
Replaces SmechDeploy (archived). All build phases are implemented inline.
Profiles
SmechOS (15 phases): musl → userland → etc → openrc → inittab → grub → qt-deps → mesa → kde → plasma-configure → kwin-deps → qt6uitools → kernel → patch-metadata → discover
SmechVisor (8 phases): musl → userland → etc → openrc → inittab → kernel → grub → smechvisord
Usage
python3 spk-compile.py smechos
python3 spk-compile.py smechvisor
python3 spk-compile.py smechos --phase kde
python3 spk-compile.py smechos --iso install
python3 spk-compile.py smechvisor --iso shim
python3 spk-compile.py --list smechosOr via spk:
spk compile smechos
spk compile smechvisor --iso shimSource versions pinned
| Component | Version |
|---|---|
| Linux kernel | 6.12.16 |
| GRUB | 2.12 |
| musl libc | 1.2.5 |
| Qt6 | 6.8.2 |
| KDE Frameworks | 6.10.0 |
| KDE Plasma | 6.3.4 |
| Mesa | 24.3.4 |
| OpenRC | 0.54 |
| AppStream | 1.0.3 |
| PackageKit | 1.3.0 |
Docs
https://docs.smech.xyz/smechdeploy.html
License
MIT — © 2026 Smech Labs