Bunch of scripts to ease creating chrooted ubuntu/sailfish in sailfishos >= 3.3.0.16.
Tested only with gnu-bash, procps-ng and psmisc-tools instead busybox replacements installed by default on sailfish >= 4.0.1.x
Clone it to non fat partition. Distro image can be created in any place via CHROOT_SRC in variables.sh
git clone --depth=1 https://github.com/elros34/sailfish_linux_chroot.git
cd sailfish_linux_chroot/"Distro"
devel-su
./create.sh
It will create shortcuts in sailfish launcher needed to enter, close chroot and helper scripts sfoschroot.sh/ubuchroot.sh in /usr/local/bin/
Latest working release is 19.04. In later releases: 19.10 - 21.04 weston and qtwayland fail (tested only on one device). Additionally, since 19.10 ubuntu use snap for chromium and other packages but snap fails to work in chroot. The remaining applications started with xwayland might still work.
If you want xfce in landscape mode then make sure you have installed latest qxcompositor and qdevel-su, then
./install.sh qxcompositor
./install.sh xfce4
If you use some rotation patch different than sailfishos-default-allowed-orientations-patch then qxcompositor will rotate incorrectly (freely).
For devices with hardware keyboard you can install chromium-browser via script. Browser UI scale can be changed via CHROMIUM_SCALE in scripts/dotuburc. Limited usability for devices without hardware keyboard can be achieved with: QXCOMPOSITOR_PORTRAIT and CHROMIUM_MATCHBOX_KEYBOARD in variables.sh.
./install.sh chromium-browser
Enable it in variables.sh Sailfish's pulseaudio mutes other audio sources so use pavucontrol (pulse audio volume control) to unmute it in 'playback' tab
Useful for building packages on device without breaking base system.
Install 'BuildRequires' dependencies [optional rpm spec]
sfoschroot.sh --build-dep [rpm/*.spec]
Build rpm package [optional rpm spec]
sfoschroot.sh --build [rpm/*.spec]
Change TRACE_CMD in variables.sh to "set -x"
'.copied' file contains all installed files like: