eclean-pkg

Добрый день. Какой то косяк. Кто нибудь сталкивался?

author-server author # eclean-pkg
 * Building file list for packages cleaning...
Traceback (most recent call last):
  File "/usr/bin/eclean-pkg", line 833, in <module>
    try: main()
  File "/usr/bin/eclean-pkg", line 827, in main
    doAction(myaction, myoptions, exclude_dict=exclude_dict)
  File "/usr/bin/eclean-pkg", line 746, in doAction
    time_limit=myoptions['time-limit'])
  File "/usr/bin/eclean-pkg", line 644, in findPackages
    if exclDictMatch(exclude_dict,portage.cpv_getkey(mycpv)):
  File "/usr/bin/eclean-pkg", line 500, in exclDictMatch
    mycat = pkg.split('/')[0]
AttributeError: 'NoneType' object has no attribute 'split'

У меня такого нет. Версия

У меня такого нет.
Версия gentoolkit?

Текстовый редактор vi имеет два режима работы: в первом он пищит, а во втором — всё портит.

app-portage/gentoolkit-0.2.4.

app-portage/gentoolkit-0.2.4.5

поставил 9999 версию - такая

поставил 9999 версию - такая же ошибка.
причем на 3-х машинах одно и то же

Странно. Функции

Странно.
Функции exclDictMatch в качестве pkg передаётся не строка, а None. А вот почему…
Думаю, сто́ит отрапортоваться на bugs.gentoo.org

Текстовый редактор vi имеет два режима работы: в первом он пищит, а во втором — всё портит.

.

У меня /usr/portage/packages вообще нет, тестировать будем на вашей машине.
в файл /usr/bin/eclean-pkg вставьте две строки:

    for mycpv in clean_dict.keys():
        print "DEBUG mycpv='%s'" % mycpv
        print "DEBUG getkey='%s'" % portage.cpv_getkey(mycpv)
        if exclDictMatch(exclude_dict,portage.cpv_getkey(mycpv)):
            # exclusion because of the exclude file
            del clean_dict[mycpv]
            continue

Это подпись, которую невозможно истолковать неправильно

DEBUG

DEBUG mycpv='files/module-cfportage'
DEBUG getkey='None'

.

Удалось выяснить следующее:
в portage.cpv_getkey(mycpv) можно передавать только строки вида "x11-misc/googleearth-5.5", она отрезает версию и получается "x11-misc/googleearth"
в данном случае в неё почему-то передаётся абсурдное 'files/module-cfportage'. К несчастью, оно проходит через isValidCP !
Так что попробуйте КАЖДУЮ версию выше gentoolkit-0.2.4.5, вдруг хоть одна заработает :(

Как вариант - находите таких "виновников падения": locate files/module-cfportage
(у меня - /usr/portage/net-misc/cfengine/files/module-cfportage.tbz2)
удаляйте их (?), и запускайте eclean-pkg заново

Это подпись, которую невозможно истолковать неправильно

спасибо, помог второй вариант

спасибо, помог второй вариант

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

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