if a camera hardware switch in the PinePhone is disabled, Megapixels segfaults because it cannot find the cameras from the device config. It should just ignore this part of the config instead (it's a perfectly valid use case to disable e.g. the front camera and use only the back camera).
This was fixed in 1.0.0.
I gave this some thought and decided to just build the Sxmo images for all devices where we also build Phosh and Plasma Mobile images, for v21.03 and edge. This will probably encourage more people to try it out and contribute patches to fix the few remaining issues with their devices.
Summary of what has been done in pmOS to address this (2021-03-21):
- In postmarketos-mkinitfs, the new initramfs-extra is not generated next to the old one. Instead, it is generated in /tmp. This way it does not run out of space anymore, and prevents the issue here. (The old logic was supposed to do more-or-less an atomic replacement of the old file, more on that below.)
- pmbootstrap has been patched to double the default boot partition size, 256 MiB instead of 128 MiB.
- All new images, including the first images since v21.03 was announced, are now built with the bigger boot partition
- With the bigger boot partition size, in theory it's now possible to do an atomic replacement of all files on the boot partition again. The plan is to update postmarketos-mkinitfs to check available size first, and if there is enough space, generate the new files next to the old one and replace them if they were built successfully. However, the postmarketos-mkinitfs code is pretty much the oldest code in postmarketOS and I'm not happy with the quality of the code anymore (doesn't use
set -efor example). I'll probably just rewrite it and implement this safety feature (replacing the files from same partition) while at it. I've also considered using existing initramfs build scripts, but the postmarketOS mkinitfs is also able to repackage the initfs into boot.img and other formats needed to boot on android devices etc. So I'm leaning towards just rewriting the few LOC we already have. Details: https://gitlab.com/postmarketOS/pmaports/-/issues/1019
=> I think this can be closed.
~begs, can you submit patches to Sxmo/pmaports, so bq-paella works out of the box with Sxmo, and make sure it works in the future? Then I'd be happy to enable automatic building of Sxmo images for bq-paella, edge and v21.03 (the latter once we backport this in a service pack).
Same goes for other devices in main and community categories.
That's not an issue, we can just fork these components from alpine.
Please mention in the sxmo 1.4.0 MR, on which versions of lisgd, svkbd etc. it depends, with a note that this is relevant for backporting.
Forking from alpine is basically:
$ cd pmaports $ git checkout master $ pmbootstrap aportgen --fork-alpine lisgd $ git checkout v21.03 $ nvim temp/lisgd/APKBUILD # edit reason for fork in first line to "edge" $ git add temp/lisgd $ git commit -m "temp/lisgd: fork from alpine edge"
~ollieparanoid let me know if putting this forward in and going this way is good by you
Yep, sounds good.
The workflow ~ollieparanoid proposed looks good to me too. I'm kind of hoping we can squeeze our newest 1.4.0 release in for v21.03, but that may be tight.
Since this branch is supposed to be more stable, it wouldn't be good to do this in the last second. Rather take your time with the release, give it some time for testing on edge, and then we ship it in the first service pack.
While we're discussing this, where should users download v21.03 images with Sxmo? Right now, there are two places where Sxmo images are available.
I wonder if we should remove one of them, so it's clear for users where they can get their images and we don't have duplicate effort.
Sxmo developers have control over a) and can generate new images right after a release (whereas b) only generates them weekly), so I think it makes sense to keep a) and get rid of b), once both have the same feature sets. We can then link the sxmo directory of images.postmarketos.org to images.lrdu.org.
- the generated image gets packed into a second image with the on-device installer, which can be used to create an encrypted installation, install from the SD card to eMMC, set a user and sshd password (and in the future, choose the filesystem). Users can then download either the "regular" image (like a live CD) or the installer image.
pmbootstrap installis called with
--no-sshd, so the SSH server is disabled
Good to see that this is on your radar, I was just about to create an issue to communicate this.
I've just upgraded Sxmo in the WIP branch of the next release, v21.03 (as written above, to be released at the end of this month), to the latest commits from pmOS master: https://gitlab.com/postmarketOS/pmaports/-/merge_requests/2055
Please do test installs with postmarketOS v21.03 (select that channel in
pmbootstrap init) + Sxmo, and verify that everything is working as it is supposed to.
Relevant for Sxmo, we also plan to make this available in the v21.03 release (-> will be merged soon to master and get backported to v21.03): https://gitlab.com/postmarketOS/pmaports/-/merge_requests/1931
- we will create pre-built postmarketOS images with Sxmo from the v21.03 branch for the PinePhone roughly every week (just like for edge)
- we can do it for more devices too if there is interest (though right now Sxmo seems still to be very pinephone centric, see #169?)
- these come as live image, and with the installer to do FDE etc.
- feature changes go into postmarketOS edge first, and get backported to the stable branch every month or so, bundled in so-called service packs
- bug fixes can be backported directly to v21.03 if needed
- (if the workflow doesn't work for you, it's not all set in stone, just talk to us)
Once the release is announced, this will be the recommended branch to install postmarketOS, and we will have a download page on the homepage. From there, people will be able to download pre-built images for all devices in main and community.
yes this is very much needed. After every upgrade had issues related to libraries in applications like kodi, evolution, surf and megapixels. It is really time consuming to identify libraries which break after every upgrade.
Yes, unfortunately there was quite a lot of breakage recently :\ ( https://postmarketos.org/edge )