Pkgsrc 2026Q2
91. kwartalne wydanie pkgsrc. Nowa kategoria wayland, sway i xwayland w drzewie, Rust 1.96 zgodny z upstreamem i bob – narzędzie, które ma wreszcie zastąpić pbulk. 187 nowych pakietów, 3072 aktualizacje.
Deweloperzy pkgsrc z dumą ogłaszają pkgsrc-2026Q2, czyli 91. kwartalne wydanie naszego ulubionego, wieloplatformowego systemu pakietów. W drzewie wciąż siedzi ponad 29 000 pakietów.
Kwartał temu pisałem, że gdyby pkgsrc był człowiekiem, właśnie kończyłby studia. To wydanie sugeruje, że dostał pierwszą pracę i od razu zaczął porządkować cudzy bałagan. Bo najważniejsza rzecz w 2026Q2 to nie żaden pakiet użytkowy, tylko narzędzie do budowania pakietów. Ale po kolei.
Statystyki zmian
Od ostatniego wydania (2026Q1):
- Dodano 187 nowych pakietów
- Zaktualizowano 3072 pakiety (z czego 2004 to unikalne pakiety)
- Usunięto 45 pakietów
Tym razem ogłoszenie podaje też rozbicie aktualizacji po ekosystemach i to jest ciekawsze niż suma zbiorcza: 749 Pythona, 408 TeX-a, 222 Ruby'ego, 58 Perla, 32 Go, 10 OCamla i… 3 PHP.
Trzy. Na trzy tysiące aktualizacji trzy dotyczą PHP. Po kwartale, w którym żegnaliśmy PHP 8.1 i witaliśmy 8.5, to jest zupełnie zrozumiałe - linie się ustabilizowały i nikt nic nie rusza. Ale zestawienie „749 vs 3" ładnie pokazuje, gdzie dziś jest ciężar utrzymania drzewa. Jeśli ktoś się zastanawia, czemu pkgsrc potrzebuje szybszego buildera, to ma odpowiedź w tej jednej linijce statystyk.
45 usunięć po 154 z Q1 to powrót do normy. Wielkie sprzątanie było kwartał temu.
Bob, czyli największa nowość tego wydania
bob to nowe narzędzie do budowania pakietów pkgsrc równolegle, w izolowanych piaskownicach. Autorem jest Jonathan Perkin - ten sam, który od lat wypuszcza builda pkgsrc dla SmartOS-a i który publicznie opisywał, jak dociskał pełny bulk build poniżej doby, żeby dało się go uruchamiać codziennie. To nie jest weekendowy projekt kogoś, kto pierwszy raz zobaczył bmake.
Bob ma zastąpić naraz pbulk, pkg_chk i pkg_rolling-replace. Kto kiedykolwiek konfigurował pbulk, ten wie, dlaczego to jest dobra wiadomość. Pbulk działa i działa dobrze, ale konfiguracja tej maszynerii - master, klienci, chroot, sandbox, lista pakietów, raporty - to jest coś, co robi się raz, zapisuje sobie w notatkach i modli się, żeby nie trzeba było tego ruszać przez najbliższe dwa lata. A pkg_rolling-replace to z kolei narzędzie, które świetnie sprawdza się do momentu, w którym po pięciu godzinach przebudowy wywala się na jednym
pakiecie i zostawia system w stanie pośrednim.
Co bob wnosi ponad to, co było:
- historia buildów - czyli wreszcie widać, co się zepsuło i kiedy, a nie tylko że jest źle
- dynamiczne planowanie
MAKE_JOBSiWRKOBJDIR- zamiast sztywnego „daj -j8 wszystkiemu" i dziwienia się, czemu przy linkowaniu Chromium maszyna zaczyna swapować - podgląd logu na żywo
- piaskownice deweloperskie do pracy nad samym pkgsrc, bez brudzenia systemu
Do tego publikowanie gotowych paczek na zdalny serwer, czyli cała droga od źródeł do repozytorium w jednym narzędziu. Przykładowa konfiguracja z repozytorium bob to dokładnie ta, którą jadą codzienne buildy SmartOS-a, więc nie jest to demo napisane pod dokumentację.
Dla mnie osobiście to jest kandydat numer jeden do przetestowania w tym kwartale. Mam własne repozytorium skompilowanych paczek i każde narzędzie, które skraca cykl „zmiana w drzewie → gotowa paczka na serwerze", jest tu na wagę złota. Napiszę, jak wyszło.
Wayland wchodzi do pkgsrc na poważnie
Druga duża zmiana: w drzewie pojawiła się osobna kategoria wayland. Nie pojedynczy pakiet wciśnięty gdzieś do x11, tylko własna kategoria, co jest sygnałem, że ktoś to planuje rozwijać.
Na start dostajemy:
- sway – kafelkowy kompozytor Waylanda, dla wielu ludzi jedyny powód, żeby w ogóle o Waylandzie rozmawiać. i3 dla tych, którzy przeszli na drugą stronę
- xwayland – warstwa zgodności pozwalająca uruchamiać aplikacje X11 pod Waylandem. Bez tego cała reszta jest ćwiczeniem akademickim, bo połowa tego, czego używamy na co dzień, to wciąż X11
- lxqt-wayland-session – sesja LXQt pod Waylandem
I tu jest haczyk, na który trzeba uważać: lxqt-wayland-session na NetBSD wymaga NetBSD 11 lub nowszego. To nie jest przypadek. Wayland potrzebuje rzeczy, których dziesiątka po prostu nie ma. Jeśli więc ktoś czekał na konkretny powód, żeby przeskoczyć na jedenastkę – proszę bardzo, oto on. (O samym NetBSD 11 napiszę osobno, bo zrobiło się z tego długie.)
Nie ukrywam, że jestem człowiekiem X11 i mój .xsession pamięta czasy, o których wolałbym nie mówić. Ale kategoria wayland w pkgsrc to dobra wiadomość niezależnie od tego, czego kto używa. Alternatywa dla „na BSD Waylanda nie ma i nie będzie" jest po prostu zdrowsza dla projektu.
Godne uwagi nowości
- uutils-coreutils - reimplementacja GNU coreutils w Ruście. Wiem, wiem. Ale w kontekście BSD to jest ciekawsze niż w kontekście Linuksa, bo licencja jest MIT zamiast GPL. Do tego ludzie budujący obrazy kontenerowe i systemy embedded patrzą na to bardzo uważnie.
- depgraph - wypisuje graf zależności zainstalowanego pakietu pkgsrc, z myślą o raportowaniu SBOM (Software Bill of Materials). To jest dokładnie ten rodzaj pakietu, którego nikt nie chce potrzebować, dopóki nie przyjdzie audyt albo kolejne CVE w bibliotece, o której istnieniu nie wiedzieliśmy. Po log4shellu i xz to już nie jest paranoja, tylko higiena.
- zellij - multiplekser terminala z obsługą wtyczek. Konkurencja dla tmuksa i screena. Ma sensowne domyślne skróty i pasek z podpowiedziami na dole, więc nie trzeba znać trzech kombinacji na pamięć, żeby cokolwiek zrobić. Dla kogoś, kto przez dwadzieścia lat wbił sobie
Ctrl-bw rdzeń kręgowy, to argument neutralny. Dla nowych - decydujący. - brush-shell - powłoka zgodna z bashem, napisana w Ruście. Zgodna z bashem, nie „inspirowana", co jest tu istotną różnicą.
- gurk - klient Signala w terminalu. Nisza w niszy, ale przyjemna.
- nchat - wieloprotokołowy klient czatu w terminalu (na razie działa tylko Telegram).
- avfs - system plików pozwalający wchodzić do archiwów i plików sieciowych jak do zwykłych katalogów. Pomysł stary jak Midnight Commander, ale wciąż piekielnie wygodny.
- gitlogue - odtwarza historię commitów w terminalu w formie „filmowej". Zupełnie zbędne i całkiem zabawne. Idealne na prezentację, na której trzeba pokazać, że projekt żyje.
- setrixtui - tetris, ale z mechaniką sypiącego się piasku. Nie pytajcie, po prostu spróbujcie.
- oracle-jdk25 - dla tych, którzy muszą.
Znaczące aktualizacje pakietów
- Rust 1.96 - i tu jest zdanie, które chciałem przeczytać od dawna: pkgsrc jest na bieżąco z wydaniami upstreamu. Kto pamięta, ile bólu było z Rustem na NetBSD jeszcze rok temu, ten wie, że to nie jest drobiazg. Bootstrapowanie Rusta na platformie, której nikt z zespołu Rusta nie testuje, to jest kategoria problemów sama w sobie - a coraz więcej rzeczy w drzewie (patrz wyżej: uutils, zellij, brush) po prostu nie zbuduje się bez działającego kompilatora.
- LXQt 2.4.0 - ze wstępną obsługą Waylanda. Spójne z resztą tego wydania.
- Qt 6.11.1 - po 6.10.1 z Q4 i pracach nad Plasmą 6 z Q1 widać, że stos Qt na BSD jest utrzymywany naprawdę porządnie.
Osobista refleksja
To jest wydanie infrastrukturalne. Nie ma tu Ruby 4.0 ani Pythona π, nie ma nic, co robi nagłówek. Jest za to nowy builder, nowa kategoria i kompilator Rusta zgodny z upstreamem - czyli trzy rzeczy, które nic nie dają użytkownikowi bezpośrednio, a bez których za rok nie dałoby się dowieźć niczego ciekawego.
Taka jest zresztą historia pkgsrc od dwudziestu dwóch lat. Raz na jakiś czas kwartał wygląda nudno, a potem się okazuje, że to właśnie wtedy położono fundament pod następne pięć.
U mnie plan na najbliższe tygodnie: postawić boba obok istniejącego pipeline'u i zobaczyć, czy faktycznie da się z niego wycisnąć to, co obiecuje. Wayland zostawiam sobie na jesień.
Do zobaczenia w Q3.
Jak zaktualizować?
Jak zawsze, instrukcje dotyczące korzystania z menedżera pakietów binarnych dostępne są na pkgin.net. Sam pkgsrc można pobrać za pomocą CVS, pliku tar lub z jednegoz mirrorów. Szczegółowe instrukcje znajdują się w
dokumentacji NetBSD.
Nazwa gałęzi dla tego wydania to pkgsrc-2026Q2. Przykładowe polecenie aktualizacji przez CVS:
cd /usr && cvs -q -z2 -d anoncvs@anoncvs.NetBSD.org:/cvsroot checkout -r pkgsrc-2026Q2 -P pkgsrc
Więcej informacji o pkgsrc znajdziesz na pkgsrc.org.
Oryginalne ogłoszenie:
netbsd-announce, 23 czerwca 2026.