Mail archive
alpine-devel

Re: [alpine-devel] Splitting up linux-firmware?

From: Oliver Smith <ollieparanoid_at_bitmessage.ch>
Date: Tue, 09 Jan 2018 16:04:00 +0000

Timo Teras:
> On Mon, 08 Jan 2018 16:51:00 +0000
> Oliver Smith <ollieparanoid_at_bitmessage.ch> wrote:
>
>> William Pitcock:
>>> On Sat, Jan 6, 2018 at 4:13 PM, Oliver Smith
>>> <ollieparanoid_at_bitmessage.ch> wrote:
>>>> Hey alpine-devel,
>>>>
>>>> there's the >250 MB (install size) linux-firmware package, of
>>>> which usually only few files are needed for one machine. For other
>>>> packages, Alpine already splits off -dev and even -doc to save as
>>>> much space as possible, so it would make sense to me if we started
>>>> splitting up linux-firmware as well. Our use case in Alpine Linux
>>>> based postmarketOS is, that we could only flash the firmware
>>>> subpackges to the mobile device, which we actually need (thus
>>>> making the total image size a lot smaller).
>>>>
>>>> The package provides files in /lib/firmware and is already
>>>> categorized in subfolders. So we could make one subpackage for
>>>> each subfolder. Examples:
>>>>
>>>> - linux-firmware-liquido (23.7 MB)
>>>> - linux-firmware-netrome (22.0 MB)
>>>> - linux-firmware-brcm (15.1 MB)
>>>> - linux-firmware-amdgpu (13.9 MB)
>>>> - linux-firmware-intel (12.8 MB)
>>>> - linux-firmware-ti-connectivity (8.6 MB)
>>>> - linux-firmware-bnx2x (8.6 MB)
>>>> - linux-firmware-mrvl (7.7 MB)
>>>> - linux-firmware-radeon (7.4 MB)
>>>>
>>>> Files directly in /lib/firmware could go into
>>>> "linux-firmware-other", and the "linux-firmware" package could
>>>> depend on all its subpackages for compatibility.
>>>>
>>>> What do you think, would it make sense to submit a PR for that?
>>>
>>> Yes, please do it.
>>
>> Done: https://github.com/alpinelinux/aports/pull/3037
>
> Thanks for working on this!
>
> Few additional comments:
>
> Should we now also change linux-grsec and linux-vanilla to not depend
> on linux-firmware? Because they still pull in the meta-package pulling
> in everything. Should the modules be split accordingly? Or should we
> pull in some core firmwares only automatically?

I think it makes sense for the linux-* packages not to depend on the
whole linux-firmware anymore, so people can really install only what they
need. As Jirutka wrote on GitHub, it's probably a good idea to show a
warning in post-upgrade, that most users need to install the subpackages
(or simply the whole linux-firmware package) then.

Regarding the modules I don't know if it's feasible to split them as well.

>
> Btw. mkinitfs properly picks up the firmwares for initramfs disks based
> on kernel modules on initramfs. See:
> https://git.alpinelinux.org/cgit/mkinitfs/tree/mkinitfs.in#n127
>
> I earlier had the idea to do similar pruning for linux-firmware package
> as it contains overlapping versions of firmwares, and firmwares for
> modules we don't even build. However, this would require us to track the
> firmwares requires for all of the kernel builds we do (all arches; all
> configs). So it was not so trivial to implement.
>
> And finally a minor nitpick: now have linux-firmware-RTL8192E;
> generally we don't use uppercase in package names.

Thanks for noticing, I've made a follow-up PR that fixes this:
https://github.com/alpinelinux/aports/pull/3046

>
> But thanks again for working on this. I have had on my todo list for a
> while and good to see you're getting it done :)
>

You're welcome :)

> Timo
>
>
> ---
> Unsubscribe: alpine-devel+unsubscribe_at_lists.alpinelinux.org
> Help: alpine-devel+help_at_lists.alpinelinux.org
> ---
>
>



---
Unsubscribe:  alpine-devel+unsubscribe_at_lists.alpinelinux.org
Help:         alpine-devel+help_at_lists.alpinelinux.org
---
Received on Tue Jan 09 2018 - 16:04:00 GMT