LINUX.ORG.RU

Про удаление пакетов


0

1

Portage при выполнении команды emerge --ask --depclean спрашивает меня:

All selected packages:
=sys-kernel/gentoo-kernel-5.15.75
=dev-haskell/refinery-0.4.0.0 =dev-haskell/lucid-2.11.0 =dev-python/mistune-0.8.4-r1 =sys-apps/man-pages-posix-2017a =dev-haskell/generic-lens-2.2.1.0 =dev-haskell/file-embed-0.0.15.0
=dev-haskell/hlint-3.3.6 =dev-haskell/lsp-types-1.4.0.1 =dev-haskell/hashtables-1.3 =dev-python/hyperlink-21.0.0-r1 =media-libs/libfreeaptx-0.1.1-r1 =dev-haskell/ansi-wl-pprint-0.6.9-r2
=dev-haskell/hls-explicit-imports-plugin-1.1.0.0 =dev-haskell/githash-0.1.6.1 =dev-haskell/fourmolu-0.4.0.0 =x11-themes/murrine-themes-0.98.11 =dev-haskell/indexed-traversable-0.1.2
=dev-haskell/hls-hlint-plugin-1.0.4.0 =dev-python/setuptools-rust-1.4.1 =dev-haskell/lsp-1.4.0.0 =app-misc/jq-1.7_pre20201109-r1 =dev-haskell/hsyaml-aeson-0.2.0.1
=app-accessibility/at-spi2-atk-2.46.0 =dev-haskell/process-extras-0.7.4 =dev-python/future-0.18.2-r1 =app-arch/lzlib-1.13 =dev-haskell/unagi-chan-0.4.1.3 =dev-haskell/hls-floskell-plugin-1.0.1.1
=dev-haskell/indexed-traversable-instances-0.1 =dev-haskell/prettyprinter-ansi-terminal-1.1.2 =dev-haskell/hls-tactics-plugin-1.6.2.0 =dev-haskell/generic-deriving-1.14.1 =net-libs/rest-0.8.1-r1
=dev-haskell/diff-0.4.0 =dev-haskell/parallel-3.2.2.0 =media-sound/jack2-1.9.19 =dev-haskell/statevar-1.2.1 =dev-python/zipp-3.8.0 =dev-python/service_identity-21.1.0-r1 =dev-haskell/hie-bios-0.9.1
=dev-python/setuptools_scm_git_archive-1.4 =dev-haskell/primes-0.2.1.0-r1 =dev-python/pyopenssl-22.0.0 =dev-haskell/clock-0.8.2 =dev-haskell/reflection-2.1.6 =dev-haskell/dependent-sum-0.7.1.0-r1
=app-arch/pax-20201030 =sys-kernel/gentoo-kernel-5.15.32-r1 =sys-libs/compiler-rt-sanitizers-13.0.1 =dev-util/buildbot-worker-3.4.0 =sys-devel/gcc-11.3.1_p20221209 =sys-devel/clang-runtime-14.0.4
=dev-haskell/old-locale-1.0.0.7 =dev-haskell/fuzzy-0.1.0.0 =sys-libs/compiler-rt-sanitizers-15.0.5 =dev-haskell/assoc-1.0.2 =dev-haskell/parser-combinators-1.3.0 =dev-haskell/these-1.1.1.1-r1
=x11-themes/gtk-engines-2.20.2-r101 =dev-haskell/th-abstraction-0.4.3.0 =dev-haskell/psqueues-0.2.7.3 =dev-haskell/stm-containers-1.2 =dev-haskell/profunctors-5.6.2 =virtual/jack-2
=dev-haskell/case-insensitive-1.2.1.0 =gui-libs/tepl-5.0.1-r1 =dev-haskell/megaparsec-9.2.1 =dev-dotnet/commandline-1.9.71.2-r1 =dev-haskell/hls-pragmas-plugin-1.0.2.1
=dev-python/alembic-1.8.0 =dev-haskell/hie-compat-0.2.1.0 =dev-haskell/hls-rename-plugin-1.0.0.2 =dev-haskell/fmlist-0.9.4 =dev-haskell/hls-plugin-api-1.4.0.0
=dev-haskell/random-shuffle-0.0.4-r1 =dev-haskell/hls-alternate-number-format-plugin-1.1.0.0 =dev-java/cortado-0.6.0-r2 =dev-python/pyhamcrest-2.0.3-r1
=dev-haskell/comonad-5.0.8 =dev-haskell/polyparse-1.13 =dev-haskell/entropy-0.4.1.6-r1 =dev-haskell/only-0.1 =sys-kernel/gentoo-kernel-5.15.25 =dev-haskell/primitive-extras-0.10.1.4
=media-libs/smpeg-0.4.4-r11 =x11-libs/xcb-util-cursor-0.1.4 =dev-haskell/hls-graph-1.7.0.0 =dev-haskell/free-5.1.9 =dev-haskell/haskell-src-exts-1.23.1 =dev-lang/python-3.9.12
=dev-libs/oniguruma-6.9.8 =sys-auth/realtime-base-0.1-r1 =dev-haskell/primitive-unlifted-0.1.3.1 =dev-python/constantly-15.1.0-r2 =dev-haskell/semigroups-0.20 =dev-haskell/temporary-1.3
=net-wireless/gnome-bluetooth-3.34.5 =dev-lang/spidermonkey-78.15.0 =gnome-extra/gnome-browser-connector-42.1 =dev-haskell/ghcide-1.7.0.0 =dev-haskell/monoid-subclasses-0.4.6.1
=dev-java/commons-cli-1.5.0 =dev-haskell/algebraic-graphs-0.6 =net-libs/webkit-gtk-2.38.2 =dev-haskell/quickcheck-2.14.2-r1 =gnome-extra/gucharmap-3.0.1-r200 =dev-haskell/semigroupoids-5.3.7-r1
=virtual/jdk-11-r2 =virtual/w3m-1 =dev-haskell/hiedb-0.4.1.0 =dev-haskell/retrie-1.1.0.0 =app-text/cmark-0.30.2 =dev-haskell/invariant-0.5.5 =dev-haskell/ghc-source-gen-0.4.2.0
=sys-kernel/gentoo-kernel-5.15.80 =sys-devel/binutils-2.37_p1-r2 =dev-python/pyasn1-modules-0.2.8-r2 =x11-themes/gtk-engines-murrine-0.98.2-r3 =dev-haskell/opentelemetry-0.6.1
=dev-haskell/data-default-instances-containers-0.0.1 =dev-haskell/atomic-primops-0.8.4 =dev-haskell/hslogger-1.3.1.0-r2 =dev-haskell/enummapset-0.6.0.3 =dev-haskell/hls-ormolu-plugin-1.0.2.1
=sys-kernel/gentoo-kernel-5.15.83 =dev-haskell/hls-retrie-plugin-1.0.2.1 =dev-haskell/ormolu-0.3.1.0 =dev-haskell/indexed-profunctors-0.1.1
=dev-python/click-8.1.3 =dev-haskell/extra-1.7.10 =dev-haskell/optparse-simple-0.1.1.4 =dev-haskell/hls-class-plugin-1.0.3.0 =dev-lang/vala-0.52.10 =dev-python/pyyaml-6.0-r1 =dev-python/txaio-22.2.1
=dev-haskell/optparse-applicative-0.16.1.0-r1 =dev-haskell/cereal-0.5.8.2 =dev-haskell/deferred-folds-0.9.18.1 =dev-haskell/haddock-library-1.10.0-r2 =sys-devel/clang-13.0.1
=dev-haskell/onetuple-0.3.1 =dev-lang/python-2.7.18_p15 =dev-haskell/apply-refact-0.9.3.0 =dev-python/importlib_metadata-4.11.3 =dev-haskell/heapsize-0.3.0.1
=dev-haskell/ghc-exactprint-0.6.4 =dev-haskell/constraints-0.13.3 =sys-devel/llvm-13.0.1 =dev-haskell/lens-5.1.1 =dev-haskell/constraints-extras-0.3.2.1
=dev-python/pyasn1-0.4.8-r2 =dev-haskell/data-default-instances-old-locale-0.0.1 =dev-haskell/floskell-0.10.6 =dev-db/postgresql-14.6 =dev-haskell/base-compat-0.12.1
=dev-haskell/monad-dijkstra-0.1.1.3 =dev-haskell/js-dgtable-0.5.2 =dev-haskell/monad-control-1.0.3.1 =dev-haskell/cryptohash-sha1-0.11.100.1 =app-arch/plzip-1.10
=dev-haskell/generic-lens-core-2.2.1.0 =dev-haskell/hsyaml-0.2.1.1 =dev-haskell/monadrandom-0.5.2 =sys-libs/compiler-rt-13.0.1 =dev-haskell/adjunctions-4.4 =dev-java/openjdk-bin-11.0.15_p10
=dev-haskell/list-t-1.0.4 =dev-haskell/rope-utf16-splay-0.3.2.0 =dev-haskell/focus-1.0.2 =sys-libs/compiler-rt-15.0.5 =dev-haskell/mmorph-1.1.5 =dev-haskell/ghc-lib-parser-ex-9.0.0.6
=dev-python/pyjwt-2.4.0 =dev-haskell/uuid-types-1.0.5-r1 =dev-haskell/time-compat-1.9.6.1 =dev-haskell/aeson-2.0.3.0 =dev-haskell/hls-fourmolu-plugin-1.0.3.0 =sys-kernel/gentoo-kernel-5.15.41
=dev-haskell/ghc-trace-events-0.1.2.3 =acct-group/buildbot-0-r1 =media-video/pipewire-0.3.61 =dev-python/twisted-22.4.0-r2 =dev-haskell/cmdargs-0.10.21 =dev-haskell/sorted-list-0.2.1.0
=dev-haskell/ghc-lib-9.0.2.20211226 =dev-haskell/hls-splice-plugin-1.0.1.0-r1 =dev-haskell/semialign-1.2.0.1 =dev-haskell/semirings-0.6-r1 =dev-haskell/hls-change-type-signature-plugin-1.0.1.0
=media-video/wireplumber-0.4.12-r1 =dev-haskell/hls-module-name-plugin-1.0.2.0 =dev-lang/lua-5.4.4-r103 =dev-haskell/ghc-check-0.5.0.5 =dev-haskell/foldl-1.4.12 =sys-devel/binutils-2.38-r2
=mail-filter/bogofilter-1.2.5-r1 =dev-lang/vala-0.50.10 =dev-libs/qtcompress-0_p20180513 =dev-haskell/hscolour-1.24.4 =mail-client/evolution-3.46.2 =dev-haskell/base16-bytestring-1.0.2.0
=dev-haskell/double-conversion-2.0.2.0 =dev-python/versioneer-0.22 =dev-haskell/ghc-paths-0.1.0.12-r3 =sys-libs/compiler-rt-15.0.3 =dev-haskell/uniplate-1.6.13 =dev-haskell/sqlite-simple-0.4.18.2
=dev-haskell/unliftio-0.2.18 =dev-haskell/hls-call-hierarchy-plugin-1.0.3.0 =dev-haskell/hls-code-range-plugin-1.0.0.0-r1 =media-libs/libuninameslist-20200413-r2 =net-libs/libgrss-0.7.0
=dev-haskell/filemanip-0.3.6.3 =sys-devel/lld-14.0.6-r1 =dev-haskell/call-stack-0.3.0 =media-libs/freealut-1.1.0-r4 =x11-themes/mate-themes-meta-3-r3 =dev-haskell/yaml-0.11.8.0
=dev-haskell/blaze-textual-0.2.1.0 =dev-haskell/void-0.7.3 =dev-haskell/strict-0.4.0.1-r1 =dev-python/sip-4.19.25-r1 =dev-haskell/hls-qualify-imported-names-plugin-1.0.1.0-r1
=dev-haskell/kan-extensions-5.2.5 =dev-haskell/refact-0.3.0.2 =dev-haskell/lens-aeson-1.1.2 =dev-haskell/safe-exceptions-0.1.7.1 =sys-devel/clang-runtime-13.0.1 =dev-haskell/base-compat-batteries-0.12.1
=dev-haskell/stm-hamt-1.2.0.7 =dev-haskell/some-1.0.4 =dev-haskell/cryptohash-md5-0.11.101.0 =dev-python/automat-20.2.0-r1 =dev-java/miglayout-4.0-r1 =games-strategy/freecol-0.11.6-r1
=dev-haskell/type-equality-1 =dev-python/m2r-0.2.1 =dev-haskell/hls-haddock-comments-plugin-1.0.1.0-r1 =dev-python/autobahn-22.6.1 =dev-python/sqlalchemy-1.4.39 =dev-haskell/uuid-1.3.15
=www-client/w3m-0.5.3_p20220429 =dev-haskell/listlike-4.7.4 =dev-haskell/implicit-hie-cradle-0.5.0.0 =dev-haskell/js-jquery-3.3.1 =sys-libs/compiler-rt-sanitizers-15.0.3 =sys-kernel/gentoo-kernel-5.15.77
=dev-haskell/network-uri-2.6.4.1 =virtual/jre-11-r2 =dev-haskell/dependent-map-0.4.0.0 =dev-util/buildbot-3.4.0-r1 =media-libs/fdk-aac-2.0.2 =sys-devel/clang-runtime-15.0.5 =acct-group/realtime-0
=dev-haskell/libyaml-0.1.2 =dev-lang/roslyn-msbin-3.9.0 =dev-haskell/hyphenation-0.8.1 =dev-libs/libgdata-0.18.1-r1 =dev-haskell/pretty-simple-4.1.1.0 =dev-python/semantic_version-2.10.0
=media-libs/libldac-2.0.2.3-r1 =x11-themes/mate-themes-3.22.21 =sys-block/thin-provisioning-tools-0.9.0-r1 =dev-python/python-editor-1.0.4-r1 =dev-python/uritemplate-4.1.0
=sys-libs/compiler-rt-sanitizers-14.0.4 =acct-user/buildbot-0-r1 =dev-haskell/ghc-lib-parser-9.0.2.20211226 =dev-haskell/witherable-0.4.2 =dev-haskell/mod-0.1.2.2 =net-misc/ofono-1.33
=dev-haskell/hls-refine-imports-plugin-1.0.2.0 =dev-java/openjdk-bin-8.332_p09 =kde-frameworks/kitemmodels-5.99.0 =sys-kernel/gentoo-sources-5.15.80 =dev-haskell/cpphs-1.20.9.1
=dev-haskell/gitrev-1.3.1 =dev-python/incremental-21.3.0-r1 =dev-haskell/data-fix-0.3.2 =dev-haskell/filepattern-0.1.2 =sys-kernel/gentoo-kernel-5.15.74 =sci-physics/bullet-3.21 =dev-haskell/network-bsd-2.8.1.0-r1
=dev-haskell/syb-0.7.2.1 =dev-haskell/data-default-0.7.1.1 =dev-lang/spidermonkey-91.13.0-r1 =dev-haskell/unix-compat-0.5.3 =dev-haskell/bifunctors-5.5.11 =dev-haskell/js-flot-0.8.3
=dev-haskell/transformers-base-0.4.5.2 =dev-haskell/fingertree-0.1.4.2 =dev-haskell/prettyprinter-1.7.0 =dev-haskell/glob-0.10.2 =dev-haskell/contravariant-1.5.3 =dev-haskell/th-compat-0.1.3
=dev-python/cryptography-37.0.4 =dev-haskell/terminal-size-0.3.2.1 =dev-haskell/text-short-0.1.5 =dev-haskell/direct-sqlite-2.3.26-r1 =dev-haskell/distributive-0.6.2.1 =sci-libs/kissfft-131.1.0
=dev-haskell/implicit-hie-0.1.2.7 =dev-haskell/network-info-0.2.0.10 =dev-haskell/aeson-pretty-0.8.9-r1 =sys-libs/compiler-rt-14.0.4 =dev-haskell/data-default-instances-dlist-0.0.1

>>> 'Selected' packages are slated for removal.
>>> 'Protected' and 'omitted' packages will not be removed.

Would you like to unmerge these packages? [Yes/No] yes

Он реально думает, что я могу принять решение в этом случае? И что, мне теперь надо просмотреть каждый пакет, понять его назначение и причину, по которой он будет удалён?

Их много!!!

★★★★

Последнее исправление: Shushundr (всего исправлений: 1)
Ответ на: комментарий от Jameson

Я неправильно написал команду. На самом деле я пытался выполнить инструкции из последнего eselect news read, там написано:

To migrate your system, a standard world upgrade will suffice after
deselecting eselect-awk and eselect-sh:
1. # emerge --deselect app-eselect/eselect-awk app-eselect/eselect-sh
2. # emerge --depclean app-eselect/eselect-awk app-eselect/eselect-sh
3. # emerge --sync
4. # emerge -a -uvDU @world (or other similar standard world upgrade command)
5. # emerge --ask --depclean

Поправил.

Shushundr ★★★★
() автор топика
Ответ на: комментарий от Shushundr

Так ты попробуй всё таки emerge --depclean, без @world.

Ну и например games-strategy/freecol ты явно сам себе ручками ставил. И если ты это делал без --oneshot он у тебя в world файле и --depclean не должен его сносить. И раз он его сносит — варианта два, либо ты его через --oneshot поставил, либо тебе кто то world файл удалил\очистил. Найди его и сломай ему руки.

Ну и вообще, после каждого обновления\удаления софта делай --depclean, не нужно дерьмо накапливать.

Jameson ★★★★★
()
Последнее исправление: Jameson (всего исправлений: 1)
Ответ на: комментарий от Jameson

Нет. Как раз с «правильной» командой он мне всё это и написал. Как я уже написал выше, в посте на LOR я написал команду по памяти. На самом деле команда была дана как в инструкции (скопирована).

Shushundr ★★★★
() автор топика
Ответ на: комментарий от Shushundr

Ну, ты как то себе world сломал, я не знаю как. Чини. Парси этот выхлоп и всё что сам руками когда то ставил засовывай назад через --select

Есть ещё https://wiki.gentoo.org/wiki/Regenworld, но он поможет только если у тебя логи со времён начальной установки хранятся.

На бубущее, пока ты гентушник-рукожоп — перед тем как сделать что то странное и до конца тебе непонятное из рассылки делай копию world файла. Я тоже сначала не делал, потом делал. А сейчас снова не делаю, но это потому что косячить перестал.

Jameson ★★★★★
()
Последнее исправление: Jameson (всего исправлений: 5)
Ответ на: комментарий от Shushundr

Это прекрасно, более того, это логично, тебе не дают прострелить себе голову, но в world файле то у тебя что?

Jameson ★★★★★
()
Последнее исправление: Jameson (всего исправлений: 1)
Ответ на: комментарий от Jameson

Though the emerge man page says that the world file can «safely» be edited by hand, Portage will aggressively rewrite that file. Comments or changes in order of packages will be lost and there will be no checking for typos.

https://wiki.gentoo.org/wiki/Selected-packages_set_(Portage)

Значит для редактирования world надо использовать специальное ПО.

Например app-portage/kuroo, это специально с GUI для нормальных людей.

Пока я его ещё не установил, поэтому что там в файле world сказать не могу.

Shushundr ★★★★
() автор топика
Последнее исправление: Shushundr (всего исправлений: 2)
Ответ на: комментарий от Shushundr

Значит для редактирования world надо использовать специальное ПО.

Нет, это значит только то, что не нужно править world руками одновременно с установкой софта. Если ты сделаешь опечатку в названии пакета, тебе portage потом об этом сообщит и скажет, что world ссылается на пакет «имярек», которого не существует, и ты пойдешь и исправишь свой косяк.

что там в файле world сказать не могу

А просто открыть его в редакторе (ничего не меняя) религия не позволяет?

annulen ★★★★★
()
Ответ на: комментарий от Shushundr

Comments or changes in order of packages will be lost

Проблему с отсутствием комментариев можно решить применением пользовательских сетов (/etc/portage/sets). Создаешь файл со списком пакетов, которые нужны тебе для определенной задачи, называешь понятным тебе именем, содержимое файла представляет собой список пакетов, как в world, но может содержать комментарии. При выборе этого сета все пакеты устанавливаются и не дублируются в world. Получается модульная система, в которой легче ориентироваться, особенно если твой world разросся до огромных размеров

annulen ★★★★★
()
Ответ на: комментарий от annulen

Проблему … можно решить

Если бы можно было решить, её бы решили. Нет такой софтины, в которой пользователь бы записывал на память и для всемирной статистики, в какой ситуации и для каких целей он установил ту или иную программу. Но её не решили.

можно решить применением пользовательских сетов

Если бы пользовательские сеты применяли, к ним бы была внятная документация, а ты бы привёл на неё ссылку. А в документации были бы конкретные примеры что и как писать и как раскладывать по директориям в разных случаях. Например, могут ли эти пользовательские сеты находится в профиле? а файл /var/lib/portage/world_sets можно помещать в профиль?

Рассмотрим имеющуюся документацию: https://wiki.gentoo.org/wiki//etc/portage/sets

Инструкций по настройке нет.

Shushundr ★★★★
() автор топика
Ответ на: комментарий от Shushundr

Если бы можно было решить, её бы решили.

И таки решили

Нет такой софтины, в которой пользователь бы записывал на память и для всемирной статистики, в какой ситуации и для каких целей он установил ту или иную программу.

А на хрена нужна такая статистика? Разные люди даже один и тот же софт используют по-разному. Ты сам можешь сгруппировать софт по своим предпочтениям. Но есть и готовые сеты, например для установки Steam.

Инструкций по настройке нет.

Все там есть, ты просто слепой или читать не умеешь. В первом же абзаце приведен пример с файлом gpu-stack, его содержимым, и как его включить.

annulen ★★★★★
()
Ответ на: комментарий от Shushundr

В оверлее никуда. Сеты ссылаются на пакеты, которые могут относится к разным оверлеям. Поместить сет в оверлей было бы настолько же странной идеей, как поместить в оверлей файл package.use или package.accept_keywords - это локальные пользовательские настройки.

annulen ★★★★★
()
Ответ на: комментарий от Shushundr

Но в оверлей можно поместить «виртуальный» ебилд, ссылающийся на группу пакетов и, при необходимости, предъявляющий требования к их версиям и юз-флагам

Пример: https://gitweb.gentoo.org/repo/gentoo.git/tree/lxqt-base/lxqt-meta/lxqt-meta-1.2.0.ebuild

annulen ★★★★★
()
Последнее исправление: annulen (всего исправлений: 1)
Ответ на: комментарий от annulen

Я рассматривал ситуацию с точки зрения «написать софтину типа менеджера пакетов, чтобы она сохраняла сценарии использования в виде комментариев в конфигах». Создание метапакета/метапакетов - это другое.

USE-флаги и KEYWORDS отлично в оверлей помещаются, всегда так делаю. Я для этого оверлей и завёл, чтобы их хранить там одинаковыми для разных машин.

Shushundr ★★★★
() автор топика
Ответ на: комментарий от Shushundr

USE-флаги и KEYWORDS отлично в оверлей помещаются, всегда так делаю. Я для этого оверлей и завёл, чтобы их хранить там одинаковыми для разных машин.

Это как, через profile что ли? Так в profile можно и список пакетов задать, как делают системные профили

annulen ★★★★★
()
Ответ на: комментарий от Shushundr

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

Звучит сложно, и при этом непонятно, кому и зачем такое может понадобиться, когда все можно сделать путем редактирования текстовых файлов.

annulen ★★★★★
()
Ответ на: комментарий от Shushundr

Если ты правильно пользуешься пакетным менеджером, world у тебя будет небольшой. Там только софт, который ты поставил сам, без зависимостей.

Как правильно пользоваться? Делать --oneshot если тебе надо условно пересобрать одну из зависимостей и НЕ делать --oneshot, если ты осознанно ставишь нужную тебе программу.

nebularia ★★★
()
Ответ на: комментарий от Shushundr

Ты накручиваешь и усложняешь. Заглянуть в world файл для того чтобы просто посмотреть «что там» можно, это ни на что не повлияет, кроме психики.

Редактировать его руками я не предлагал, я предлагал воспользоваться regenworld для его регенерации из логов портажа, либо использовать emerge --select bla-bla\blablabla для внесения в world того чего там почему то нет у тебя, хотя оно обязано там быть. Это тоже штатный способ редактирования world.

Ну и наконец, редактировать world руками МОЖНО, хотя это и неправильно, просто не нужно этого делать в момент когда работает portage, например что то ставится, удаляется, чистится и т.п.

Но это всё тебе уже выше понаписали.

Jameson ★★★★★
()
Ответ на: комментарий от Jameson

Если бы я ничего не накручивал, разве я бы узнал ужасающую историю про то, как растущий питон насмерть задушил пользовательскую программу porthole?

Shushundr ★★★★
() автор топика
Последнее исправление: Shushundr (всего исправлений: 1)