Re: Can you point me to documentation of the kernel spec file?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 2021-08-06 at 04:49 +0000, Sampson Fung wrote:
> I am new to kernel building - I just managed to finishing building my
> first kernel with the help I can got here.
> 
> I want to build with rpmbuild, Fedora's kernel source RPMs, and the
> contained kernel.spec under Fedora.
> 
> I want to learn reading the kernel.spec file.  
> 
> Please help by pointing me where I can start reading!
> _______________________________________________


There are a couple of things that changed over recent years and also
different ways of building (different people, different goals,
different preferences). There is plenty of information out there but
you need to be a bit careful and considerate because some things are
just outdated or way easier nowadays.

- A good way to start is the Wiki maybe [1]. It seems more complete and
up-to-date. Another good thing is you can always change or update
sections that are not current or correct anymore. It covers the fedpkg-
way of building the complete kernel package.

- You already found this in the Fedora Docs: [2]. First thing that
jumps into my eye is that it fails to mention that it is much easier to
disable Secure Boot rather than enroll your own keys in the firmware.
Nice thing about Fedora Docs: You can also update, review, and
contribute there: [3]. Maybe I do that just because of that Secure Boot
thing :-)

- The excellent Fedora Magazine has some articles about building and
testing kernels: [4] 

- There's also the $HOME/rpmbuild tree way (rpmdev-setuptree creates
one for you). You already seen that here on the list. It is essentially
the same what fedpkg and mock do, just not in a chroot'ed environment,
and thus might not be the "cleanest" way to test if a build is actually
working.

- You asked for something to read. However, there are a couple of
Fedora community videos online that explain some internals and show
where people want to go with Fedora kernel work. Tremendously helpful
to get a wider picture.
  * One from 2017, Laura Abbott hosted a discussion with a lot of
insights: [5]
  * Something from last year: [6]. Explains what is Fedora ARK and more
recent developments

- If you are interested in contributing config changes, continuous
testing, integrating patches, take a look at Fedora ARK (Always Ready
Kernels) at [7] and esp. [8]. There's a contributors guide, too. It
also shows how to use Koji to build packages (e.g., not on your local
machine, for other arches). I think these links are the most useful
things to read when you are interested to work with others and get
changes into Fedora.

In the end, the kernel is an RPM package like any other (uh, a more
complicated package, though). There are a couple of resources on RPM
spec files and packaging in general: [9] [10]. If you are not
interested in the packaging or in the Fedora-way you have the option to
go full vanilla.

BK

[1]: https://fedoraproject.org/wiki/Building_a_custom_kernel
[2]:
https://docs.fedoraproject.org/en-US/quick-docs/kernel/build-custom-kernel/
[3]: https://pagure.io/fedora-docs/quick-docs/blob/master/f/README.md
[4]: https://fedoramagazine.org/?s=fedora+kernel
[5]: Video from Flock 2017 https://youtu.be/j4gBrz2uEbA
[6]: In the Fedora Project channel, Justin Forbes with newest changes
in kernel packaging https://youtu.be/urUktTIP0Fs
[7]: https://gitlab.com/cki-project
[8]: https://cki-project.gitlab.io/kernel-ark/
[9]:
https://rpm-guide.readthedocs.io/en/latest/rpm-guide.html#what-is-a-spec-file
[10]: https://rpm-guide.readthedocs.io/en/latest/index.html

_______________________________________________
kernel mailing list -- kernel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to kernel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/kernel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure




[Index of Archives]     [Fedora General Discussion]     [Older Fedora Users Archive]     [Fedora Advisory Board]     [Fedora Security]     [Fedora Devel Java]     [Fedora Legacy]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Mentors]     [Fedora Package Announce]     [Fedora Package Review]     [Fedora Music]     [Fedora Packaging]     [Centos]     [Fedora SELinux]     [Coolkey]     [Yum Users]     [Tux]     [Yosemite News]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [USB]     [Asterisk PBX]

  Powered by Linux