On Sat, Jan 21, 2012 at 09:38:17AM +0200, Michael Shigorin wrote: > On Thu, Jan 19, 2012 at 04:10:14PM +0400, Dmitry V. Levin wrote: > > > > > > $ rpmquery --lastchange gcc4.5 > > > > > Сегодня вылезло в posttrans: > > > > > join: /tmp/alternatives-update.avail.e6MULS:18: без сортировки: /usr/bin/i586-alt-linux-g++ /usr/bin/i586-alt-linux-g++-4.5 > > > > А кто у нас нынче мейнтейнер alternatives-update? ;) > > > Тот, кто фиксил join usage :] "Патч не мой, я только приложил". > > > Ну или хоть что по g++--ной части изменилось? > > Вес альтернативы, т.е. ничего. > > Похоже, это последствия вылезшей в процессе постепенного перехода > на UTF-8 каши в локали (export LC_ALL в обёрточном скрипте > шотката, запускающего в итоге uxterm): > > + locale > LANG=ru_RU.KOI8-R > LC_CTYPE="ru_RU.UTF-8" > LC_NUMERIC="ru_RU.UTF-8" > LC_TIME="ru_RU.UTF-8" > LC_COLLATE="ru_RU.UTF-8" > LC_MONETARY="ru_RU.UTF-8" > LC_MESSAGES="ru_RU.UTF-8" > LC_PAPER="ru_RU.UTF-8" > LC_NAME="ru_RU.UTF-8" > LC_ADDRESS="ru_RU.UTF-8" > LC_TELEPHONE="ru_RU.UTF-8" > LC_MEASUREMENT="ru_RU.UTF-8" > LC_IDENTIFICATION="ru_RU.UTF-8" > LC_ALL=ru_RU.UTF-8 > > т.е. выставления LC_COLLATE=C в /usr/share/alternatives/functions, > который включается /usr/bin/alternatives-update, который дёргается > /usr/lib/rpm/alternatives.filetrigger, оказывается недостаточно. > > Как думаешь, unset LC_ALL там же уместно -- или это всё был > относительно безобидный local misconfiguration? 1. unset LC_ALL там же уместно 2. LC_ALL=ru_RU.UTF-8 это не такой уж и безобидный local misconfiguration 3. патч на alternatives-update: --- alternatives/alternatives-update +++ alternatives/alternatives-update @@ -178,6 +178,7 @@ do #all other to update # echo "try to update:" + sort -k1,1 -o $AVAIL $AVAIL cat $CHANGES|cut -f3|sed $sed_options '/[[:print:]]/! d'|sort -u|join - $AVAIL| (REPEAT=0 while read i -- ldv