Files
wiki/Gentoo_Tips_Tricks.md

2.7 KiB

title, description, published, date, tags, editor, dateCreated
title description published date tags editor dateCreated
Gentoo Tips, Tricks & Shenanigans These are Gentoo relevations which surprised me at some point, along with nice to haves. true 2022-04-30T20:10:31.949Z gentoo, performance markdown 2021-09-02T08:10:07.601Z

Below are stuff I found out about Gentoo.

Moving package from Testing to Stable

Gentoo's testing branch (~arch) is actually quite stable. However, in case you'd like to keep something on stable for whatever reason (I encountered this with the kernel, trying to Clang it), you can mask the ~amd64 keyword under /etc/portage/package.accept_keywords/your_package. Example:

/etc/portage/package.accept_keywords/gentoo-sources:
sys-kernel/gentoo-sources -~amd64

That is, if your /etc/portage/make.conf contains ~amd64, you can un-~amd64-it this way. Noice!

Clang

Clang is an LLVM frontend and an alternative to GCC. Clang has recently surpassed GCC performance wise, as well as being easier to set up for goodies like LTO.

Gentoo's wiki page lays out how to use Clang as a system compiler instead of GCC - but note the few caveats below:

READ THE INSTRUCTIONS CAREFULLY! the order is crucial and is not chronological! {.is-danger}

  • All DE's tested (KDE5, GNOME3) require samba, and samba requires GCC's own libunwind. Hence, when following instructions above, do not use llvm-libunwind (unfortunately). This is only relevant for GUI installations - servers are fine.

  • Clone the Portage Git repository for necessary overrides back to GCC (such as Python3, GNU libc).

  • Use flto=thin. It's easy and it works great.

  • Use LDFLAGS per compiler - when adding Clang's LDFLAGS to the global make.conf, GCC also reads them (and fails!). {.is-warning}

  • Use ninja for faster compile times.

  • if following Compiling on the RAM When building Clang itself, unmount /var/tmp/portage - it doesn't play nicely.

Happy compiling!

Virtualizing with UEFI on QEMU

When trying to create a UEFI VM on virt-manager, some settings will lead to a blank screen. In order to use UEFI:

  • emerge the UEFI firmware - sys-firmware/edk2-ovmf
  • restart libvirtd if running
  • when creating a VM, select the Q35 chipset (440FX does not work), and use the secure_code option - UEFI x86_64: /usr/share/qemu/edk2-x86_64-secure-code.fd.

Reference: https://forums.gentoo.org/viewtopic-t-1066336-start-0.html {.is-info}

The Makefile is just a file!

You can read it! you can tweak it! yay!

Thanks, Gentoo-folk!