No description
Find a file
kamil 92b20c410e README: pobieranie skryptów na laptopa prosto z repozytorium
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-09 21:44:47 +02:00
iso Debian Testing KDE dla HP EliteBook 845 G7 2026-10-09 21:41:31 +02:00
.gitignore Debian Testing KDE dla HP EliteBook 845 G7 2026-10-09 21:41:31 +02:00
build-iso.sh Debian Testing KDE dla HP EliteBook 845 G7 2026-10-09 21:41:31 +02:00
Debian Testing Plan.md Debian Testing KDE dla HP EliteBook 845 G7 2026-10-09 21:41:31 +02:00
debian-kde-setup.sh Debian Testing KDE dla HP EliteBook 845 G7 2026-10-09 21:41:31 +02:00
README.md README: pobieranie skryptów na laptopa prosto z repozytorium 2026-10-09 21:44:47 +02:00
system-report.sh Debian Testing KDE dla HP EliteBook 845 G7 2026-10-09 21:41:31 +02:00
test-vm.sh Debian Testing KDE dla HP EliteBook 845 G7 2026-10-09 21:41:31 +02:00

Debian Testing KDE — HP EliteBook 845 G7

Lekki desktop KDE Plasma na Debianie Testing: bez snapów, aplikacje z Flathuba, migawki Btrfs przy każdej aktualizacji, dopasowany do HP EliteBook 845 G7 (Ryzen 4000, iGPU Vega).

Repozytorium: https://git.adamus.cloud/kamil/KDE_Debian_Desktop_Elitebook

Projekt składa się z jednego skryptu konfiguracyjnego (debian-kde-setup.sh) i z narzędzi, które budują z niego własne ISO instalacyjne. Uzasadnienie decyzji i pełna lista zmian: Debian Testing Plan.md.

Stan (2026-10-09): działa. Przetestowane w maszynie wirtualnej (dwa pełne przebiegi z ISO) i zainstalowane na HP EliteBook 845 G7 z ISO przez Ventoy — wyniki niżej, w sekcji Wyniki na EliteBooku.

Spis treści

Co dostajesz

Obszar Rozwiązanie
Pulpit KDE Plasma w wersji minimalnej (kde-plasma-desktop), bez Akonadi, Discover i PackageKit
Aplikacje systemowe Dolphin, Konsole, Kate, Ark, Okular, Gwenview, Spectacle, KCalc, Partition Manager, Synaptic
Aplikacje użytkownika Flathub: Firefox (zapasowa przeglądarka), Warehouse (menedżer Flatpaków)
Spoza Debiana Brave Origin (domyślna przeglądarka, repo APT z kontrolą klucza), Antigravity CLI, Claude Code
Migawki Btrfs + snapper: migawka przed i po każdej operacji apt, przywracanie przez Btrfs Assistant
Wydajność TLP + tlp-pd (EliteBook 845 G7 nie ma CPPC) albo power-profiles-daemon z amd_pstate (gdy CPPC jest); zram; cichy rozruch z logo HP
Usypianie Tylko suspend — hibernacja wyłączona (swap 4 GB jest mniejszy niż RAM)
Multimedia Sprzętowe dekodowanie wideo (VA-API), pełne kodeki z Debiana
Czcionki Noto, emoji, zamienniki Office (Liberation, Carlito, Caladea), oryginały Microsoftu
Bezpieczeństwo Zapora ufw, apt-listbugs, bez automatycznych aktualizacji, powiadomienia o aktualizacjach
Sprzęt HP fwupd (BIOS), czytnik linii papilarnych (jeśli obsługiwany), wykrywanie modemu WWAN

Pliki w projekcie

Plik Do czego
debian-kde-setup.sh Główny skrypt — cała konfiguracja systemu
build-iso.sh Buduje ISO instalacyjne z oficjalnego netinst Debiana
test-vm.sh Testuje ISO w maszynie wirtualnej QEMU z UEFI
system-report.sh Raport diagnostyczny z działającego systemu (w ISO instalowany jako debian-kde-report)
iso/preseed.cfg Odpowiedzi dla instalatora Debiana
iso/late.sh Uruchamiany na końcu instalacji: subwoluminy Btrfs, usługa pierwszego startu
(preseed.cfg i iso/ trafiają do ISO oraz do doklejonego initrd instalatora)
iso/debian-kde-setup-firstboot(.service) Uruchamia skrypt przy pierwszym starcie systemu
iso/test/ Dodatki tylko do ISO testowego (bez pytań, dysk /dev/vda)
Debian Testing Plan.md Plan: co, dlaczego i jakie decyzje podjęto
build/ Tworzony przez build-iso.sh i test-vm.sh: netinst, ISO, dysk maszyny testowej (~5 GB). Nie jest częścią projektu — można go usunąć w każdej chwili

Instalacja z własnego ISO (zalecana)

1. Zbuduj ISO tuż przed instalacją

ISO opiera się na tygodniowym obrazie Debiana Testing, który po kilku tygodniach przestaje działać (Testing zmienia jądro). Dlatego buduj je zawsze na świeżo:

./build-iso.sh --refresh

Skrypt pobiera najnowszy netinst, sprawdza podpis Debiana i sumę kontrolną, dokłada pliki projektu i zapisuje build/debian-testing-kde-elitebook.iso. Bez --refresh używa pobranego wcześniej obrazu; jeśli Debian wydał nowszy, sam to wykryje i poprosi o --refresh.

Wymagania: curl, gpg oraz xorriso — albo Docker (wtedy xorriso działa w kontenerze).

2. (Zalecane) Sprawdź ISO w maszynie wirtualnej

./build-iso.sh --test
./test-vm.sh install
./test-vm.sh boot

ISO testowe instaluje się bez żadnych pytań (użytkownik kamil, hasło test, dysk /dev/vda). install kończy się wyłączeniem maszyny; boot uruchamia zainstalowany system — przy pierwszym starcie instaluje się KDE. Wymagania: qemu, edk2-ovmf.

3. Zapisz na pendrive

Uwaga: kasuje całą zawartość pendrive'a. Sprawdź nazwę urządzenia przez lsblk.

sudo dd if=build/debian-testing-kde-elitebook.iso of=/dev/sdX bs=4M status=progress conv=fsync

3a. Albo skopiuj na pendrive z Ventoy

ISO można też po prostu skopiować na pendrive z Ventoy. Odpowiedzi dla instalatora i skrypty są wbudowane w initrd instalatora, więc nie zależą od tego, jak Ventoy podłącza obraz.

  • Secure Boot: przy pierwszym starcie Ventoy trzeba raz zarejestrować jego klucz (ekran MOK, „Enroll key”) albo chwilowo wyłączyć Secure Boot w BIOS-ie.
  • Jeśli instalator mimo to pyta o plik z ustawieniami: wybierz ISO w Ventoy w trybie GRUB2 (Ctrl+R / „Boot in grub2 mode”), a w ostateczności zapisz ISO przez dd.
  • Sprawdzone na EliteBooku: instalacja z Ventoy w zwykłym trybie działa.
  • Przed wyjęciem pendrive'a kliknij „Wysuń” w Dolphinie — inaczej system może nie dokończyć zapisu.

4. Zainstaluj

  1. W EliteBooku uruchom pendrive (F9 przy starcie → menu rozruchu). Tryb UEFI.
  2. Wybierz pierwszą pozycję: Automatyczna instalacja: Debian Testing KDE (EliteBook).
  3. Instalator zapyta tylko o:
    • sieć Wi-Fi i hasło (jeśli nie ma kabla),
    • imię i nazwisko, nazwę użytkownika i hasło (użytkownik dostaje sudo, konto roota jest wyłączone),
    • dysk do instalacji i zatwierdzenie układu partycji — sprawdź uważnie, cały dysk zostanie wyczyszczony.
  4. Układ dysku: EFI 1 GB, Btrfs na resztę, swap 4 GB. Subwoluminy (@home, @var_log, @var_cache, @flatpak, @snapshots) tworzone są automatycznie na końcu instalacji.

5. Pierwsze uruchomienie

Po restarcie na ekranie (konsola tty8, przełącza się sama) pojawi się „Debian Testing KDE — pierwsze uruchomienie”. Skrypt czeka na internet (do 5 minut), a potem instaluje KDE i całą resztę — 20–60 minut, zależnie od łącza. Nie wyłączaj komputera.

  • W trakcie pojawi się licencja Microsoftu na czcionki — przeczytaj i zaakceptuj ją sam (Tab, Enter).
  • Na końcu komputer sam się zrestartuje do ekranu logowania KDE.
  • Przebieg zapisuje się w /var/log/debian-kde-setup.log.

Instalacja ręczna: netinst + skrypt

Gdy nie chcesz budować ISO:

  1. Zainstaluj Debiana z oficjalnego netinst Testing:
    • system plików Btrfs (instalator utworzy subwolumin @rootfs),
    • w wyborze oprogramowania odznacz wszystko poza standard system utilities,
    • tryb UEFI.
  2. Po pierwszym uruchomieniu zaloguj się na konsoli tekstowej, przejdź na roota i uruchom skrypt:
    su -
    bash /ścieżka/do/debian-kde-setup.sh --dry-run
    bash /ścieżka/do/debian-kde-setup.sh
    
  3. Skrypt przeniesie dane do subwoluminów Btrfs i zatrzyma się z prośbą o restart (kod wyjścia 3). Po restarcie uruchom go jeszcze raz — kontynuuje od miejsca przerwania.

Skrypt debian-kde-setup.sh

Opcje

Opcja Działanie
--dry-run Pokazuje, co zostałoby zrobione, bez zmian w systemie
--only a,b Uruchamia tylko wybrane sekcje
--skip a,b Pomija wybrane sekcje
--force Uruchamia ponownie sekcje oznaczone jako zrobione
--user NAZWA Użytkownik docelowy (domyślnie pierwszy z UID ≥ 1000)
--no-msfonts Bez czcionek Microsoftu (wymagają akceptacji licencji)
--list Lista sekcji

Kody wyjścia: 0 — sukces, 3 — potrzebny restart (po zmianie układu Btrfs), inne — błąd.

Sekcje (w kolejności)

Sekcja Co robi
preflight Sprawdza: root, Debian, amd64, UEFI, Btrfs, internet, sprzęt; doinstalowuje narzędzia skryptu
apt_sources Źródła testing (deb822), blokady pakietów, pełna aktualizacja, sudo dla użytkownika
btrfs_layout Subwoluminy Btrfs, opcje noatime,compress=zstd:1 (restart, jeśli coś przenosi)
snapper Migawki przy apt, limity, Btrfs Assistant, comiesięczny btrfs scrub
kde Minimalna Plasma, aplikacje, czcionki, PipeWire, Synaptic, zapora ufw
power Bez CPPC: TLP + tlp-pd; z CPPC: power-profiles-daemon + amd_pstate. Wyłączenie hibernacji
boot Plymouth (logo HP), ukryte menu GRUB (Esc w ciągu 2 s), parametry jądra
zram Swap w RAM (połowa pamięci, zstd), swap na dysku jako zapas
firmware Firmware AMD, mikrokod, Wi-Fi wg wykrytej karty, VA-API
media ffmpeg i wtyczki GStreamer
flatpak Flathub, portale KDE, Firefox, Warehouse, motyw Breeze dla GTK
third_party Brave Origin (domyślna przeglądarka), Antigravity CLI, Claude Code
testing_safety apt-listbugs, apt-listchanges, powiadomienia o aktualizacjach
hp_extras fwupd, czytnik linii papilarnych, ModemManager tylko przy modemie WWAN
slim Wyłączenie zbędnych usług, Baloo bez indeksowania treści, sprzątanie
network_handover Przekazanie sieci NetworkManagerowi (z przeniesieniem Wi-Fi z instalatora)
summary Podsumowanie: zrobione, pominięte, ostrzeżenia, co zrobić ręcznie

Bezpieczeństwo działania

  • Można uruchamiać wielokrotnie. Zrobione sekcje są zapisywane w /var/lib/debian-kde-setup/ i pomijane; każda sekcja sprawdza też stan systemu przed zmianą.
  • Kopie plików. Każdy zmieniany plik trafia najpierw do /var/backups/debian-kde-setup/<data>/.
  • Bez curl | sh. Instalatory Antigravity i Claude Code są pobierane do pliku (suma SHA-256 w logu) i uruchamiane jako użytkownik, nie root. Klucz Brave jest porównywany z odciskami z brave.com/signing-keys — przy niezgodności skrypt przerywa pracę.

Po instalacji

Sprawdź, czy wszystko działa:

sudo tlp-stat -s -p                             # TLP: tryb i profil (EliteBook bez CPPC)
vainfo                                          # profile H.264/HEVC dla radeonsi
zramctl; swapon --show                          # zram0 z priorytetem 100
sudo snapper list                               # migawki
sudo ufw status                                 # Status: active
powerprofilesctl                                # profile zasilania

Raport z całego systemu do diagnozy (hasła Wi-Fi, numery seryjne i adresy MAC są zamazywane):

debian-kde-report          # w systemie z ISO; albo: bash system-report.sh

Wynik trafia do ~/raport-debian-kde-<data>.txt.

Do zrobienia ręcznie:

  • Odcisk palca: Ustawienia systemowe → Użytkownicy → Odciski palców (jeśli czytnik jest obsługiwany).
  • BIOS HP: fwupdmgr refresh && fwupdmgr get-updates.
  • Profil zasilania: ikona baterii w Plasmie — Wydajność / Zrównoważony / Oszczędzanie (pod spodem TLP).

Skrypty na działającym laptopie

Najnowsze wersje skryptów można pobrać prosto z repozytorium — bez przenoszenia przez pendrive. Działa, dopóki repozytorium jest publiczne (przy prywatnym curl wymaga logowania).

Pojedynczy plik do bieżącego katalogu:

curl -fsSLO https://git.adamus.cloud/kamil/KDE_Debian_Desktop_Elitebook/raw/branch/main/debian-kde-setup.sh
curl -fsSLO https://git.adamus.cloud/kamil/KDE_Debian_Desktop_Elitebook/raw/branch/main/system-report.sh

Cały projekt (wygodne przy częstszych zmianach; potem git pull pobiera nowości):

git clone https://git.adamus.cloud/kamil/KDE_Debian_Desktop_Elitebook.git

Przykłady użycia:

sudo bash debian-kde-setup.sh --only power --force   # ponownie tylko wybrana sekcja
sudo bash debian-kde-setup.sh --dry-run              # podgląd, bez zmian
bash system-report.sh                                # raport → ~/raport-debian-kde-<data>.txt

Zawsze możesz też skopiować pliki na pendrive z Ventoy (partycja z ISO to zwykły dysk exFAT) — przed wyjęciem kliknij „Wysuń”.

Codzienne użytkowanie

Zadanie Jak
Aktualizacja systemu sudo apt update && sudo apt full-upgrade (z ostrzeżeniami apt-listbugs i migawką)
Aktualizacja Flatpaków Warehouse albo flatpak update
Instalacja programu Flatpak: flathub.org lub Warehouse; systemowy: Synaptic lub apt
Powiadomienia Plasma pokazuje liczbę dostępnych aktualizacji APT i Flatpak (sprawdzane raz dziennie)
Przywrócenie systemu Btrfs Assistant → Snapper → wybierz migawkę → Restore, potem restart
Menu GRUB (starsze jądro) Naciśnij Esc w ciągu 2 sekund od startu

Brave, Antigravity CLI i Claude Code aktualizują się same (Brave przez apt, pozostałe w tle). Przywrócenie migawki nie cofa /home, logów ani Flatpaków — to osobne subwoluminy.

Blokady pakietów w APT

Plik /etc/apt/preferences.d/99-debian-kde-setup nadaje priorytet −10 („nigdy nie instaluj”) pakietom, które wróciłyby jako zalecane zależności KDE:

Pakiet Powód
snapd, plasma-discover-backend-snap Tylko Flatpak, bez snapów
plasma-discover W Debianie wymaga PackageKit
firefox-esr Przeglądarki: Brave (APT) i Firefox (Flatpak)
fonts-noto, fonts-noto-cjk* Kilkaset MB czcionek CJK

Plik /etc/apt/preferences.d/50-brave ogranicza repozytorium Brave do pakietów Brave — nie może ono podmienić żadnego pakietu Debiana.

Sprawdzenie: apt-cache policy NAZWA. Odblokowanie: usuń pakiet z linii Package: w pliku.

Wyniki na EliteBooku 845 G7

Instalacja 2026-10-09 z ISO przez Ventoy; pierwszy start bez błędów. Ze sprawdzenia system-report.sh:

Element Wynik
Sprzęt Ryzen 7 PRO 4750U, 30 GB RAM, Radeon (Renoir), Wi-Fi Intel AX200, NVMe Toshiba 512 GB, BIOS 01.24.02
Start systemu ~27 s, Plymouth z logo HP, KDE Plasma na Wayland
Dysk EFI 976 MB, swap 3,8 GB, Btrfs 472 GB (6 subwoluminów); po instalacji zajęte ~6 GB
Pamięć zram 15,3 GB + swap na dysku jako zapas
Procesor brak CPPC w BIOS-ie → acpi-cpufreq → TLP + tlp-pd; 3 profile w Plasmie działają
Wideo Sprzętowe dekodowanie i kodowanie H.264/HEVC, dekodowanie VP9 (VA-API)
APT Blokady działają, 0 zepsutych pakietów; migawka przed i po każdej operacji apt
Firmware fwupd: BIOS i dysk aktualne
Czytnik linii papilarnych brak w tym egzemplarzu
Usługi z błędem 0

Niegroźne komunikaty w dzienniku (journalctl -p 3), których nie trzeba naprawiać:

Komunikat Znaczenie
ACPI BIOS Error … \_SB.PEP._STA, \_TZ.GTTP Błędy w firmware HP; jądro je omija
amdgpu … psp gfx command LOAD_TA failed Moduł HDCP na Renoirze
iwlwifi … iwl-debug-yoyo.bin Plik debugowania Wi-Fi, niepotrzebny
powerdevil … /dev/i2c-* Brak dostępu Sterowanie jasnością zewnętrznego monitora (DDC/CI); jeśli potrzebne: sudo usermod -aG i2c $USER
kscreenlocker … pam_sss.so, obexd … evolution Nieużywane moduły (domeny firmowe, kontakty przez Bluetooth)

Rozwiązywanie problemów

Pierwsze uruchomienie zatrzymało się z błędem. Przeczytaj komunikat na ekranie (konsola tty8) i /var/log/debian-kde-setup.log. Przejdź do logowania (Ctrl+Alt+F1), usuń przyczynę i uruchom sudo debian-kde-setup.sh. Przy następnym starcie komputera próba zostanie też powtórzona automatycznie. Zrobione sekcje są pomijane.

Brak internetu przy pierwszym starcie. Usługa czeka do 5 minut. Przy Wi-Fi sprawdź, czy sieć podana w instalatorze jest w zasięgu.

Czcionki Microsoftu się nie pobrały (serwer SourceForge niedostępny): sudo dpkg-reconfigure ttf-mscorefonts-installer.

System nie startuje po aktualizacji. Naciśnij Esc przy starcie → wybierz starsze jądro. Jeśli to nie pomaga, uruchom pendrive z systemem live i przywróć migawkę (subwolumin @rootfs z migawki w @snapshots).

Synaptic nie uruchamia się w sesji Wayland. Programy graficzne uruchamiane jako root bywają tam problemem — jeszcze niesprawdzone na EliteBooku. Zastępczo: sudo apt … w terminalu.

Profile zasilania nie działają po zmianie sprzętu. Skrypt wybiera TLP albo power-profiles-daemon według CPPC procesora. Po zmianie ustawień BIOS-u: sudo debian-kde-setup.sh --only power --force.

Klucz Brave ma nieoczekiwany odcisk. Brave dodał nowy klucz. Porównaj go z https://brave.com/signing-keys/ (kanał Release) i dopisz odcisk do BRAVE_FPRS w debian-kde-setup.sh.

Utrzymanie projektu

  • Przed każdą instalacją: ./build-iso.sh --refresh, najlepiej z testem w maszynie wirtualnej. ISO żyje kilka tygodni (instalator Testing przestaje pasować do jądra na serwerach), więc nie warto go trzymać.
  • Diagnoza: system-report.sh (debian-kde-report) — zbiera stan systemu do jednego pliku tekstowego.
  • Zmiana jednej sekcji na działającym systemie: sudo debian-kde-setup.sh --only <sekcja> --force (np. power), migawka snappera robi się sama przy apt.
  • Zmiana nazwy pakietu w Testing objawi się błędem apt — popraw listę w odpowiedniej sekcji skryptu i w planie.
  • Kontrola jakości: bash -n i shellcheck dla wszystkich skryptów (shellcheck -s sh iso/late.sh — działa w busyboksie instalatora, bez bash i bez tee).
  • Pułapki instalatora Debiana, na które już trafiliśmy:
    • parametr console=ttyS0 przełącza instalator w tryb tekstowy bez polskiego,
    • busybox w instalatorze nie ma tee,
    • preseed/file=/cdrom/… zawodzi przy Ventoy — dlatego preseed.cfg i /kde-setup są doklejone do initrd instalatora (instalator sam wczytuje /preseed.cfg z initrd),
    • na karty allow-hotplug network-online.target nie czeka — stąd czekanie na internet w usłudze.
    • usługa pierwszego startu nie może blokować multi-user.target (DefaultDependencies=no): pakiety, których usługi startują „po multi-user.target” (np. power-profiles-daemon), czekałyby na nią w nieskończoność.