Вылезло при попытке обновить с 3.5.13-alt4.M60T.1: 63: kdebase-kdm error: unpacking of archive failed on file /etc/X11/kdm: cpio: rename failed - Is a directory
Assigned To, что-то, не на того выставился, на сколько понимаю...
(В ответ на комментарий №0) > Вылезло при попытке обновить с 3.5.13-alt4.M60T.1: > > 63: kdebase-kdm error: unpacking of archive failed on file > /etc/X11/kdm: cpio: rename failed - Is a directory В рассылках обсуждалось! Нужно просто удалить текущий /etc/X11/kdm, вместо которого сейчас ставится ссылка на /usr/share/kde/config/kdm, где всё должно и лежит сейчас. После удаления всё обновится корректно.
Решение вида mv /etc/X11/kdm /etc/X11/kdm.bak apt-get install kdebase-kdm --reinstall очевидно, но это, всё же, баг. :-) Проблема решаема, в devel@ обсуждалось несколько раз. Я, в такую ситуацию, тоже попадал, c zyGrib: %triggerpostun -- zygrib < 5.0.6-alt2 # %_libdir/%binname/data must be symlink since 5.0.6-alt2 if [ -d %_libdir/%binname/data ] ; then if ! [ -L %_libdir/%binname/data ] ; then rm -rf %_libdir/%binname/data cd %{_libdir}/%{binname} ln -s %{_datadir}/%{binname}/data data fi fi
Ещё %post %post # if "data" missed then this first installation if ! [ -d %_libdir/%binname/data ] ; then cd %{_libdir}/%{binname} ln -s %{_datadir}/%{binname}/data data fi И в %files пришлось писать %ghost %_libdir/%binname/data Не так давно cas@ на эту же тему наступал, кажется, может быть, у него элегантнее... Сейчас позову его сюда, может скажет что.
(В ответ на комментарий №4) > %post > # if "data" missed then this first installation > if ! [ -d %_libdir/%binname/data ] ; then > cd %{_libdir}/%{binname} > ln -s %{_datadir}/%{binname}/data data > fi Тогда уж проще: %pre kdm test -d /etc/X11/kdm && rm -fr /etc/X11/kdm
"-d" не даёт разницы между каталогом и симлинком на каталог. rm -fr /etc/X11/kdm в любом случае приведёт к нужному результату ? А, вообще, хорошо ли конфиг убирать в /usr/share/kde/config/kdm ? Там никогда ничего руками править не нужно ? Может, правильнее, как раз, наоборот, симлинк в /usr/share/kde/config/ ?
(В ответ на комментарий №6) > "-d" не даёт разницы между каталогом и симлинком на каталог. rm -fr > /etc/X11/kdm в любом случае приведёт к нужному результату ? Не вопрос: test ! -L /etc/X11/kdm && rm -rf /etc/X11/kdm Конечно приведёт и даже нужно поскольку в новом выключается tsak, который по умолчанию включен но деблокирование там не работает, точнее я его таки обошёл. > А, вообще, хорошо ли конфиг убирать в /usr/share/kde/config/kdm ? Там никогда > ничего руками править не нужно ? Может, правильнее, как раз, наоборот, симлинк > в /usr/share/kde/config/ ? Неправиьно, поскольку системно /usr/share/kde/config/kdm есть всегда, является основным для горсти утилей связанных с KDM, из-за чего и эти перетрубации, а так-же эта директория лежит в корневом пакете, а не в *-kdm. Следовательно переброс ссылки назад породит странные зависимсти базового пакета на *-kdm.
А "-L" не делает разницы между симлинком на файл или на каталог. ;-) Так что правильно посредством -d выяснить, файл это, или каталог, а, потом, посредством -L, симлинк он, или настоящий.
(В ответ на комментарий №8) > А "-L" не делает разницы между симлинком на файл или на каталог. ;-) Это уже всёравно поскольку будет там или ссылка или директория, для чего "-L" достаточно.
(In reply to comment #2) > Нужно просто удалить текущий /etc/X11/kdm, вместо которого сейчас ставится > ссылка на /usr/share/kde/config/kdm, где всё должно и лежит сейчас. > После удаления всё обновится корректно. 1) не надо так делать, rpm4 крайне плохо относится к прыжкам каталог/симлинк; 2) конфиг в /usr/share -- нарушение FHS.
(В ответ на комментарий №10) > (In reply to comment #2) > > Нужно просто удалить текущий /etc/X11/kdm, вместо которого сейчас ставится > > ссылка на /usr/share/kde/config/kdm, где всё должно и лежит сейчас. > > После удаления всё обновится корректно. > 1) не надо так делать, rpm4 крайне плохо относится к прыжкам каталог/симлинк; > 2) конфиг в /usr/share -- нарушение FHS. Скажи это разработчикам, начиная с KDE3. Лично меня текущая ситуация устраивает. Если хочешь-можешь сделать правильнее — делай. Я и это не очень то хотел делать, когда попросили сделать kdmtheme рабочим.
Надо звать Турчина... :-) Может скажет что... Действительно, в kde4 есть два каталога с одноимёнными, и, при этом, разными файлами: /etc/X11/kdm4 и /usr/share/kde4/config/kdm
У меня использовался /etc/X11/kdm4 . /usr/share/kde4/config/kdm я вроде бы не паковал. Не помню уже.
Ой, отвечал про kde3 , а не про kde4 :-)
/usr/share/kde4/config/kdm -- балласт, уберу.
Исправлено.