LINUX.ORG.RU

Сообщения gentoo_root

 

[BUG] [Qt] [KDE] Плюсики в Dolphin

Известно, что при наведении на файлы в Dolphin на них появляются плюсики для выделения их. Заметил следующий баг: если переместить окно не за заголовок, а за пустое место где-нибудь посередине, то плюсики перестанут появляться до тех пор, пока не кликнуть на поле с файлами. Если же перемещать за заголовок, то баг не воспроизводится, и плюсики на месте. Воспроизводится на 2-х компах, Qt 4.7.4.

Копнув глубже, заметил, что обычно плюсики появляются, когда сигнал QAbstractItemView::entered(const QModelIndex &) обрабатывается слотом SelectionManager::slotEntered(const QModelIndex &). Но после перемещения окна за середину этот слот перестаёт вызываться, пока не кликнуть в поле с файлами (наследник QAbstractItemView).

Кто-нибудь знает некостыльное решение этого?

Чуть позже напишу в bugs.kde.org, когда зарегистрируюсь там и сформулирую это всё по-английски.

 , ,

gentoo_root
()

Oops

Копировал файлы по ssh через Wi-Fi и внезапно словил oops: http://pastebin.com/5GmDgiy5. Лог обрывается, дальше уже идёт лог следующей загрузки даже без перевода строки.

Сетевая карта Realtek RTL8187SE, ядро 3.1.6-pf-00, система 32-битная, oops произошёл на сервере ssh (это всё, в принципе, есть в логе). Также процессор работает на пониженном напряжении, редко наблюдаются полные зависания (перестают работать даже функции, обеспечиваемые биосом) при долгой и интенсивной компиляции чего-нибудь. Во время oops'а процессор был в разгоне.

Что это могло быть? Как предотвратить такое в дальнейшем?

Пойду прогоню memtest пока что. BTW, может, есть какой-нибудь memtest, работающий из Linux, чтобы память проверялась при пониженном напряжении на процессоре, чтобы дать более реалистичную картину?

gentoo_root
()

[qt][dbus] Не отправляются сигналы

Использую QDBusAbstractAdaptor, объявлен сигнал started():

class IControl: public QDBusAbstractAdaptor {
        Q_OBJECT
        Q_CLASSINFO("D-Bus Interface", "org.ude.application")

        // <...>

signals:
        void started();
}
Регистрирую интерфейс в main():
QDBusConnection::sessionBus().registerObject("/", &interfaceControl, QDBusConnection::ExportAllContents);
После этого qdbus видит сигнал, но при попытке вызвать из методов класса IControl «emit started();» сигнал на D-Bus не попадает. Если к нему подключить Qt-слот, то он вызывается, т.е. механизм сигналов и слотов Qt работает. Но ни dbus-monitor, ни qdbusviewer, ни другое приложение не видят вызов этого сигнала, значит, почему-то он не попадает на D-Bus. При этом правильно работает такая конструкция, посылая сигнал на D-Bus:
QDBusConnection::sessionBus().send(QDBusMessage::createSignal("/", "org.ude.application", "started"));
Собственно, ЧЯДНТ и как сделать, чтобы emit посылал сигнал и на D-Bus? Судя по документации на сайте, он это таки должен делать.

 ,

gentoo_root
()

[Xlib] UnmapNotify

Пишу оконный менеджер, столкнулся со следующей проблемой. Когда приходит событие UnmapNotify, мне нужно передать фокус другому окну, которое станет видимым после unmap'а данного окна. Вот код, реализующий это:

        case UnmapNotify: { 
                Window window = event->xunmap.window;
                // QList<Window> windowList;
                windowList.removeAll(window);
                if (!windowList.isEmpty()) {
                        XRaiseWindow(display, windowList[0]);
                        XSetInputFocus(display, windowList[0], RevertToParent, CurrentTime);
                }
                return true;
                }
Проблема в том, что если быстро закроются 2 окна подряд (например, подтверждение о сохранении файла в текстовом редакторе и сам текстовый редактор), то когда я попытаюсь сделать XRaiseWindow, появляется ошибка, что поднимаемое окно не существует, т.к. оно уже реально unmapped, но событие об этом ещё не обработано, т.к. обрабатывается предыдущее. Ошибка такая:
X Error: BadWindow (invalid Window parameter) 3
  Major opcode: 12 (X_ConfigureWindow)
  Resource id:  0x600026
X Error: BadWindow (invalid Window parameter) 3
  Major opcode: 42 (X_SetInputFocus)
  Resource id:  0x600026
Кто-нибудь знает, как бы предотвратить появление этой ошибки?

 

gentoo_root
()

Баг? Не могу запостить в тему

gentoo_root
()

Право на исполнение

max@laptop ~/temp $ cp /bin/ls .
max@laptop ~/temp $ ls -l ls
-rwxr-xr-x 1 max max 112652 Окт 11 19:22 ls
max@laptop ~/temp $ chmod -x ls
max@laptop ~/temp $ ls -l ls
-rw-r--r-- 1 max max 112652 Окт 11 19:22 ls
max@laptop ~/temp $ /lib/ld-linux.so.2 ./ls -l ls
-rw-r--r-- 1 max max 112652 Окт 11 19:22 ls
max@laptop ~/temp $ eix -I glibc
[I] sys-libs/glibc
     Available versions:  (2.2) (~)2.9_p20081201-r3!s 2.10.1-r1!s 2.11.3!s (~)2.12.1-r3!s 2.12.2!s (~)2.13-r2!s (~)2.13-r4!s **2.14!s **9999!s                                                                                                                                  
        {crosscompile_opts_headers-only debug gd glibc-omitfp hardened multilib nls profile selinux vanilla}
     Installed versions:  2.13-r4(2.2)!s(12:51:17 14.07.2011)(nls -crosscompile_opts_headers-only -debug -gd -glibc-omitfp -hardened -multilib -profile -selinux -vanilla)                                                                                                      
     Homepage:            http://www.gnu.org/software/libc/libc.html
     Description:         GNU libc6 (also called glibc2) C library

Как так получилось? Мне кажется, эту фичу уже выпиливали. Недавно ещё не работало.

gentoo_root
()

[Qt] QTreeView и QFileSystemModel — неправильное выравнивание текста

Имеется ‘QFileSystemModel *fsModel; QTreeView *treeView; QVBoxLayout *layout1’. Создаю так:

fsModel = new QFileSystemModel;
treeView = new QTreeView(this); // this — это QWidget *
fsModel->setRootPath("/");
treeView->setModel(fsModel);
treeView->setSelectionBehavior(QTreeView::SelectItems);
treeView->setSelectionMode(QTreeView::ExtendedSelection);
treeView->setAnimated(true);
treeView->setIconSize(QSize(24, 24));
treeView->setSortingEnabled(true);
treeView->sortByColumn(0, Qt::AscendingOrder);
treeView->setFrameStyle(QTreeView::NoFrame);
layout1->addWidget(treeView);
setLayout(layout1);

Выглядит это так: http://ompldr.org/vYW5ndg

Видно, что в колонке Size текст выравнивается по вертикали по верху, а в остальных по центру, поэтому получается, что текст не на одном уровне. Также в заголовке текст также выравнивается по верху, т.е. получается неровно. Хотелось бы, чтобы в ячейках во всех колонках текст выравнивался по центру (по вертикали), чтобы в заголовке он тоже выравнивался по центру (по вертикали) и чтобы заголовок был не таким высоким. Вот как это выглядит в Dolphin: http://ompldr.org/vYW5oMA

Вопрос: как сделать, чтобы было, как в Dolphin, т.е. заголовок QTreeView низкий, а текст во всех ячейках был выровнен по вертикали по центру?

 

gentoo_root
()

[не эта страна] В Украине отменён переход на зимнее время

Сабж. Ждём ебилдов для новой версии tzdata.

gentoo_root
()

DIR-825; 5 GHz Wi-Fi

Хочу завести на $SUBJ1 $SUBJ2. Прошивку (OpenWrt) с патчем на ядро собрал, прошил, настроил Wi-Fi в /etc/network/wireless с помощью ‘wifi detect’ и допиливания vim'ом. Вот мой конфиг для wlan1, который как раз 5 GHz:

config wifi-device  radio1
        option type     mac80211
        option country  FR
        option outdoor  1
        option channel  36
        option macaddr  MY:MA:CA:DD:RE:SS
        option hwmode   11na
        option htmode   HT20
        list ht_capab   SHORT-GI-40
        list ht_capab   TX-STBC
        list ht_capab   RX-STBC1
        list ht_capab   DSSS_CCK-40
        # REMOVE THIS LINE TO ENABLE WIFI:
        #option disabled 1

config wifi-iface
        option device   radio1
        option network  lan
        option mode     ap
        option ssid     'Gentoo'
        option encryption psk2
        option key      'my password'

Поднимается, вроде, нормально, ошибок нет, но ни с ай-пода, ни с нетбука сети не видно. Что я сделал не так и как это исправить?

И ещё такой вопрос — какой код страны вставить для Украины, и почему при вставке ‘UA’ ‘iwlist wlan1 chan’ не показывает никакие каналы?

Заранее спасибо.

gentoo_root
()

Как отключается дисковый кэш?

Поставил на роутер OpenWrt, а там нет кэша.

root@router:~# free
             total         used         free       shared      buffers
Mem:         61952        13608        48344            0            0
-/+ buffers:              13608        48344
Swap:            0            0            0
Даже в выводе free (free из busybox, если важно) написано не «-/+ buffers/cache», а просто «-/+ buffers». Как они отключили дисковый кэш? Где это настраивается?

Гугление выдало только результаты «кэш не отключается» и «кэш не нужно отключать». Я так понимаю, что здесь его таки нужно было отключать, чтобы можно было вырубать роутер выключателем. По poweroff он, кстати, не выключился.

Архитектура процессора MIPS, если важно.

gentoo_root
()

3-ий и 4-ый уровень в консоли

В иксах с недавнего времени стал пользоваться дополнительным набором типографских символов (««»…“”‘’—» и т.п.) в третьем уровне, который включаю нажатием AltGr. Где взять keymap для консоли, чтобы загрузив его я смог нажатием AltGr переключаться в 3-ий уровень и вводить в нём эти символы? Среди дефолтных не нашёл нужного (или плохо искал?).

Сейчас у меня загружен кеймап ruwin_cplk-UTF-8, в котором при нажатии AltGr почему-то вводятся русские буквы.

gentoo_root
()

Панель в консоли

Установил actkbd, теперь иксы не нужны, собираюсь перебираться обратно в консоль. Но хотелось бы какую-нибудь консольную панель, чтобы отображала всякие уровни батареи, громкости, частоту и т.п. Сейчас это у меня в промпте zsh, но есть недостатки — само не обновляется и занимает место многократно. Я же хочу консольную панель, чтобы _всегда_ была видна где-нибудь сверху (и не пропадала при открытии mc), занимала 1-2 строки и автоматически обновляла информацию раз в 5 секунд. Что-нибудь готовое уже есть? Что посоветуете?

// В Дебиане, помнится, были часы в правом верхнем углу (название забыл), которые сидели демоном и каждую секунду перемещали курсор вверх, обновляли часы и возвращали курсор обратно. С мигающим курсором выглядит ужасно; хотелось бы, чтобы нужная консольная панель не страдала этой проблемой.

gentoo_root
()

Не могу очистить поле «Дополнительная информация» в профиле

$SUBJ. Изменить могу, изменения появляются после Ctrl-F5. Полностью удалить содержимое не могу — не удаляется. Его вообще можно очистить самому (раньше же оно пустое было)? Или это может сделать только модератор со снятием скора?

gentoo_root
()

Посоветуйте роутер с ADSL-модемом

Мой ZyXEL умер, при соединении перезагружается, да и до этого были проблемы с отпаданием соединения DSL. В связи с этим ищу новый роутер D-Link (вроде бы, они лучше работают). От него нужна поддержка:

  • ADSL2+;
  • хотя бы 4 порта Ethernet;
  • WiFi с WEP и WPA (желательно);
  • DHCP-сервер с возможностью запоминать компьютеры по MAC-адресу сетевухи и давать им всё время один и тот же адрес;
  • NAT для проброса портов (желательно с возможностью изменять порт при пробросе, например, 6789-ой пробрасывать на 22-ой);
  • Firewall;
  • DynDNS;
  • ни в коем случае никакого USB.

Какую модель посоветуете, поддерживающую эти фичи? И ещё: какую ОС устанавливают на D-Link'и?

Заранее спасибо.

gentoo_root
()

emerge по sftp

Разогнал процессор на десктопе и решил использовать его для сборки системы на нетбуке. Тарить всё, переносить и собирать в чруте мне не хочется, поэтому я смонтировал / нетбука в каталог десктопа через sshfs (sftp). Смонтировал от рута, логинился по ssh рутом. Делаю туда chroot на десктопе, но вот незадача: все девайсы в /dev имеют major и minor номер 0 0, файлы из /proc не читаются (из /sys читаются). При попытке запустить emerge с любыми параметрами или без них пишет только «Недопустимая инструкция» после секундной задержки, причём независимо от значения $LANG и $LC_ALL в чруте, всегда на русском.

Как бы это побороть? А точнее, надо хотя бы запустить emerge, чтобы собирал в чруте, смонтированном по сети, и хотелось бы это сделать именно через sftp.

gentoo_root
()

[фичреквест] Уведомления

Мне кажется, было бы неплохо добавить в систему уведомлений новую фичу. Сейчас они приходят при непосредственных ответах на моё сообщение или же на все сообщения темы, если добавить её в избранное. Надо бы добавить ещё один вариант — получать уведомления на все сообщения ветки, начатой моим сообщением.

Как это выглядит: я написал сообщение, перед отправкой поставил галочку «Получать уведомления в этой ветке», отправил. Тут на моё сообщение отвечает некий пользователь A, мне приходит уведомление. Далее на моё сообщение отвечает пользователь B, мне приходит уведомление. Потом на сообщение пользователя A отвечает пользователь C — и мне тоже придёт уведомление, потому что я поставил соответствующую галочку. Далее на сообщение C может ответить D — мне тоже должно прийти уведомление. Но если пользователь D потом ответит не в ветке, начатой моим сообщением, а, например, ТСу, то мне НЕ должно прийти уведомление.

Мне кажется, такая фича была бы неплоха. Непосредственных уведомлений об ответах на мои сообщения бывает мало, а добавить тему в избранное и получать уведомления на все сообщения при этом бывает не нужно, да и их все надо будет открывать и проверять, не в моей ли они ветке. А с этой фичей если я запостил какое-то сообщение в чужой теме, мне ответили, ему тоже ответили, стали обсуждать, и я тоже смогу принять участие в обсуждении, получая своевременные уведомления. Галочку для этого можно сделать при отправке сообщения или же уже после отправки сообщения сделать под ним кнопку «Добавить в избранное», как под ОПами, чтобы можно было потом отписаться от уведомлений.

 

gentoo_root
()

Уведовление о подключении разъёма наушников

В конфиге ядра нашёл опцию «Support jack plugging notification via input layer» (CONFIG_SND_HDA_INPUT_JACK), включил её. Обнаружил, что при подключении/отключении наушников в разъём на нетбуке из /dev/input/event8 сыплются данные. Как бы их распарсить и задействовать для каких-нибудь интерактивных уведомлений (типа notify-send или пищания через pcspkr, короче, для запуска произвольного скрипта)? Может, есть готовая программа или хотя бы документация на это (если есть документация, написать сам смогу)?

Нужно это мне для того, чтобы знать, что разъём хорошо вставился, потому что бывает, что вставлю, а динамики не заглушаются из-за раздолбанного разъёма, и выпадает иногда. Да и в венде предустановленной эта фича была, а чем Линукс хуже.

gentoo_root
()

gnome-screensaver и gnome-bluetooth

Решил тут собрать гном 2. Раньше под Гентой в нём не работал (были всякие кеды, xfce, awesome), а в других дистрибутивах типа Дебиана гном нормально работал. Но внезапно столкнулся с неработающим сабжем. Есть ещё одна Гента ~x86 с гномом 3, там эти программы работают, как надо, а под Гентой x86 с гномом 2 возникают следующие проблемы:

  • gnome-screensaver не блокирует экран по истечении минуты. В настройках эта самая минута указана, обе галочки стоят. Пробовал все 4 варианта расстановки галочек и изменении минуты на 2 минуты, не помогло. Пробовал расмаскировать gnome-screensaver ~x86, не помогло. 'gnome-screensaver-command -a' работает, Ctrl-Alt-L тоже. gnome-session, gnome-setting-daemon, console-kit-daemon, gdm, dbus-daemon (оба) запущены.
  • gnome-bluetooth не может просматривать в nautilus файловую систему мобильного телефона через obexftp. При этом PAN работает, и если подключиться через PAN, то после этого можно смотреть obexftp, но если не подключаться через PAN, то bluetooth-applet выводит в консоль 'Failed to mount OBEX volume: Connection refused'. При этом на секунду телефон показывает в своём трее, что к нему подключились, а потом отключились. Под рутом тоже не работает. В гноме 3 всё работает. Ещё bluetooth-wizard не предлагал мне настроить DUN. Хотелось бы и эту фичу.

Что посоветуете, чтобы сабж заработал? Может, кто-то сталкивался?

PS. Ядро 3.0 на обеих системах, если это на что-то влияет. USE-флаги вроде выставлены те, что есть и нужны, но если надо, могу выложить.

gentoo_root
()

Firefox 5 падает на половине сайтов

Началось всё с того, что Firefox 4 на некоторых сайтах (например, http://webupd8.org/) падал в сегфолт. Если вовремя остановить загрузку, то Firefox не падал. Я на это тогда забил, т.к. подобные сайты не посещаю (иногда просто в гугле ссылка бывает на них). Теперь собрал пятый, перезапустил Firefox, половина моих вкладок не открылась. Теперь при входе на половину сайтов (например, http://github.com/ и http://webupd8.org/) Firefox 5 падает со следующим сообщением:

pure virtual method called
terminate called without an active exception
Аварийный останов
Причём это происходит и с бинарным www-client/firefox-bin, и с www-client/firefox.

Как это исправить? [Другие браузеры не предлагать]

И вдогонку: почему в диалоге версии (Firefox/Справка/О Firefox) написана версия 4.0.1, когда у меня 5.0?

gentoo_root
()

[arm] Сборка ядра под S5L8930

В общем, имеется девайс под arm'ом с процессором Samsung S5L8930. Начал конфигурировать ядро, в 'System Type/ARM system type' нет нужного процессора. Там есть другие Samsung'и, а S5L8930 нету. Что сделать, чтобы собрать под этот процессор? Есть ли какие-то патчи? Или здесь можно выбрать что-то другое? Почему нет варианта 'Generic'? В общем, ЧЯДНТ?

// Раньше никогда ядро под ARM не собирал.

 

gentoo_root
()

RSS подписка на новые темы