Whats the deal with kernels?

102 views
Skip to first unread message

sevas

unread,
Apr 2, 2018, 10:42:14 PM4/2/18
to qubes-users
Ive been looking at kernel compiling. Ive amounted certain information,
but not enough.

I see 3 git repos with kernels: qubes-linux-kernel, rtiangha and fepitre.

I know I can change versions with $ git checkout *version*

I also know that I can download the sources and build them and I would preferably
edit a .config file to edit my options and hardware.

What I need to know:
-how to use the gen-config file.
-whats the difference between the config-base, config-qubes and config-qubes-minimal? (well the minimal part is obvious)
-I can edit one of these config files to build with my kernel, correct?
-I have built a .config using the '$ make oldconfig' command and it was a
nightmare. The most effective way to configure a .config is to use '$ make menuconfig' correct? A good balance between my time and control?
-Is there a convenient way to merge an existing .config with the qubes .config?

Any other tips?
Is there a qubes doc on this?

Tai...@gmx.com

unread,
Apr 3, 2018, 4:17:39 AM4/3/18
to qubes...@googlegroups.com
On 04/02/2018 10:25 PM, sevas wrote:
> -how to use the gen-config file.
gen config as in general, most of the options enabled for a general PC.
> -whats the difference between the config-base, config-qubes and config-qubes-minimal? (well the minimal part is obvious)
Base for a regular kernel, qubes for a qubes kernel.
> -I can edit one of these config files to build with my kernel, correct?
Yeah.
> -I have built a .config using the '$ make oldconfig' command and it was a nightmare.
Which is why its called oldconfig :P
> The most effective way to configure a .config is to use '$ make menuconfig' correct? A good balance between my time and control?
Yeah you get all the same stuff only in a nice ncurses graphical menu.

Honestly I don't really see a reason to compile a kernel but not compile
anything else unless for instance you want a bleeding edge feature or
you want to disable some lame shit like IPv6.

I hope some day qubes will have an easy-compile system like gentoo so
one can compile the base distro and all updates from source when
downloaded for maximum security.
0xDF372A17.asc

cooloutac

unread,
Apr 3, 2018, 7:08:37 PM4/3/18
to qubes-users

Search the mailing list for Reg Tiangha I forget how to spell the last name, or building qubes kernel till you see his thread.

cooloutac

unread,
Apr 3, 2018, 7:11:18 PM4/3/18
to qubes-users
On Monday, April 2, 2018 at 10:42:14 PM UTC-4, sevas wrote:

https://groups.google.com/forum/#!topic/qubes-users/yBeUJPwKwHM

sevas

unread,
Apr 3, 2018, 9:21:38 PM4/3/18
to qubes-users
Yes, thank you. I have read that entire page, as well as a few other good resources:

github.com/rtiangha/qubes-linux-kernel/blob/devel-4.14-hard/README.md
github.com/0spinboson/qubes-doc/blob/patch-1/managing-os/compiling-your-own-kernel.md


Im running into a problem right at the end.

rpm --add-sign /home/user/*.rpm
You must set "%_gpg_name" in your macro file

I have made the missing file: ~/.rpmmarco
%_signature gpg
%_gpg_path /home/user/.gnupg
%_gpg_name (b4892c28 / mypgp)

I still get the error. Can I ignore this?
Qubes-Builder docs suggests editing the builder.conf and changing NO_SIGN=1
but that doesnt exactly apply to kernels, does it?

I dont need to sign my packages, do I? Im not sure if the compiler is failing at
the rpm signing or if its ignoring and finished.

cooloutac

unread,
Apr 4, 2018, 11:33:07 AM4/4/18
to qubes-users

I would ask in that other thread and maybe Reg will respond. I have no experience compiling kernels for Qubes.

Foppe de Haan

unread,
Apr 5, 2018, 1:51:16 AM4/5/18
to qubes-users

yes, you can ignore this, though you can also just follow a gpg guide to create a signature for your own use. Not necessary, but why not? :)

sevas

unread,
Apr 5, 2018, 7:26:42 PM4/5/18
to qubes-users
I did do that. The problem was that 'misconfigured' file: .rpmmacros.

Apparently you have to edit (or make) the file and add _gpg_dir, _gpg_name and _signature parameters. This is only half true.

The file that needs to be modified (and possibly bind-dir this file) is not located in ~/.rpmmacros as suggested.

The file is located here: /usr/bin/rpm/macros
and you do not need to edit anything except the _gpg_name parameter or it breaks.


Does anyone know what the different kernel rpms are for?
kernel.rpm
kernel-devel.rpm
kernel-qubes.rpm

I guess I would install the kernel-qubes.rpm. I would also guess that kernel.rpm
is without qubes things that I probably want. And devel is with lots of debugging
that I probably dont need?

Reply all
Reply to author
Forward
0 new messages