it-swarm-ru.tech

Как принудительно удалить пакет в Arch с pacman?

Как принудительно удалить пакет в Arch с помощью pacman, в то время как другие пакеты все еще зависят от него.

pacman -R Perl-libwww                                                               
checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: Perl-app-cpanminus: requires Perl-libwww>=5.828
:: Perl-app-pmuninstall: requires Perl-libwww
:: Perl-app-sd: requires Perl-libwww
:: Perl-catalyst-action-rest: requires Perl-libwww>=2.033 
:: Perl-catalyst-runtime: requires Perl-libwww>=1.64
:: Perl-cpan: requires Perl-libwww
:: Perl-cpan-mini: requires Perl-libwww
:: Perl-cpan-uploader: requires Perl-libwww
:: Perl-feed-find: requires Perl-libwww
:: Perl-http-body: requires Perl-libwww
:: Perl-http-request-ascgi: requires Perl-libwww
:: Perl-module-cpants-analyse: requires Perl-libwww
:: Perl-module-install: requires Perl-libwww>=5.812
:: Perl-net-trac: requires Perl-libwww
:: Perl-net-whois-raw: requires Perl-libwww
:: Perl-prophet: requires Perl-libwww
:: Perl-rt-client-rest: requires Perl-libwww
:: Perl-uri-fetch: requires Perl-libwww
:: Perl-www-mechanize: requires Perl-libwww
:: Perl-xml-atom: requires Perl-libwww
:: Perl-xml-feed: requires Perl-libwww

в основном LWP 6 разбил целую кучу пакетов, и мне нужно удалить его, чтобы я мог переустановить его.

66
xenoterracide

Вы должны иметь возможность переустановить пакет с помощью простого:

# pacman -S Perl-libwww

Это удалит только Perl-libwww:

# pacman -Rdd Perl-libwww

Обратите внимание на двойной - - d в команде, если вы используете - - nodeps, вы должны указать это дважды или объединить его с - - d = как:

# pacman -R --nodeps --nodeps Perl-libwww
# pacman -Rd --nodeps Perl-libwww

Это удаляет все пакеты, которые зависят от Perl-libwww:

# pacman -Rc Perl-libwww

Со страницы руководства pacman:

   -d, --nodeps
       Skips dependency version checks. Package names are still
       checked. Normally, pacman will always check a package’s
       dependency fields to ensure that all dependencies are
       installed and there are no package conflicts in the
       system. Specify this option twice to skip all dependency
       checks.
   -c, --cascade
       Remove all target packages, as well as all packages that
       depend on one or more target packages. This operation is
       recursive, and must be used with care since it can remove
       many potentially needed packages.
102
Kambus