Gentoo Linux on modern hardware

Gentoo Linux installed on a modern Tuxedo laptop, with Wayland and Niri offers a high-performance, customizable development environment. Gentoo, a source-based distribution, allows fine-tuned control over system components, optimized for the Tuxedo hardware’s robust specs, such as high-end CPUs and GPUs. Wayland provides a modern, secure, and smooth display server protocol, enhancing graphical performance. Niri, a minimalist Wayland compositor, delivers a lightweight, tiling window manager experience, ideal for development, prioritizing efficiency and workspace organization. GitHub: tuxedocomputers.

Gentoo

Neofetch

 1OS: Gentoo Linux x86_64 
 2Host: TUXEDO InfinityBook Pro AMD Gen10 Standard 
 3Kernel: 6.17.0-gentoo-gentoo-dist 
 4Uptime: 2 hours, 33 mins 
 5Packages: 1042 (emerge) 
 6Shell: bash 5.3.3 
 7Resolution: 2560x1440 
 8DE: niri 
 9Theme: Adwaita [GTK2/3] 
10Icons: Adwaita [GTK2/3] 
11Terminal: kitty 
12CPU: AMD Ryzen AI 9 HX 370 w/ Radeon 890M (24) @ 5.157GHz 
13GPU: AMD ATI Radeon 880M / 890M 
14Memory: 3081MiB / 127904Mi```

Gentoo kernel version 6.17.0

In file /etc/portage/package.accept_keywords/kernel put this:

1sys-kernel/gentoo-kernel ~amd64
2sys-kernel/gentoo-sources ~amd64

and emerge it:

1emerge -qa sys-kernel/gentoo-kernel sys-kernel/gentoo-sources

select it:

1# eselect kernel list
2Available kernel symlink targets:
3  [1]   linux-6.16.9-gentoo
4  [2]   linux-6.16.9-gentoo-dist
5  [3]   linux-6.17.0-gentoo *
6
7# eselect kernel set 3

(-dist is the dist-kernel that may also be installed)

configure it (the source of the copy command will become available when 6.17.0 dist-kernel is installed):

1# cd /usr/src/linux
2# cp -i /etc/portage/savedconfig/sys-kernel/gentoo-kernel-6.17.0 ./.config
3# make menuconfig

The /etc/portage/savedconfig/sys-kernel/gentoo-kernel-6.17.0 file was generated by an earlier dist-kernel install and is nice starting point for a custom configuration (I changed nothing -- only saved the new configuration).

build it:

1# cd /usr/src/linux
2# make -j$(nproc) clean
3# make -j$(nproc)
4# make modules_install
5# make install

NOW REBOOT INTO THE NEW KERNEL

yt6801 wired network driver

This required changes to a Motorcomm version 1.0.30 download, so that it now works under Gentoo (and a recent kernel, i.e. 6.17.0). The result is on Codeberg: photonsphere/yt6801-gentoo and can be cloned, compiled and installed.

Clone Gentoo specific yt6801 driver

clone and compile it:

1$ git clone https://codeberg.org/photonsphere/yt6801-gentoo
2$ cd yt6801-gentoo
3$ make clean && make modules

install it:

1$ sudo -s
2# make install

verify it:

1# modprobe yt6801
2# lsmod | grep yt6801
3# ip a
4# ping -c 3 photonsphere.org
5# lspci -k | grep -A 3 'Ethernet controller'
664:00.0 Ethernet controller: Motorcomm Microelectronics. YT6801 Gigabit Ethernet Controller (rev 01)
7DeviceName: Realtek Ethernet
8Subsystem: AIstone Global Limited Device 7011
9Kernel driver in use: yt6801 

Last line is significant!

DISCLAIMER

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.