USER STORY

Holger Kuehn i ZimaOS: historia wspólnego budowania, dzielenia się i rozwoju

A community developer building practical layers around ZimaOS — from desktop access and scheduling to virtualization, networking, security and AI-powered system management.

Notatka od Zima

Dziękujemy, Holgerze, za tworzenie publicznie i nieustanne odkrywanie, czym może stać się ZimaOS z perspektywy dewelopera społecznościowego. Twoje repozytoria robią więcej niż tylko dodają odosobnione funkcje: razem pokazują, jak jedna osoba może wciąż znajdować nowe sposoby, by uczynić ten sam ekosystem bardziej użytecznym, dostępnym i funkcjonalnym.

                                                                                                                                 — Zima

Poznaj Holgera

Holger jest informatykiem z 40-letnim doświadczeniem w branży IT. Od asemblera i Fortranu po C, C++, Go i Javę — przez lata pełnił wiele ról: dewelopera aplikacji, inżyniera systemowego, konsultanta i starszego architekta rozwiązań. Pracował dla klientów takich jak DHL, Deutsche Post, Lufthansa, Volkswagen i Deutsche Bundesbank, a także posiada tytuły VMware vExpert, MCP i Oracle DBA.

Przez wiele lat prowadził również własną firmę, specjalizując się w wirtualizacji serwerów i aplikacji oraz realizując kontrakty za pośrednictwem VMware. Od 2024 roku jest oficjalnie na emeryturze — nadal jednak zapewnia wsparcie IT dwóm wieloletnim klientom.

Jego homelab to środowisko rozmieszczone w wielu lokalizacjach, oparte na sieci UniFi, wirtualizacji Proxmox oraz systemie ZimaOS uruchomionym na urządzeniach ZimaCube i ZimaBoard do obsługi NAS i zadań Dockerowych. Całość jest bezpiecznie udostępniana przez Pangolin, Gerbil i Traefik na VPS-ie firmy Hetzner, zabezpieczona za pomocą CrowdSec i połączona za pomocą sieci mesh WireGuard.

Poza tym Holger zajmuje się tworzeniem rozwiązań AI i lata samolotami jednosilnikowymi. Jest także aktywnym współtwórcą ZimaOS — na Discordzie znanym jako Lintuxer, a na GitHubie jako chicohaager — budującym aplikacje, narzędzia i integracje MCP dla ekosystemu IceWhale.

Rozszerzanie maszyn wirtualnych ZimaOS

Za pomocą ZVM-Extra Holger dodaje kolejną warstwę do wirtualizacji ZimaOS: automatyczne uruchamianie maszyn wirtualnych, migawki, przekazywanie urządzeń USB i PCIe, tworzenie kopii zapasowych i eksport, bieżące metryki, zmiany sieci, zdalną pamięć masową, mechanizmy kontroli bezpieczeństwa VNC oraz obsługę TPM.

Interesująca nie jest sama długość listy funkcji. Ważniejsze jest to, że projekt odpowiada na rzeczywiste wyzwania operacyjne: co zrobić, gdy maszyna wirtualna musi przetrwać ponowne uruchomienie, gdy sprzęt musi pozostać podłączony albo gdy potrzebna jest większa kontrola nad uruchamianiem i zasobami hosta.

Panel automatycznego uruchamiania VM Extras pokazujący maszyny wirtualne Linux Mint, Arch Linux i Fedora w systemie ZimaOS
VM Extras dodaje praktyczną kontrolę cyklu życia maszyn wirtualnych ZimaOS, w tym uporządkowane automatyczne uruchamianie, opóźnienia, działanie watchdoga i bezpośrednie sterowanie zasilaniem.
Interfejs przekazywania urządzeń PCIe w VM Extras z listą urządzeń PCI hosta dostępnych do podłączenia do maszyn wirtualnych ZimaOS
Przekazywanie urządzeń PCIe zagłębia projekt w wirtualizację uwzględniającą sprzęt, udostępniając urządzenia hosta, które można trwale podłączyć do maszyny wirtualnej.

Dodawanie zapory sieciowej hosta do ZimaOS

Bezpieczeństwo staje się jeszcze bardziej konkretne w projekcie ZFW, zaporze sieciowej hosta Holgera dla ZimaOS. Projekt dodaje interfejs internetowy, informacje o ekspozycji usług, zarządzanie regułami, filtrowanie portów Dockera, wyniki audytów oraz zabezpieczenia ułatwiające zrozumienie i zdalną obsługę zmian w zaporze hosta.

Strona reguł zapory ZFW pokazująca hosta ZimaOS oraz reguły SSH, Samby, mDNS i aplikacji Docker
ZFW zamienia ekspozycję hosta i Dockera w widoczny zestaw reguł, umożliwiając sprawdzenie, które usługi są dozwolone, przed zmianą stanu zapory.

Eksperymenty z zarządzaniem ZimaOS wspomaganym przez AI

Serwer MCP ZimaOS Holgera rozwija ekosystem w innym kierunku. Bada on Model Context Protocol jako sposób na umożliwienie kompatybilnym klientom AI interakcji z operacjami systemowymi, takimi jak polecenia powłoki, pliki, Docker, sieć, aplikacje ZimaOS, kopie zapasowe i zaplanowane zadania.

Projekt wzmacnia ten sam wzorzec widoczny w innych pracach Holgera: interfejs może się zmieniać, ale cel pozostaje praktyczny — zapewnienie dostępu do systemu. Czasem interfejsem jest aplikacja komputerowa, czasem panel internetowy, czasem natywne rozszerzenie systemu, a czasem protokół pozwalający innemu narzędziu stać się interfejsem.

Przybliżanie ZimaOS do pulpitu

Kolejna ważna część pracy Holgera koncentruje się na przybliżeniu ZimaOS do pulpitu. Jego projekt aplikacji komputerowej ZimaOS Client integruje ZimaOS z przepływem pracy na pulpitach Linux i macOS, oferując lokalne wykrywanie, zdalną łączność, dostęp do udziałów SMB/CIFS, dostęp do aplikacji Docker, zaplanowane kopie zapasowe, ostatnie połączenia, diagnostykę i ustawienia motywu.

Projekt dobrze pokazuje podejście Holgera: nie zastępuje ZimaOS. Działa obok niego i ułatwia dostęp do używanych już funkcji z innego kontekstu.

Ekran zdalnego połączenia ZimaOS Client z opcjami skanowania sieci lokalnej i połączenia za pomocą identyfikatora zdalnego
Ekran połączenia ZimaOS Client koncentruje się na dostępie do systemu ZimaOS lokalnie lub zdalnie z poziomu pulpitu.
Ekran aplikacji Docker w ZimaOS Client pokazujący między innymi Jellyfin, n8n, Immich i Files
Oprócz łączności klient staje się także punktem dostępu do aplikacji Docker uruchomionych w ZimaOS, pokazując, jak projekt rozwinął się od samego dostępu do codziennego użytkowania.
Poznaj ZimaOS Client na GitHubie

Głębsze wejście w pamięć masową i sieci

Praca Holgera obejmuje także obszary znacznie bliższe samemu systemowi operacyjnemu. Projekty te dotyczą natywnych rozszerzeń, sieci, pamięci masowej i trwałej konfiguracji hosta, zamiast jedynie dodawać aplikacje na bazie ZimaOS.

Budowanie pamięci masowej z użyciem mergerfs i SnapRAID

Holger badał pamięć masową na poziomie rozszerzeń systemowych za pomocą rozszerzenia systemowego ZimaOS mergerfs + SnapRAID. Jego architektura oddziela pliki binarne rozszerzenia tylko do odczytu od trwałych jednostek systemd i konfiguracji, jednocześnie jasno rozdzielając role puli pamięci masowej i parzystości.

Schemat architektury rozszerzenia systemowego ZimaOS mergerfs i SnapRAID autorstwa Holgera Kuehna
Schemat architektury pokazuje rozdzielenie między rozszerzeniem sysext tylko do odczytu, trwałą konfiguracją systemd, danymi aplikacji ZimaOS oraz dyskami danych i parzystości używanymi przez mergerfs i SnapRAID.

Natywny Tailscale z systemd-sysext

Rozszerzenie systemowe ZimaOS Tailscale pakuje Tailscale jako natywne rozszerzenie systemd-sysext, zamiast traktować zdalną sieć jako kolejne zadanie Dockera. To inny rodzaj wkładu — bliższy hostowi, a jednocześnie mający ułatwiać obsługę systemu.

Przekształcanie rutynowej administracji w coś widocznego

Kolejna część pracy Holgera koncentruje się na zadaniach, które zwykle znikają w terminalach i plikach konfiguracyjnych. Jego harmonogram zadań Cron dla ZimaOS przebudowuje planowanie zadań wokół interfejsu internetowego, trwałych zadań, szablonów, dzienników wykonania, zależności, priorytetów i powiadomień.

Ma to znaczenie, ponieważ powtarzalne zadania są częścią prowadzenia domowego serwera: kopie zapasowe, czyszczenie, kontrole stanu, konserwacja Dockera, sprawdzanie certyfikatów i inne drobne rutyny. Projekt zamienia tę niewidoczną warstwę w coś, co użytkownik może przeglądać i czym może zarządzać.

Panel harmonogramu Cron dla ZimaOS pokazujący zarządzanie zaplanowanymi zadaniami
Panel Cron uwidacznia zaplanowane zadania ZimaOS, zapewniając miejsce do przeglądania stanu, wykonywania i konserwacji cyklicznych zadań.

Ta sama idea „zapewnienia użytkownikowi bezpośredniego interfejsu” pojawia się w dwupanelowym kliencie FTP, FTPS i SFTP dla ZimaOS. To mniejszy projekt, ale pasuje do tego samego wzorca: bierze znane zadanie systemowe i ułatwia korzystanie z niego wewnątrz ekosystemu.

Mniejsze repozytoria również mają znaczenie

Nie każde repozytorium związane z Zima na profilu Holgera jest dużą, samodzielną aplikacją. Jego publiczne projekty obejmują także fork Mod-Store firmy IceWhaleTech, który znajduje się bliżej ekosystemu rozszerzeń i modułów.

Jest także CasaDrop oraz xpkg. Te mniejsze repozytoria są istotną częścią całego dorobku, ponieważ pokazują eksperymentowanie na różnych poziomach, nawet gdy projekt nie jest przedstawiany jako ukończone, samodzielne narzędzie.

Wraz z ZVM-Extra, ZFW, serwerem MCP, aplikacją komputerową, rozszerzeniami pamięci masowej i sieci, Cronem oraz narzędziami do transferu plików pomagają one wyjaśnić szerszy obraz: Holger pracuje na różnych warstwach tego samego ekosystemu, zamiast wciąż tworzyć ten sam rodzaj projektu.

Ta historia wciąż się tworzy

Historia Holgera Kuehna i Zima wciąż się tworzy. W miarę jak jego projekty będą się zmieniać, dojrzewać lub prowadzić do nowych eksperymentów, ta strona może rozwijać się razem z nimi. Jeśli chcesz zobaczyć, co Holger zbuduje dalej, obserwuj jego bieżące prace nad ZimaOS na GitHubie.