0Pricing
Linux Server Deployment & SSH Mastery · Lekcja

Budowanie ze źródeł oraz używanie Snap i Flatpak

Wyjdą Państwo poza systemowy menedżer pakietów: skompilują oprogramowanie ze źródeł, gdy nie istnieje odpowiedni pakiet, oraz użyją uniwersalnych formatów pakietów, takich jak Snap i Flatpak, do niezależnej od repozytoriów dystrybucji instalacji nowoczesnych aplikacji.

Budowanie ze źródeł oraz używanie Snap i Flatpak to bezpłatna lekcja Linux Server Deployment & SSH Mastery na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Linux Server Deployment & SSH Mastery, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Linux Server Deployment & SSH Mastery zawiera 4 lekcji w sumie.

Gdy menedżer pakietów nie wystarcza

APT i YUM zaspokajają większość potrzeb, ale czasami dane narzędzie nie jest dostępne w pakietach, pakiety w repozytoriach są zbyt stare albo potrzebujesz konkretnej wersji. W takich przypadkach masz dwie możliwości:

  • Skompilować oprogramowanie ze źródeł
  • Użyć uniwersalnego formatu pakietów, takiego jak Snap lub Flatpak

W tej lekcji omówiono oba rozwiązania.

Przygotowanie narzędzi do kompilacji

Kompilacja wymaga toolchainu: kompilatora, make oraz bibliotek programistycznych. W systemach Debian/Ubuntu pakiet meta build-essential dostarcza podstawowe elementy.

sudo apt install build-essential
# RHEL/Fedora:
sudo dnf groupinstall 'Development Tools'

Pobieranie kodu źródłowego

Kod źródłowy jest zwykle dostarczany jako skompresowane archiwum tarball lub repozytorium git. Pobierz go, rozpakuj, a następnie przejdź do odpowiedniego katalogu.

wget https://example.com/tool-1.2.tar.gz
tar -xzf tool-1.2.tar.gz
cd tool-1.2

Cykl configure / make / install

Klasyczny proces budowania GNU składa się z trzech etapów:

  • ./configure — sprawdza system i przygotowuje kompilację
  • make — kompiluje kod
  • sudo make install — kopiuje pliki binarne na właściwe miejsce

Ten wzorzec ma już kilkadziesiąt lat, ale nadal jest powszechnie stosowany.

./configure
make
sudo make install

Wybór prefiksu instalacji

Domyślnie oprogramowanie jest instalowane w /usr/local. Możesz to zmienić za pomocą --prefix, aby zachować izolację instalacji i ułatwić jej późniejsze usunięcie.

Instalacja w katalogu domowym pozwala całkowicie uniknąć konieczności korzystania z uprawnień root.

./configure --prefix=/opt/tool
make
sudo make install

Obsługa brakujących zależności

Jeśli ./configure zatrzyma się z powodu brakującej biblioteki, zainstaluj pasujący pakiet -dev. Pakiety programistyczne zawierają pliki nagłówkowe potrzebne kodowi źródłowemu do kompilacji z użyciem danej biblioteki.

sudo apt install libssl-dev zlib1g-dev
./configure

Odinstalowywanie programów zbudowanych ze źródeł

Wadą instalacji ze źródeł jest brak automatycznego odinstalowywania. Jeśli projekt to obsługuje, uruchom make uninstall w katalogu kompilacji. W przeciwnym razie użycie izolowanego --prefix pozwala po prostu usunąć cały katalog.

sudo make uninstall
# or, if you used --prefix=/opt/tool:
sudo rm -rf /opt/tool

Uniwersalne pakiety: Snap

Snap zawiera aplikację wraz z jej zależnościami, dzięki czemu działa w każdej dystrybucji obsługującej snapd. Pakiety są automatycznie aktualizowane i uruchamiane w piaskownicy.

sudo snap install htop
snap list
sudo snap remove htop

Uniwersalne pakiety: Flatpak

Flatpak to kolejny uniwersalny format, popularny w przypadku aplikacji desktopowych i dystrybuowany za pośrednictwem zdalnych repozytoriów, takich jak Flathub. Dodaj repozytorium zdalne raz, a następnie instaluj aplikacje według ich identyfikatorów.

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install flathub org.gimp.GIMP
flatpak run org.gimp.GIMP

Wybór właściwej metody

Wybierz rozwiązanie odpowiednie do sytuacji:

  • APT/YUM — domyślna opcja, najlepsza integracja, automatyczne aktualizacje
  • Snap/Flatpak — najnowsze wersje, działanie w wielu dystrybucjach, piaskownica
  • Source — ostateczność w przypadku nieopakowanego oprogramowania lub niestandardowych kompilacji

Preferuj pakiety; kompiluj ze źródeł tylko wtedy, gdy jest to konieczne.

Najlepsze praktyki

Bezpiecznie instaluj oprogramowanie poza menedżerem pakietów:

  • Zawsze przed konfiguracją instaluj zależności potrzebne do kompilacji
  • Używaj czystego --prefix, aby później móc usunąć instalacje ze źródeł
  • Weryfikuj sumy kontrolne lub podpisy pobranych plików
  • Jeśli istnieje utrzymywany pakiet, preferuj Snap/Flatpak zamiast instalacji ze źródeł

Szybkie sprawdzenie

Sprawdź swoją wiedzę na temat instalowania oprogramowania.

Podsumowanie

Potrafi już Pan/Pani instalować oprogramowanie spoza standardowych repozytoriów:

  • Ze źródeł: ./configure → make → make install, z użyciem --prefix w celu odizolowania instalacji
  • Snap: snap install do instalowania samodzielnych aplikacji, które aktualizują się automatycznie
  • Flatpak: zdalne repozytoria Flathub i identyfikatory aplikacji

Sięgaj po te rozwiązania tylko wtedy, gdy APT/YUM nie może dostarczyć potrzebnego oprogramowania.

Często zadawane pytania

Czy lekcja „Budowanie ze źródeł oraz używanie Snap i Flatpak” jest bezpłatna?

Tak — pełny tekst „Budowanie ze źródeł oraz używanie Snap i Flatpak” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Linux Server Deployment & SSH Mastery, przejdź na CoddyKit PRO. Kurs Linux Server Deployment & SSH Mastery zawiera 4 lekcji w sumie.

Co nauczysz się w „Budowanie ze źródeł oraz używanie Snap i Flatpak”?

Wyjdą Państwo poza systemowy menedżer pakietów: skompilują oprogramowanie ze źródeł, gdy nie istnieje odpowiedni pakiet, oraz użyją uniwersalnych formatów pakietów, takich jak Snap i Flatpak, do niez… Ćwiczysz Linux Server Deployment & SSH Mastery z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Linux Server Deployment & SSH Mastery?

Nie wymagamy żadnego doświadczenia. Linux Server Deployment & SSH Mastery w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.

Ile czasu zajmuje lekcja „Budowanie ze źródeł oraz używanie Snap i Flatpak”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Linux Server Deployment & SSH Mastery?

Tak. Każda lekcja Linux Server Deployment & SSH Mastery zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Menedżery pakietów APT i YUM
  2. Instalowanie i aktualizowanie oprogramowania
  3. Zarządzanie repozytoriami oprogramowania
  4. Budowanie ze źródeł oraz używanie Snap i Flatpak
← Powrót do Linux Server Deployment & SSH Mastery