Nachdem ich die letzten 6 Jahre lang Artixlinux (ein Fork von Archlinux ohne SystemD) benutzt habe wollte ich etwas neues ausprobieren und weiter lernen. Ich hatte zwischendurch einige male mit Gentoo geliebäugelt, jedoch nie warm geworden. Da ich beruflich immer mehr mit RHEL-Derivaten in Berührung komme wollte ich nun vollständig das Redhat-Ökosystem ausprobieren. Nachdem ich von der Redhat Developer Lizenz erfahren habe, habe ich mich also an einem Wochenende nach einem ordendlichen letzten Backup kurzerhand dazu entschlossen meinen Laptop mit RHEL10 neu zu installieren, da ich diesen besonders in der Uni die längste Zeit am Tag verwende.

Obwohl ich erst vor nicht so langer Zeit zu Wayland mit Hyprland gewechselt bin, wollte ich meine Hyprland-Konfiguration allem drum-und-dran mitnehmen Mir war von Begin an klar, dass dieser Bleeding-Edge-Desktop ein starker Widerspruch zu den konservativen Packeten von RHEL. Ich habe das als Challenge genommen.

Der Anaconda-Installer ist immer noch einer der einfachsten und simpelsten Installer die ich kenne, auch wenn ich in der Vergangenheit viel Zeit in dessen manueller Partitionierung verbracht habe. Dieses mal aber gar kein Problem. Der einzige Unterschied zu einer Almalinux-Installation war die Eingabe meines RedHat-Accounts. Da ich ein großer Anhänger von Terminal-Applikationen und tiling Window-Manager bin, war mir klar, dass ich einiges selber bauen werden muss. Um mit einer möglichst minimalen Basis anzufangen habe ich deshalb das Minimal-Server Installationprofil gewählt.

Tag 1

Tag 1 bestand dann hauptsächlich daraus sich mit dnf und rpmbuild vertraut zu machen und das erste Hello-World Packet zu bauen. Der gesammte Prozess ist in der RedHat Wissensbasis wirklich besser dokumentiert als irgendwelche (oft KI-generierten) Blog-Artikel. Ebenfalls habe ich direkt angefangen ein eigenes RPM-Repository einzurichten um mir das Packet-Management einfacher zu machen.

Beispiel-Paket Spezifikation

Name: hello_world
Version: 1.0
Release: 1%{?dist}
Summary: A simple hello world program

License: GPLv3+
URL: http://dj-bauer.de/rhel10-als-daily-driver.html
Source0: %{name}-%{version}.tar.gz

BuildRequires: gcc

%Description
A simple Hello World programm written in C.

%prep
%setup -q

%build
gcc -o hello hello.c

%install
rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT/%{_bindir}
install -m 0755 hello $RPM_BUILD_ROOT/%{_bindir}

%clean
rm -rf $RPM_BUILD_ROOT

%files
%{_bindir}/hello

%changelog
*  Mon May 26 2025 DJ
- First Release

Tag 2

An Tag 2 habe ich einiges zu rpmbuild gelernt und angefangen mich an den Abhängigkeiten von Hyprland entlangzuhangeln bis ich irgendwann am Ende des Tages Firefox starten konnte. Bis dahin habe ich entweder zuhause per ssh von einem Desktop oder in der Bahn mit tmux im TTY auf dem Laptop packetiert. Das hat sich auch immer noch nicht geändert, weil ich mir als Ziel gesetzt habe als nächstes den Terminal-Emulator foot zu packetieren.

Tag 3

Dies ist mir folglich an Tag 3 gelungen und so konnte ich dann quasi in der Uni produktiv arbeiten. Mit einem Terminal und webbrowser konnte ich erstaunlich viel machen. Die nächsten Ziele waren RSS-Reader (irgendwie muss ich mich ja jetzt selbstständig über die Programm-updates informieren) und neomutt, mein Mailclient.

Tag 4

Heute ist Tag 4 und ich habe vorrangig die desktop-Konfiguration mittels Ansible verbessert, und Paket-Abhängigkeiten repariert. In meinen Paketen sind höchstwarscheinlich immer noch einige Fehler drinne, welche ich mit der Zeit beheben werde. Falls irgendjemand das Repo nutzen sollte oder ausprobiert, immer gerne Feedback. Die nächsten Schritte werden die Vervollständigung von Mail mit offlineimap und notmuch, Matrix mit iamb, auf das epel warten, dass Gnucash von fedoras Seite aus paketiert wird und mehr.

Fazit

Grundsätzlich ist aber meine minimale Installation vollständig Nutzbar und sollte dem Universitäts-Alltag entsprechen. Falls es Menschen geben sollte, die sich die Pakete anschauen möchten, so findet sich hier das Repository der Pakete und die .spec Definionen liegen auf Codeberg Es wird aber sicherlich noch um einiges weitergehen und ich bin gespannt welche über welche Hürden ich stolpern werde.