Update History
- 2022-02-04 Sailfish SDK 3.8 released to Early Access users
- 2022-02-11 Sailfish SDK 3.8 released to all users
- 2022-03-21 Early Access Build Targets and Emulator updated to 4.4.0.58 (Vanha Rauma)
Most notable changes included in this release:
- Docker based build engine is now usable on hosts with cgroup v2
- Please note that our QA is done on Ubuntu 20.04, so you might still run into issues using other Linux distributions.
- Possibility to run multiple builds concurrently
- Support for password protected ssh keys
- Possibility to clone build targets
Contributions from the community
We would like to thank the people who have reported bugs via Sailfish OS Forum.
Release Content
This release doesnât bring changes to the Emulators or Build Targets. The latest Emulator and Build Targets match the Sailfish OS release 4.3.0 âSuomenlinnaâ
SDK IDE (Qt Creator)
- Bugs fixed:
- No feedback when attaching debugger to running application takes too long
SDK CLI (sfdk)
- Possibility to define arguments which are passed to build shell. See the
build-shell.*
configuration options insfdk --help-building
for more info. - Possibility to run maintenace commands under the configured build target conveniently with
sfdk build-shell --maintain
- Possibility to set emulator device model. See
sfdk emulator --help
for more info. - Command used for searching for packages inside a build target was renamed as
sfdk tools package-search
- Sfdk now preserves only the latest RPMs in output directory. Use the
package.timeline
configuration option to override. - Zypper based deployment methods report installation progress
- Possibility to run build jobs with modified scheduling priority, i.e. with
nice
- Possibility to clone build targets with
sfdk tools clone
- Possibility to determine how the current build environment differs from the clean state using
sfdk build-requires diff
- Possibility to forward environment variables to build engine using
sfdk engine set environment.filter
- Possibility to handle zypper errors interactively during build tools update
- Bugs fixed:
- sfdk does not automatically recover from rpm database error during tools update
- Interrupting sfdk tools register leaves zypper running on background
- Unnecessary confirmation step with sfdk tools register
- âsfdk applyâ command does not work with patches with CRLF on Unix
- sfdk package-install instructs to use sdk-assistant help that is not available
- sfdk: Local package cache is cleaned unconditionally during tools update
- sfdk: outdated target snapshot is reset implicitly with no-pull-build-requires active
- sfdk: registering build target snapshot is not possible
- âsfdk build-requires resetâ cleans up local package cache unconditionally
- sfdk: target snapshot considered outdated once after package-search on the original target
- sfdk: options are not explicit about accepting paths under SDK workspace
- sfdk is verbose under Git repo with empty HEAD
- sfdk creates .sfdk directory in $PWD when there was no spec or yaml found
- sfdk apply doesnât exit when patching fails
- sfdk doesnât pass %_sourcedir to rpmspec
- sfdkâs exit status is 0 even when build fails.
General
- Possibility to run multiple builds concurrently with Sfdk
- Password-protected SSH keys can be used with the help of SSH authentication agent
- Attention: Do not choose your specific SSH key when adding the device under Qt Creator. Leave the selection on the default value. Otherwise Qt Creator will not talk to the SSH agent. All that you need to do is to add the key to the agent.
- Added emulator modes for Sony Xperia 10 II and III
- Forwarding environment variables to the build environment with
sfdk engine set environment.forward
- Bugs fixed:
- Docker based build engine unusable on hosts with cgroups v2 only
- Docker build engine does not seem to recover from network changes
- sdk-manage creates target with double slash in SBOX_CROSS_GCC_DIR
- Automatic refreshing of RPM repo caches disturbs SDK workflows
- Application projects claim ownership of /usr/bin by default
Installation/Maintenance
- When installing Docker based build engine, the installer now checks if the Docker root directory has as much space as the installation target directory, and prints a warning if that is not the case
Known Issues
- Proxy settings donât work on Docker based build engine.
- As a workaround, manual proxy configuration is possible by setting the well known *_proxy environment variables on host and get them forwarded to the build engine with
sfdk engine set environment.forward="*_proxy"
.
- As a workaround, manual proxy configuration is possible by setting the well known *_proxy environment variables on host and get them forwarded to the build engine with
- The SDK installer does not work with the Docker buildkit which is used by default on new Docker installations on Windows. Typical error message is
Error response from daemon: network mode "sailfish-sdk" not supported by buildkit
- As a workaround, set the environment variable DOCKER_BUILDKIT to value 0 before running the installer/maintenance tool. e.g.
DOCKER_BUILDKIT=0 /c/SailfishOS/SDKMaintenanceTool
- As a workaround, set the environment variable DOCKER_BUILDKIT to value 0 before running the installer/maintenance tool. e.g.
If you have any questions, feel free to either write it up here in Sailfish OS Forum or send an e-mail to developer-care at jolla.com.
Happy hacking!
Jolla SDK Team