logo

muhas.ru — это просто блог…

О linux, о используемых или просто понравившихся инструментах, вобщем обо всем что окружает мою аскетичную компьютерную жизнь и показалось достойным упоминания или заметки «на память»

Framebuffer на MSI U100 в Archlinux: продолжение

Всё оказалось ещё вроще чем я писал в прошлой заметке — В ArchLinux текущее ядроо 2.6.30 и в нём уже есть поддержка KMS (видеокарточки от intel поддерживаются на ура), и всё действия сводятся к дописыванию в /boot/grub/menu.lst параметра к ядру i915.modeset=1 и прописыванию модулей intel_agp и i915 в /etc/rc.conf
И после сих нехитрых манипуляций ядро само ловит нужное разрешение.

Хотя по агентурным данным mplayer с таким фреймбуфером (пока) не работает, но несомненный плюс такого метода в том что иксы запускаются без "моргания" и как мне показалось несколько быстрее.


Спасибо vD отписавшемуся в предыдущей заметке в комментариях за терпеняе, разъяснения и помощь

Framebuffer на MSI U100 в Archlinux

Предистория
Дело в том что в grub нет возможности задать режим фреймбуферу отличный от 640x480, 800x600, 1024x768 и 1280x1024, а на msi wind матрица 1024x600 и при 800x600 выглядит всё немного растянуто, да и глаза напрягает. В итоге решил найти метот который бы позволил задать разрешение 1024x600 на ноутбучной карточке (intel 945GM).

Поиски
Поиски вели в бредни по патчинью grub2, полез в aur и нашел grub2-915resolution, но сей grub намекает на отказ от ext4 чего я делать не был намерен, после поиска патча на ext4 на эту версию grub и патча 915resolution на grub2 уже поддерживающий ext4 (в ArchLinux он уже на ext4 пропатчен) решил отказаться от сего метода - надоело искать. Потом вспомнил о 915resolution
Посмотрел в aur и нашел 915resolution-static который патчит видео BIOS для поддержки нужного нам режима — в моем случае 1024x600. И с ним всё оказалось нетривиально но до безобразия просто.

Рецепт
yaourt -S 915resolution-static v86d
Первый пакет собираем из aur, второй лежит в extra. После этого редактируем два файла /etc/modprobe.d/uvesafb.conf(при необходимости создать) и /lib/initcpio/hooks/915resolution дабы они выглядели как показано ниже (естественно что делать это надо от пользователя root).

Первый
options uvesafb mode_option=1024x600-32 scroll=ywrap

Второй
run_hook ()
{
  msg -n ":: Patching the VBIOS..."
  /usr/sbin/915resolution -c 945GM 5c 1024 600
  msg "done."
}

После сих действий добавляем в /etc/mkinitcpio.conf нужные хуки (HOOKS="base udev 915resolution v86d остальные") и запускаем (опять же от суперпользователя) mkinitcpio -p kernel26
Как только образ initrd соберется можно уходить в ребут и наблюдать приятную глазу консоль во фреймбуфере с разрешением в 1024х600, правда логотип ArchLinux при загрузке мы не увидем, ибо uvesafb будет включатся несколько позже.

В общем всё не так сложно как я об этом читал в сети, к тому же grub вообще не пригодился.

PS. Кстати, про msi wind u100 есть описание в ArchWiki так же как и на msiwind.net описание ArchLinux. Но про framebuffer там не слова — я что один арчевод работающий по-большей части в консоли не запуская иксов?

PPS. Если есть из читающих Арчевод с желанием запихнуть это в wiki, то просьба запихнуть, а то я с вики плохо дружу, чаще порчу всё — как-то вообще не сложилось с wiki-редактированием

MCabber: количество непрочитанных сообщений в GNU Screen

Вообще не только в screen, а где угодно. Но у меня это именно в screen, поэтому и показываю на его примере.

В настройках mcabber есть опция statefile для которой указывается файл в котором будут построчно сохранятся списки адресов приславших вам сообщение. Как только сообщение будет прочитано адресат из этого списка пропадает, если нет ниодного непрочитанного сообщения то и указанного файла не существует. Для работы опции statefile необходимо включить опцию logging (так же эта опция нужна и для истории сообщений)

Редактируем ~/.mcabber/mcabberrc
set logging = 1
#дальнейшие параметры логированиия  
set statefile = ~/.mcabber/mcabber.state

И пишем небольшой скрипт который будет вызываться из screen. У мну в скрипте (извиняюсь за то что он на zsh) считается количество строк, вообще можно проверять наличие файла — если файл есть значит есть и сообщения.
#!/bin/zsh

MCABBER_NO=`cat ~/.mcabber/mcabber.state &>/dev/null|wc -l`
[[ "$MCABBER_NO" -gt "0" ]] && echo "$MCABBER_NO message"
exit 0

Как вызывать внешние команды hardstatus screen'а я уже писал
В .screenrc дописываем backtick номер 1 1 /путь/до/скрипта ну и в нужное место hardstatus вставляем %номер`. У меня сделано жирным красным мигающим текстом %{+Bb r}%3`%{-Bb d.}
количество непрочитанных из mcabber в screen

Шпаргалки по css3 и html5

Не мог не поделиться сими замечательными шпаргалками.

Шпаргалка содержащая все поддерживаемые на данный момент теги HTML5, их
описания, атрибуты, и поддержка в HTML4 скачать

Список свойств, селекторов и допустимых значений в текущей спецификации CSS3 скачать

Неразбериха в алиасах

Бывает так что какой-нить алиас равен команде, т.е alias ls='ls -F --color=auto' или alias df='df -h'. Но бывает необходимость воспользоватся не алиасом а именно командой, т.е. в приведенных примерах что бы ls был не цветным и df показывал размер в виде блоков. unalias использовать не вариант по той причине что после него наш алиас уже не будет работать, но предусмотрительные создатели шелов (по меньшей мере zhs и bash) позаботились о таком случае.
Временно отменить выполнение алиаса можно так: \ls и \df