eselect мусорит в файловой системе

Краткое гугление результатов не дало. Никто не в курсе почему eselect мусорит в файловой системе? Например, симлинки для emacs:

lrwxrwxrwx 1 root root  8 Май 31 13:26 /usr/bin/emacs -> emacs-23
lrwxrwxrwx 1 root root 20 Май 31 13:26 /usr/share/man/man1/emacs.1.bz2 -> emacs-emacs-23.1.bz2

Почему бы не сделать так чтоб eselect записывал эти симлинки в /var/db как принадлежащие пакету eselect-emacs?

С gcc дела еще хуже обстоят, для него eselect'а нет. И мусорит он не симлинками.

гм вы серьезно?) к слову а

гм вы серьезно?)

к слову а если у вас бинарник emacs будет менять версию вы будите каждый раз "вспоминать" какую версию использовать?
man gcc-config и ради бога почитайте немного handbook emerge --depclean чистит мусор....
Или я что-то недопер и симлинки остаются после удаления пакета?

semlanik написал(а): гм вы

semlanik написал(а):
гм вы серьезно?)

к слову а если у вас бинарник emacs будет менять версию вы будите каждый раз "вспоминать" какую версию использовать?
man gcc-config и ради бога почитайте немного handbook emerge --depclean чистит мусор....
Или я что-то недопер и симлинки остаются после удаления пакета?

я ж не сказал что эти ссылки не нужны, они обязательно нужны, но они должны принадлежать какому-нибудь пакету(видимо соответствующему eselect-*). Это нужно для того, чтоб при удалении emacs у меня эти симлинки удалились, а не остались в виде мусора.

Каким образом emerge --depclean может удалить какие-либо файлы не принадлежащие ни к какому пакету?

последнее относилось к gcc,

последнее относилось к gcc, думал жалуетесь на лишние версии, вы кстати уверены что файлики никому не принадлежат в gcc и в целом не нужны?

Насчет симлинков имхо это скорее проблема emerge. Попробуйте emerge -v emacs опцией посмотреть кто их создает. имхо eselect их меняет, а emerge может и не удалить файлы которые поменяла другая программа. в общем действительно кривовато....

для прояснения ситуации можно

для прояснения ситуации можно воспользоваться вот такой штукой:

find /usr/bin/ | qfile -o -f -

это выведет список файлов в /usr/bin, которые не принадлежат ни к какому пакету.

Среди них можно найти например файл /usr/bin/emacs который создался eselect emacs ...
И куча файлов от gcc-config, например /usr/bin/g++

Эти файлы действительно не принадлежат ни к какому пакету.

ну без g++ ваша система

ну без g++ ваша система теоретически - нежелец. так что на него грешить не надо, его удалять в любом случае врядли придется.)

я вполне могу на нетбуке

я вполне могу на нетбуке например удалить gcc, собирать пакеты на другом компе и устанавливать их в виде бинарников, в любом случае к делу это отношения не имеет

А ты пробовал ? :) а то как

А ты пробовал ? :)
а то как бы libstdc++ это пакет gcc

Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)

emerge app-misc/symlinks

И спокойно удаляете симлинки, "свободно висящие" в пустоте.
Хотя можно и find'ом... Тока я как-то побаиваюсь.

не пробовал) это было

не пробовал) это было теоретическое умозаключение) ну вобщем не важно, может и нельзя

Вобщем фиг с ним с gcc, но

Вобщем фиг с ним с gcc, но eselect то вполне мне кажется возможным улучшить. В итоге никто так и не сказал не видел ли каких-нибудь обсуждений по этому поводу?

Нас же хлебом не корми дай

Нас же хлебом не корми дай поспорить ;) На самом деле имхо это баг. и вполне правомерно написать в багзиллу, на gcc не стоит, а вот в емаксом косяк. Может разработчики чего умного скажут.

Вобщем, при удалении пакетов

Вобщем, при удалении пакетов вроде emacs или ruby симлинки таки удаляются, а сделано это для каждого пакета своим костылем, например:

eselect ruby cleanup
eselect emacs update ifunset

ну и понятное дело, что время от времени из за ошибок разработчиков некоторые файлы таки будут оставаться в системе на совсем. видел на багзилле несколько багов вроде eselect-... stale symlink ...

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".