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.2Cykl configure / make / install
Klasyczny proces budowania GNU składa się z trzech etapów:
./configure— sprawdza system i przygotowuje kompilacjęmake— kompiluje kodsudo 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 installWybó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 installObsł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
./configureOdinstalowywanie 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/toolUniwersalne 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 htopUniwersalne 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.GIMPWybó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--prefixw celu odizolowania instalacji - Snap:
snap installdo 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
- Menedżery pakietów APT i YUM
- Instalowanie i aktualizowanie oprogramowania
- Zarządzanie repozytoriami oprogramowania
- Budowanie ze źródeł oraz używanie Snap i Flatpak