Skip to main content
  1. Posts/
  2. blog.dsinf.net/

makepkg: invalid option '--asroot’

·245 words·2 mins
blog.dsinf.net arch linux
Daniel Skowroński
Author
Daniel Skowroński

Pewien nieodpowiedzialny maintainer Arch Linuxa popenił commit 61ba5c961e4a3536c4bbf41edb348987a9993fdb do pacmana (menadżera pakietów) usuwający parametr asroot, który zezwalał na ryzyko użytkownika kompilować pakiety jako root. Tłumaczenie się było następujące:

The days of fakeroot being error ridden are long gone, so there is no valid reason to run makepkg as root.
Signed-off-by: Allan McRae [email protected]

Efekt?

makepkg: invalid option ‘--asroot’

Administratorzy mogli to zauważyć przy aktualizacji pakietów z AURa, że nagle nie mogą dokończyć operacji. Zwykłym użytkownikom niektóre programy przestały działać (dyskusja tutaj).

Kwestia używania Linuksa z konta superużytkownika to osobna sprawa, ale powinna pozostać jako w pełni osobista decyzja. Wprowadzanie “dobrych” praktyk na siłę to styl ubuntu, ale na pewno nie Archa - zawiodłem się 🙁 Tym bardziej, że akurat zarządzanie pakietami to typowo administracyjny task. Nadmienię jeszcze, że nie było do tej pory cienia ostrzeżenia od możliwości skasowania tej opcji, a nadto ostrzeżenia o niebezpieczeństwie były wszędzie (razem z czerwonym komunikatem na starcie).

A więc czas na poprawkę - na szczęście istnieje pakiet AUR makepkg-asroot, ale tu problem bo rzecz jasna aktualnie nie możemy kompiliwać pakietów z AURa. Coby zautomatyzować to zadanie można użyć takiego oto skryptu:

pacman --noconfirm -S fakeroot &&
sudo -u nobody yaourt --noconfirm -S makepkg-asroot

zważając na potrzebę wpisania hasła roota (yaourt użyje sudo) i możliwość zignotowania błędu yaourta na koniec (tego o problemie z /root).

Jeśli jak ja uważacie za niepoważny pomysł psucie dystrybucji ucinając możliwość kompilacji pakietów jako root to kontakt do autora tej zmiany znajdziecie na jego stronie.