Linux и Chromium

Вот так “работает у меня Chromium. Сборка бинарная. Некоторые сайты он отображает, большинство нет.
В динамике это выглядит так – вводим адрес, грузится страница, рендерится, через секунду-пол она перекрывается этой фигней. Если нажать Ctrl + T (открыть новую закладку), то сразу получаем эту страницу.
Раньше Хром “радовал” меня падениями при попытке открыть локально картинку в формате JPEG. В консоль и лог ничего не писал. Просто тихо падал. С другими форматами у него проблем я не замечал.
За приличное время использования Chromium (тогда он еще работал, хотя периодически и доставал сообщениями о недоступности страницы) я не нашел ничего сильно выдающегося относительно других браузеров.

Так что теперь я снова пересел на “тормозной” Firefox + Vimperator + NoScript + Flashblock.

Запуск процесса

Я использую утилиту xhkeys для обработки мультимедийных клавиш. Иногда “залипает” клавиша и начинается запуск процесса без до тех пор, пока ядро не прибьет “лишние” процессы при нехватке памяти.

Что бы не запускались лишние копии процесса, я написал такой скрипт:

ps -ef | grep PROGRAM | grep -v grep >/dev/null ; if [ $? -eq 1 ] ; then PROGRAM; fi

Оверлеи в Gentoo, полезная хитрость

При подключении дополнительных оверлеев с помощью утилиты layman в дереве появляется много не нужных пакетов/версий. Которые могут (и такое бывает не редко) мешать другим пакетам из других оверлеев, или просто не подходить под ваши требования.
Один из постоянных посетителей LOR под ником KRoN73 подсказал удобное и простое решение. В систему подключаются необходимые оверлеи, но не делаются доступными для emerge. А по мере необходимости нужный пакет добавляется в локальное дерево симлинком.

В /etc/make.conf добавляем путь к локальному оверлею:

PORTDIR_OVERLAY="/usr/local/portage"

В дальнейшем в него будем добавлять симлинки на нужные пакеты.

В /etc/eixrc добавляем:

source /usr/local/overlays/layman/make.conf

Теперь в переменной $PORTDIR_OVERLAY находится список оверлеев, которые были подключены с помощью layman.
Теперь туда же (/etc/eixrc) добавляем строки:

ADD_OVERLAY="
/PATH/TO/YOUR/OWN/OWERLAY
$PORTDIR_OVERLAY
"

После таких манипуляций eix будет знать о всех пакетах в дереве и оверлеях, а emerge будет видеть только те пакеты, которые вы подключили с помощью симлинка.

SSH: авторизация по ключу

На локальной машине (та, с которой хотим получить доступ к серверу) создаем пару ключей:

andrey@localhost ~ $ ssh-keygen -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key (/home/andrey/.ssh/id_dsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/andrey/.ssh/id_dsa.
Your public key has been saved in /home/andrey/.ssh/id_dsa.pub.
The key fingerprint is:
7a:aa:7a:3a:9a:ba:6a:4a:2a:da:2a:2a:8a:2a:4a:3a andrey@localhost

Поле passphrase оставляем пустым.

В итоге получим два файла:

andrey@localhost ~ $  ls -l ~/.ssh
-rw-------    1 andrey     users          526 Nov  10 01:00 id_dsa
-rw-r--r--    1 andrey     users          330 Sep  10 01:00 id_dsa.pub

Размещаем файл id_dsa.pub на сервере, на котором хотим авторизироваться используя ключ:

andrey@localhost ~ $ scp id_dsa.pub andrey@SERVER_ADDRESS:~/

Используйте любой удобный для вас способ.

Теперь логинимся на сервер под тем пользователем, для которого делаем авторизацию по ключу. И помешаем наш публичный ключ в ~/.ssh/authorized_keys:

$ mkdir ~/.ssh
$ chmod 700 ~/.ssh
$ touch ~/.ssh/authorized_keys2
$ chmod 600 ~/.ssh/authorized_keys2
$ cat ~/id_dsa.pub >> ~/.ssh/authorized_keys2
$ rm ~/id_dsa.pub

Готово, можно проверять:

andrey@localhost ~ $ ssh andrey@SERVER_ADDRESS

Если все правильно, то пароль запрошен не будет.

Xmonad – функциональный оконный менеджер

Статья Ивана Веселова xmonad: функциональный оконный менеджер очень доступно рассказывает о возможностях и настройке тайлового WM Xmonad.

Автор указывает следующие уникальные характеристики:

  • стабильный, быстрый, лёгкий и простой
  • написан на чисто функциональном языке Haskell
  • возможность работы без использования мыши
  • поддержка Xinerama (многоэкранные конфигурации)
  • поддержка плавающих окон, табов и декораций
  • интеграция со средами GNOME и KDE
  • индивидуальные компоновки окон на каждом рабочем столе
  • огромная и постоянно растущая библиотека расширений
  • развёрнутая и подробная документация
  • большая и активная команда разработчиков, дружелюбное сообщество

CPU Statistic History

Как и обещал, выкладываю свой CPU-монитор, который я написал для Ion3. Естественно его можно использовать для любого WM.
Плюсы – он делает все то, что нужно было мне 😉
Минусы – конфигурация размера окна и цветов не вынесена в конфигурационный файл, но настоящего джедая это не должно отпугнуть.

Скачать CPU Statistic History, лицензия GPL v2.

Проект на Sourceforge – CPU Stat Graph.

Кодировка в lftp

Иногда приходится работать с ftp-сервером, у которого кодировка отлична от кодировки в системе. В lftp смена кодировки делается просто:

 :/> set ftp:charset windows-1251
1 2 3 4 5 21