This repo records my experience about gentoo usage.
Build a big kernel without modules.
Add nessency firmware.
Boot with The rEFInd Boot Manager
- copy config from a running linux distro.
zcat /proc/config.gz /usr/src/linux/.config
- Update current config converting local mods to core
make localyesconfig
- tuning drivers
- tuning cpu
lspci -k
00:00.0 Host bridge: Intel Corporation 8th Gen Core Processor Host Bridge/DRAM Registers (rev 07) Subsystem: ASUSTeK Computer Inc. PRIME H310M-D Kernel driver in use: skl_uncore 00:02.0 VGA compatible controller: Intel Corporation CometLake-S GT2 [UHD Graphics 630] DeviceName: Onboard IGD Subsystem: ASUSTeK Computer Inc. CometLake-S GT2 [UHD Graphics 630] Kernel driver in use: i915 00:14.0 USB controller: Intel Corporation 200 Series/Z370 Chipset Family USB 3.0 xHCI Controller Subsystem: ASUSTeK Computer Inc. 200 Series/Z370 Chipset Family USB 3.0 xHCI Controller Kernel driver in use: xhci_hcd 00:16.0 Communication controller: Intel Corporation 200 Series PCH CSME HECI #1 Subsystem: ASUSTeK Computer Inc. 200 Series PCH CSME HECI Kernel driver in use: mei_me 00:17.0 SATA controller: Intel Corporation 200 Series PCH SATA controller [AHCI mode] Subsystem: ASUSTeK Computer Inc. 200 Series PCH SATA controller [AHCI mode] Kernel driver in use: ahci 00:1b.0 PCI bridge: Intel Corporation 200 Series PCH PCI Express Root Port #17 (rev f0) Kernel driver in use: pcieport 00:1c.0 PCI bridge: Intel Corporation 200 Series PCH PCI Express Root Port #1 (rev f0) Kernel driver in use: pcieport 00:1c.4 PCI bridge: Intel Corporation 200 Series PCH PCI Express Root Port #5 (rev f0) Kernel driver in use: pcieport 00:1d.0 PCI bridge: Intel Corporation 200 Series PCH PCI Express Root Port #9 (rev f0) Kernel driver in use: pcieport 00:1f.0 ISA bridge: Intel Corporation Z370 Chipset LPC/eSPI Controller Subsystem: ASUSTeK Computer Inc. Z370 Chipset LPC/eSPI Controller 00:1f.2 Memory controller: Intel Corporation 200 Series/Z370 Chipset Family Power Management Controller Subsystem: ASUSTeK Computer Inc. 200 Series/Z370 Chipset Family Power Management Controller 00:1f.3 Audio device: Intel Corporation 200 Series PCH HD Audio Subsystem: ASUSTeK Computer Inc. 200 Series PCH HD Audio Kernel driver in use: snd_hda_intel 00:1f.4 SMBus: Intel Corporation 200 Series/Z370 Chipset Family SMBus Controller Subsystem: ASUSTeK Computer Inc. 200 Series/Z370 Chipset Family SMBus Controller Kernel driver in use: i801_smbus 00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (2) I219-V Subsystem: ASUSTeK Computer Inc. Ethernet Connection (2) I219-V Kernel driver in use: e1000e 03:00.0 USB controller: ASMedia Technology Inc. ASM2142 USB 3.1 Host Controller Subsystem: ASUSTeK Computer Inc. ASM2142 USB 3.1 Host Controller Kernel driver in use: xhci_hcd
lsusb
Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 003: ID 0424:5744 Microchip Technology, Inc. (formerly SMSC) Hub Bus 002 Device 002: ID 0bda:0409 Realtek Semiconductor Corp. 4-Port USB 3.0 Hub Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 003: ID 0424:2744 Microchip Technology, Inc. (formerly SMSC) Hub Bus 001 Device 004: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode) Bus 001 Device 002: ID 0bda:5409 Realtek Semiconductor Corp. 4-Port USB 2.0 Hub Bus 001 Device 006: ID 046d:c07f Logitech, Inc. Gaming Mouse G302 Bus 001 Device 005: ID 060b:7a03 Solid Year USB Keyboard Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
lshw | grep -i driver | perl -pe 's/^.*driver=(\S+).*$/$1/g;' | sort -u
ahci e1000e i801_smbus i915 mei_me pcieport rtc_cmos serial skl_uncore snd_hda_intel system xhci_hcd
Intel microcode - Gentoo Wiki intel - Gentoo Wiki
CONFIG_EXTRA_FIRMWARE_DIR="/lib/firmware" CONFIG_EXTRA_FIRMWARE="intel-ucode/06-9e-0a i915/kbl_dmc_ver1_04.bin i915/kbl_guc_33.0.0.bin i915/kbl_huc_4.0.0.bin"
emerge --ask sys-kernel/linux-firmware emerge --ask sys-firmware/intel-microcode
iucode_tool -S
iucode_tool -S -l /lib/firmware/intel-ucode/*
/usr/share/docker/contrib/check-config.sh /usr/linux/src/.config
�[37minfo: reading kernel config from /proc/config.gz ...�[m Generally Necessary: - �[37mcgroup hierarchy�[m: �[32mcgroupv2�[m - �[37mCONFIG_NAMESPACES�[m: �[32menabled�[m - �[37mCONFIG_NET_NS�[m: �[32menabled�[m - �[37mCONFIG_PID_NS�[m: �[32menabled�[m - �[37mCONFIG_IPC_NS�[m: �[32menabled�[m - �[37mCONFIG_UTS_NS�[m: �[32menabled�[m - �[37mCONFIG_CGROUPS�[m: �[32menabled�[m - �[37mCONFIG_CGROUP_CPUACCT�[m: �[32menabled�[m - �[37mCONFIG_CGROUP_DEVICE�[m: �[32menabled�[m - �[37mCONFIG_CGROUP_FREEZER�[m: �[32menabled�[m - �[37mCONFIG_CGROUP_SCHED�[m: �[32menabled�[m - �[37mCONFIG_CPUSETS�[m: �[32menabled�[m - �[37mCONFIG_MEMCG�[m: �[32menabled�[m - �[37mCONFIG_KEYS�[m: �[32menabled�[m - �[37mCONFIG_VETH�[m: �[32menabled�[m - �[37mCONFIG_BRIDGE�[m: �[32menabled�[m - �[37mCONFIG_BRIDGE_NETFILTER�[m: �[32menabled�[m - �[37mCONFIG_IP_NF_FILTER�[m: �[32menabled�[m - �[37mCONFIG_IP_NF_TARGET_MASQUERADE�[m: �[32menabled�[m - �[37mCONFIG_NETFILTER_XT_MATCH_ADDRTYPE�[m: �[32menabled�[m - �[37mCONFIG_NETFILTER_XT_MATCH_CONNTRACK�[m: �[32menabled�[m - �[37mCONFIG_NETFILTER_XT_MATCH_IPVS�[m: �[32menabled�[m - �[37mCONFIG_NETFILTER_XT_MARK�[m: �[32menabled�[m - �[37mCONFIG_IP_NF_NAT�[m: �[32menabled�[m - �[37mCONFIG_NF_NAT�[m: �[32menabled�[m - �[37mCONFIG_POSIX_MQUEUE�[m: �[32menabled�[m Optional Features: - �[37mCONFIG_USER_NS�[m: �[32menabled�[m - �[37mCONFIG_SECCOMP�[m: �[32menabled�[m - �[37mCONFIG_CGROUP_PIDS�[m: �[32menabled�[m - �[37mCONFIG_MEMCG_SWAP�[m: �[32menabled�[m �[1;30m(cgroup swap accounting is currently enabled)�[m - �[37mCONFIG_BLK_CGROUP�[m: �[32menabled�[m - �[37mCONFIG_BLK_DEV_THROTTLING�[m: �[32menabled�[m - �[37mCONFIG_CGROUP_PERF�[m: �[32menabled�[m - �[37mCONFIG_CGROUP_HUGETLB�[m: �[32menabled�[m - �[37mCONFIG_NET_CLS_CGROUP�[m: �[32menabled�[m - �[37mCONFIG_CGROUP_NET_PRIO�[m: �[32menabled�[m - �[37mCONFIG_CFS_BANDWIDTH�[m: �[32menabled�[m - �[37mCONFIG_FAIR_GROUP_SCHED�[m: �[32menabled�[m - �[37mCONFIG_RT_GROUP_SCHED�[m: �[32menabled�[m - �[37mCONFIG_IP_NF_TARGET_REDIRECT�[m: �[32menabled�[m - �[37mCONFIG_IP_VS�[m: �[32menabled�[m - �[37mCONFIG_IP_VS_NFCT�[m: �[32menabled�[m - �[37mCONFIG_IP_VS_PROTO_TCP�[m: �[32menabled�[m - �[37mCONFIG_IP_VS_PROTO_UDP�[m: �[32menabled�[m - �[37mCONFIG_IP_VS_RR�[m: �[32menabled�[m - �[37mCONFIG_EXT4_FS�[m: �[32menabled�[m - �[37mCONFIG_EXT4_FS_POSIX_ACL�[m: �[32menabled�[m - �[37mCONFIG_EXT4_FS_SECURITY�[m: �[32menabled�[m - Network Drivers: - "�[34moverlay�[m": - �[37mCONFIG_VXLAN�[m: �[32menabled�[m - �[37mCONFIG_BRIDGE_VLAN_FILTERING�[m: �[32menabled�[m Optional (for encrypted networks): - �[37mCONFIG_CRYPTO�[m: �[32menabled�[m - �[37mCONFIG_CRYPTO_AEAD�[m: �[32menabled�[m - �[37mCONFIG_CRYPTO_GCM�[m: �[32menabled�[m - �[37mCONFIG_CRYPTO_SEQIV�[m: �[32menabled�[m - �[37mCONFIG_CRYPTO_GHASH�[m: �[32menabled�[m - �[37mCONFIG_XFRM�[m: �[32menabled�[m - �[37mCONFIG_XFRM_USER�[m: �[32menabled�[m - �[37mCONFIG_XFRM_ALGO�[m: �[32menabled�[m - �[37mCONFIG_INET_ESP�[m: �[32menabled�[m - "�[34mipvlan�[m": - �[37mCONFIG_IPVLAN�[m: �[32menabled�[m - "�[34mmacvlan�[m": - �[37mCONFIG_MACVLAN�[m: �[32menabled�[m - �[37mCONFIG_DUMMY�[m: �[32menabled�[m - "�[34mftp,tftp client in container�[m": - �[37mCONFIG_NF_NAT_FTP�[m: �[32menabled�[m - �[37mCONFIG_NF_CONNTRACK_FTP�[m: �[32menabled�[m - �[37mCONFIG_NF_NAT_TFTP�[m: �[32menabled�[m - �[37mCONFIG_NF_CONNTRACK_TFTP�[m: �[32menabled�[m - Storage Drivers: - "�[34maufs�[m": - �[1mCONFIG_AUFS_FS�[m: �[1;31mmissing�[m - "�[34mbtrfs�[m": - �[1mCONFIG_BTRFS_FS�[m: �[1;31mmissing�[m - �[1mCONFIG_BTRFS_FS_POSIX_ACL�[m: �[1;31mmissing�[m - "�[34mdevicemapper�[m": - �[37mCONFIG_BLK_DEV_DM�[m: �[32menabled�[m - �[37mCONFIG_DM_THIN_PROVISIONING�[m: �[32menabled�[m - "�[34moverlay�[m": - �[37mCONFIG_OVERLAY_FS�[m: �[32menabled�[m - "�[34mzfs�[m": - �[1m/dev/zfs�[m: �[1;31mmissing�[m - �[1mzfs command�[m: �[1;31mmissing�[m - �[1mzpool command�[m: �[1;31mmissing�[m Limits: �[37m- /proc/sys/kernel/keys/root_maxkeys�[m: �[32m1000000�[m
#vaapi driver sudo emerge -av libva-intel-media-driver gentoo