====== Instalacja PKG ======
PKG można zainstalować na dwa sposoby:
* binarnie
* z portów
Pierwsza opcja dostępna jest dla FreeBSD 8.3+, dla wcześniejszych pozostaje druga opcja.
===== Instalacja binarna (bootstrap) =====
Od systemu FreeBSD 8.3+ możemy zrobić bootstrap PKG:
root@vbox:~ # pkg
The package management tool is not yet installed on your system.
Do you want to fetch and install it now? [y/N]: y
Bootstrapping pkg from pkg+http://pkg.freebsd.org/freebsd:10:x86:64/latest, please wait...
Installing pkg-1.1.4_8... done
If you are upgrading from the old package format, first run:
# pkg2ng
===== Instalacja z portów =====
Wchodzimy do drzewa portów i instalujemy:
# cd /usr/ports/ports-mgmt/pkg
# make install clean
====== Konfiguracja PKG ======
Po instalacji, jeśli istnieje plik **/usr/local/etc/pkg.conf** to go kasujemy. Nie będzie do niczego potrzebny. \\
Następnie pozostaje do wykonania kilka czynności:
- konwersja starej bazy pakietów do nowej
- ustawienie portów by korzystały z nowego PKG
- dodanie repozytorium binarnego do instalowania paczek (jeśli nie chcemy kompilować)
===== Konwersja starej bazy pakietów do nowej =====
Po instalacji PKG odpalamy:
# pkg2ng
===== Ustawienie portów by korzystały z nowego PKG =====
Dodajemy do **/etc/make.conf** następującą linię:
WITH_PKGNG=yes
Jeśli nie mamy takiego pliku, należy go utworzyć.
===== Dodanie repozytorium binarnego =====
Tworzymy drzewo katalogów **/usr/local/etc/pkg/repos** a następnie dodajemy do niego plik **FreeBSD.conf** o następującej zawartości:
FreeBSD: {
url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest",
mirror_type: "srv",
enabled: yes
}
Po czym zapisujemy i wydajemy polecenie:
# pkg update
Updating repository catalogue
digests.txz 100% 969KB 242.1KB/s 378.5KB/s 00:04
packagesite.txz 100% 5338KB 266.9KB/s 418.0KB/s 00:20
Incremental update completed, 0 packages processed:
0 packages updated, 0 removed and 21909 added.
Co zaktualizuje nam dostępną listę pakietów.
====== Kilka komend na start ======
Przykładowe użycie PKG:
* **pkg add //nazwa_pliku//** - instaluje nam pakiet z pliku
* **pkg autoremove** - usuwa pakiety które były zależnościami dla innych paczek, których już nie ma w systemie
* **pkg delete //nazwa_pakietu//** - usuwa pakiet z systemu (zobacz też **pkg autoremove**)
* **pkg install //nazwa_pakietu//** - instaluje pakiet z repozytorium
* **pkg search //pattern//** - przeszukuje repozytoria pod kątem //patternu//