Bringing Mobian closer to Debian, again
Hi,
A few months have passed, and we're making some progress on this topic,
so here's a summary what happened lately:
* 'mobian-tweaks'[1] has been dramatically stripped down: it now only
contains a few config fragments and PAM configs; the next step for us
is to propose those bits for integration in Debian's
'mobile-tweaks'[2]
[1] https://gitlab.com/mobian1/mobian-tweaks
[2] https://salsa.debian.org/DebianOnMobile-team/mobile-tweaks
* we're in the process of upstreaming our patches to 'u-boot-menu': part
of those have been submitted (but not yet accepted), others are being
rewoked before being sent; as those are replacing some of our
device-specific tweaks, once accepted this will allow us to merge most
(if not all) of those tweaks in Debian's 'mobile-tweaks', further
reducing the delta
* we created a few new packages we believe will be useful additions to
Debian, and plan to migrate those to the DebianOnMobile salsa group
first, then have them uploaded to Debian if no one objects:
- 'mobile-initramfs-tools'[3] is a collection of initramfs hooks and
scripts for improving the "mobile device" use case:
+ automatically resize the root fs (including LUKS-encrypted
partitions) on first boot
+ allow overriding the "root=" and "ro/rw" kernel command-line
parameters (useful for some Android devices on which the stock
bootloader appends such parameters to the chosen cmdline)
- 'mobile-usb-networking'[4] provides scripts and the corresponding
systemd services to create a network connection over USB gadget
- 'miniramfs'[5] works around the limitation of some devices for which
the initramfs size is constrained; it creates a minimal initramfs
able to chain-load the actual initrd from the boot partition and
transfer control to it
[3] https://gitlab.com/mobian1/mobile-initramfs-tools
[4] https://gitlab.com/mobian1/mobile-usb-networking
[5] https://gitlab.com/mobian1/miniramfs
Finally, I'm doing a major rework of the 'mobile-tweaks' package:
currently this package generates one (very small) binary package for
each supported device, with very little difference between those.
As it might not be the most efficient approach (especially when the list
of supported devices grows over time), I started refactoring this
package based on the concepts proposed by Federico a few months ago:
* make it a single binary package with the config files and fragments
for all supported devices
* include an executable and per-device configs: upon installation, the
executable will run, detect the device type and install the necessary
files under `/etc` (or create symlinks to the original files if more
appropriate)
* for Android devices, it will extract firmware files from the vendor
partitions and copy them to `/lib/firmware`, so we don't have to care
about distributing those anymore
I expect to have an initial version ready for review during next month,
in the meantime I would welcome your opinions and suggestions about this.
Cheers,
Arnaud
Reply to: