ALIEN(1p)

NAZWA
alien - konwertuje lub instaluje obcy pakiet binarny

SKŁADNIA
alien [--to-deb] [--to-rpm] [--to-tgz] [--to-slp] [opcje] plik [...]

OPIS
alien jest programem konwetrującym pomiędzy różnymi formatami plików pakietów: rpm Red Hata, deb Debiana, slp Stampede, tgz Slackware'a oraz pkg Solarisa. Aby móc używać pakietu z innej dystrybucji Linuksa niż zainstalowana w systemie, można użyć programu alien do skonwertowania tegoż pakietu do preferowanego formatu i zainstalowania go. Także obsługuje pakiety LSB.

OSTRZEŻENIE
Mimo wysokiego numeru wersji, alien wciąż jest (i najprawdopodobniej zawsze będzie) programem raczej eksperymentalnym. Chociaż jest rozwijany od wielu lat, to wciąż zawiera wiele błędów i ograniczeń.

aliena nie powinno się używać do zastąpienia ważnych pakietów systemowych, takich jak init, libc czy innych, które są niezbędne do poprawnego działania systemu. Większość tych pakietów jest w różnych dystrybucjach inaczej skonfigurowana, pakiety różnych dystrybucji nie mogą być stosowane wymiennie. Ogólnie, nie można usunąć takiego pakietu bez zepsucia systemu, tak więc prosimy nie próbować zastępować go obcą wersją.

UWAGI DO POSZCZEGÓLNYCH FORMATÓW PAKIETÓW

rpm Do konwersji z formatu rpm i na format rpm musi być zainstalowany Red Hat Package Manager.

lsb W przeciwieństwie do pozostałych formatów pakietów alien potrafi obsłużyć zależności pakietów lsb, jeżeli tylko format pakietu wynikowego obsługuje zależności. Proszę zauważyć, że oznacza to, iż pakiet utworzony z pakietu lsb będzie zależał od pakietu nazwanego "lsb" -- Twoja dystrybucja powinna dostarczyć pakietu o tej nazwie, jeżeli jest zgodna ze standardem lsb. Domyślnie zostaną skonwertowane również skrypty w pakiecie lsb.

    Do utworzenia pakietów lsb, musi być zainstalowany Red Hat Package Manager, a alien w pierwszej kolejności użyje programu lsb-rpm, jeżeli takowy istnieje. Nie ma żadnych gwarancji, że wygenerowany pakiet lsb będzie w 100% zgodny ze standardem LSB, co więcej jest to raczej niemożliwe, chyba że zostanie on zbudowany w środowisku lsbdev.

deb Do konwersji na format .deb (ale nie z tego formatu) muszą być zainstalowane pakiety gcc, make, debmake, dpkg-dev i dpkg.

tgz Zauważ, że dla formatu tgz alien po prostu utworzy pakiet wynikowy z tymi samymi plikami we wnętrzu, które są w pliku tgz. Działa to dobrze tylko wtedy, jeśli plik tgz zawiera w sobie prekompilowane binaria w standardowym linuksowym drzewie katalogów. NIE uruchamiaj aliena na plikach tar zawierających kod źródłowy, chyba że chcesz, by kod ten podczas instalacji pakietu został zainstalowany w katalogu głównym (root)!

pkg Aby działać na pakietach w formacie pkg Solarisa (który tak naprawdę jest formatem pakietów SV), muszą być zainstalowane solarisowe narzędzia pkginfo i pkgtrans.

OPCJE
alien skonwertuje wszystkie podane pliki na wszystkie podane typy pakietów wynikowych. Jeżeli nie podano żadnego typu, to domyślnie pakiet zostanie skonwertowany do formatu deb.

plik [ ... ]
    Lista plików do konwersji.

-d, --to-deb
    Pakiet wynikowy będzie pakietem Debiana. Domyślne.

-r, --to-rpm
    Pakiet wynikowy będzie pakietem rpm.

-t, --to-tgz
    Pakiet wynikowy będzie pakietem tgz.

--to-slp
    Pakiet wynikowy będzie pakietem slp.

-p, --to-pkg
    Pakiet wynikowy będzie pakietem pkg Solarisa.

-i, --install
    Automatycznie instaluje pakiet wynikowy i usuwa plik pakietu po jego zainstalowaniu.

-g, --generate
    Tworzy katalog tymczasowy, odpowiedni do zbudowania z niego pakietu, ale samego pakietu faktycznie nie tworzy. Przydatne, jeśli chcesz przesunąć pliki w pakiecie przed jego skonstruowaniem. Pakiet może być zbudowany z tego katalogu tymczasowego przez uruchomienie "debian/rules binary", jeśli tworzony jest pakiet Debiana, lub "rpm -bb <nazwapakietu>.spec", jeżeli jest tworzony pakiet Red Hata.

-s, --single
    Jak -g, ale nie tworzy katalogu nazwapakietu.orig. Przydatne tylko jeśli jest bardzo mało miejsca na dysku i tworzysz pakiet Debiana.

--patch=łata
    Określa łatę, jaka ma być użyta, zamiast automatycznego wyszukiwania jej w /var/lib/alien/. Ta opcja ma znaczenie tylko gdy budowany jest pakiet Debiana.

--anypatch
    Jest mniej wymagający w stosunku do tego, która łata zostanie użyta, próbując użyć pliku z łatą dla starszej wersji pakietu. Nie ma gwarancji, że to będzie zawsze działać; starsze łaty niekoniecznie muszą działać z nowszymi pakietami.

--nopatch
    Nie używa żadnych plików z łatami.

--description=opis
    Określa opis pakietu. Może być używane tylko przy konwersji z pakietów tgz Slackware, które nie mają opisów.

--version=wersja
    Określa wersję pakietu. Opcja ta ma zastosowanie przy konwersji z pakietów w formacie tgz, które mogą nie mieć informacji o wersji.

    Uwaga, użyta bez argumentu, wyświetla wersję aliena.

-c, --scripts
    Próbuje konwertować skrypty, który powinny być uruchamiane przy instalacji lub usuwaniu pakietu. Używaj rozważnie, gdyż skrypty te mogą być zaprojektowane do pracy na systemach niepodobnych do twojego i mogą powodować kłopoty. Przed zastosowaniem tej opcji zaleca się zbadanie skryptów ręcznie i zobaczenie, co robią.

    Opcja jest domyślnie włączona dla konwertowania z pakietów formatu lsb.

-T, --test
    Testuje wygenerowane pakiety. Obecnie jest to możliwe tylko dla pakietów Debiana, które będą testowane programem lintian, jeżeli jest on zainstalowany, i zostanie wyświetlone wyjście programu lintian.

-k, --keep-version
    Domyślnie alien dodaje jeden do pobocznego (minor) numeru wersji. Jeżeli podano tę opcję, alien nie będzie tego robił.

--fixperms
    Poprawia właścicieli i prawa dostępu podczas budowania pakietu deb. Może być to użyteczne, kiedy w oryginalnym pakiecie panuje bałagan. Z drugiej strony, może to zepsuć pewnie rzeczy związane z prawami dostępu i właścicielami, dlatego domyślnie ta opcja jest wyłączona. Może być użyte tylko podczas konwertowania do pakietów Debiana.

-v, --verbose
    Tryb głośny: Wyświetla każde polecenie wykonywane przez aliena podczas konwertowania pakietu.

--veryverbose
    Tryb głośny, podobnie jak w wypadku opcji --verbose, z tą różnicą, że wyświetla wyjście każdego polecenia. Niektóre polecanie mogą generować duże wyjście.

-h, --help
    Wyświetla krótkie podsumowanie użytkowania.

-V, --version
    Wyświetla wersję aliena.

PRZYKŁADY
Oto kilka przykładów użycia programu alien:

alien --to-deb pakiet.rpm
    Konwertuje pakiet.rpm na pakiet.deb

alien --to-rpm pakiet.deb
    Konwertuje pakiet.deb na pakiet.rpm

alien -i pakiet.rpm
    Konwertuje pakiet.rpm na pakiet.deb (konwersja na pakiet .deb jest domyślna, więc nie musisz podawać --to-deb) i instaluje wygenerowany pakiet.

alien --to-deb --to-rpm --to-tgz --to-slp foo.deb bar.rpm baz.tgz
    Tworzy 9 nowych pakietów. Po zakończeniu foo, bar i baz będą dostępne we wszystkich 4 formatach pakietów.

ŚRODOWISKO
alien rozpoznaje następujące zmienne środowiska:

RPMBUILDOPT
    Opcje do przekazania do rpm, gdy buduje pakiet.

RPMINSTALLOPT
    Opcje do przekazania do rpm, gdy instaluje pakiet.

EMAIL
    Jeżeli ustawiona, to alien przyjmuje, że zawiera Twój adres e-mail. Adresy e-mail są dołączane do wygenerowanych pakietów Debiana.

UWAGI
Podczas uruchamiania programu alien na pliku tar wszystkie pliki w /etc są uważane za pliki konfiguracyjne.

Jeżeli alien nie jest uruchamiany przez użytkownika root, pliki w utworzonym pakiecie będą miały nieprawidłowych właścicieli i prawa dostępu.

AUTOR
alien został napisany przez Christopha Lametera <clameter@debian.org>.

Kod konwersji deb na rpm został wzięty z programu martian Randolpha Chunga <tausq@debian.org>.

Alien został w dużym stopniu napisany ponownie (3 razy) i obecnie jego opiekunem jest Joey Hess <joeyh@debian.org>.

LICENCJA
Alien może być kopiowany i rozprowadzany na warunkach Ogólnej Licencji Publicznej GNU.