Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Include additional kernel-firmware packages #134

Closed
phillxnet opened this issue Feb 10, 2023 · 3 comments · Fixed by #136
Closed

Include additional kernel-firmware packages #134

phillxnet opened this issue Feb 10, 2023 · 3 comments · Fixed by #136

Comments

@phillxnet
Copy link
Member

phillxnet commented Feb 10, 2023

As per forum member stitch10925's findings in the referenced thread, we likely have need to include additional (or all) available kernel-firmware files. The current proposal is for the addition of:

kernel-firmware-intel
kernel-firmware-network
kernel-firmware-platform

Currently we have the following packages included in this area:

<package name="kernel-default"/>
<package name="kernel-firmware-bnx2"/>

and the following relevant comment:

<!-- Fix choice between kernel-firmware and kernel-firmware-all -->
<!-- <package name="kernel-firmware"/> -->

Due to our more recent move to a Poetry based build in our 'rockstor' package, we have many more additional 'developer' packages that are dependencies of the 'rockstor' package (due to our building of dependencies upon rpm install). This in turn makes for a significantly larger installer image (around 900MB). As such these firmware options now represent a smaller percentage increase in the resulting installer.

Further exploration of the degree to which the firmware packages will expand the image can be done under this issue. But give we are in the 'appliance' arena the utility of out-of-the-box function trumps all but excessively large, or mostly no-longer-relevant firmware additions.

Referenced forum issue: https://forum.rockstor.com/t/solved-missing-network-card-drivers-intel-i225-v/8624/15

@Stitch10925
Copy link

Please note that there is also:

  • kernel-firmware-marvell => Marvell network drivers (quite popular chipset)
  • kernel-firmware-qcom => Qualcom device drivers (could be network)
  • kernel-firmware-qlogic => QLogic network drivers (unknown to me)
  • kernel-firmware-chelsio => Chelsio network drivers (also unknown to me)

So I'm wondering if maybe it would be a good approach to not include these firmware packages directly in the build, but do a detection of hardware manufacturer (intel, qualcom, marvell, etc ...) and then pull the required firmware packages? This might require the addition of lspci and lshw.

I'm fairly new to Linux, so maybe this is not feasable, but it was a thought I wanted to throw out there.

@Stitch10925
Copy link

So... I just realized the chicken-and-egg situation my proposal would cause, because how can you pull firmware packages for network drivers if you don't have a network connection?

So, please ignore my idea. It's obviously flawed...

@phillxnet
Copy link
Member Author

For the proposed we have, via rpm -qi package-name

License : SUSE-Firmware AND GPL-2.0-only AND GPL-2.0-or-later AND MIT

on all of:

kernel-firmware-intel 2.5 MiB
kernel-firmware-marvell 2.3 MiB
kernel-firmware-network 3.6MiB
kernel-firmware-platform 1.6 MiB
kernel-firmware-qlogic 12.8MiB
kernel-firmware-chelsio 2.9 MiB

@Stitch10925 I'm skipping:

kernel-firmware-qcom 20.2 MiB (so a little shy, size wise, of all the above added up)

for now as unsure if these are just wifi, plus we have had no requests for these yet. But all the others you mentioned I'm popping in vi a pull request against this issue to hedge our bets. But it remains to be seen if the build still works.

Thanks for pointing out the others. Best if we can stick to just devices relevant to us (net and storage, usb likely) as the all firmware package was massive last time I tried it.

phillxnet added a commit to phillxnet/rockstor-installer that referenced this issue Mar 9, 2023
- Add wget rockstor#133.
- Additional kernel-firmware packages rockstor#134.
- Add discreet gzip, gawk, grep, xz to bootstrap.
This way we avoid the busybox variants being
favoured, via dependency, and causing complexities
with install of such things as rpm-build for
self-hosting our own rpm build.

## Indicentally includes:
- Minor typo on a Tumbleweed Pi4 profile.
- Bump to lastest rockstor package version.
phillxnet added a commit that referenced this issue Mar 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants