Portage 2.2 sets (сеты)
Почти с самого начала использования gentoo, использую нестабильный portage версии 2.2. Недавно решил опробовать одну из его фич – сеты.
Сеты – это набор пакетов, объеденённых под одним именем. Что-то вроде мета-пакетов, но удобнее, так как не надо писать ebuild со многими буковками, а просто нужно перечислить список нужных пакетов, или других сетов, входящих в свой.
Читать полностью »
kms(kernel mode setting) он intel
Решил на eeepc попробовать такую штуку. Эта штука позволяет ядру управлять разрешением экрана.
Для того, чтобы оно работало, нужно включить KMS в ядре. Я вкомпилил вместе с дровами жёстко. На eeepc видеокарта intel встроенная. Также, нужно убрать все фреймбуфферы, но поддержку самого FB оставить. Также включил поддержку декораций фреймбуфера для сплеша.
Для начала переделал конфиг сплэша и картинку под разрешение 1024×600
Сделал генкернелом initrd с бутсплешом, перезагружаюсь, и ядро выбирает само нужный режим для консоли. Иксы работают, переключение в консоль происходит мягко, без задержки и моргания. Я доволен
eix
Перешёл с esearch на eix. И то и то – утилиты для быстрого поиска в портежах. Eix, как оказалось, намного быстрее обновлят свою базу.
В eix (как и в esearch) есть “встроенная” команда для обновления портежей: eix-sync. Но, в отличии от esearch (esync), умеет делать не только emerge –sync, но и layman -S.
Для этого, в конфиг (/etc/eixrc) прописал EIX_SYNC_OPTS='*'.
Asus F5RL, вебкамера и gentoo
Являюсь обладателем ноутбука Asus F5RL. В то время, как на нём стояла kubuntu, встроенная вебкамера работала и показывала меня. После того, как я поставил gentoo, работать камера отказалась.
Собственно, она мне была не нужна, поэтому я и не обращал внимания на неё. Но сейчас вот решил установить skype и камера мне понадобилась. А “ядрёного” драйвера для неё нету.
lsusb определяет камеру вот так:
Bus 001 Device 004: ID 174f:6a31 Syntek Web Cam - Asus A8J, F3S, F5R, VX2S, V1S
Как оказалось, для этой камеры есть отдельный драйвер – stk11xx, и для него даже есть ебилд(ebuild).
В основном дереве портежей (да и в оверлеях тоже) его нету. Поэтому, чтобы собрать его, необходимо создать локальный оверлей, и положить в него этот ебилд. Скачать его можно отсюда.
У меня этот локальный оверлей выглядит приблизительно вот так:
laptop ~ # ls -la /usr/overlays/my/media-video/stk11xx/
итого 8
drwxr-xr-x 2 root root 112 Сен 15 00:42 .
drwxr-xr-x 3 root root 72 Сен 15 00:40 ..
-rw-r--r-- 1 root root 721 Сен 15 00:41 stk11xx-2.1.0.ebuild
laptop ~ #
В /etc/make.conf надо добавить PORTDIR_OVERLAY=”/usr/overlays/my”
После надо зайти в директорию с файлом ебилда и сказать ebuild stk11xx-2.1.0.ebuild digest чтобы создать файл с чексуммой.
Теперь установим (emerge stk11xx), и загрузим модуль (modprobe stk11xx).
Вуаля, теперь скайп видит вебкамеру, и использует её по назначению.
Также модуль можно добавить в автозагрузку. Делается это в файле /etc/conf.d/modules
Ccache
Открыл для себя такую вещь, как ccache
Теоритечески, позволяет экономить время для компиляции пакетов.
Как включить:
-
Ставим.
emerge ccache -
Прописываем в /etc/make.conf
FEATURES="ccache"
Отныне emerge будет использовать ccache. -
По умолчанию, кэш будет лежать в /var/tmp/ccache и иметь ограничение в 2 гигабайта. Чтобы изменить это, можно прописать в том же /etc/make/conf параметры CCACHE_DIR и CCACHE_SIZE. Подробнее в man make.conf
-
Теперь emerge будет собираться с использованием ccache. Но я захотел закэшить также сборку ядра генкернелом. Для этого в файле /etc/genkernel.conf прописал параметр KERNEL_CC=”/usr/lib/ccache/bin/gcc”. Теперь и генкернел использует ccache. Правда, он его по умолчанию кладёт отдельно, в директорию рута.
Чтобы это поменять, создал файл /etc/env.d/02ccache, и прописал там директорию CCACHE_DIR=”/var/tmp/ccache”. Также, если ограничение не в 2 гигабайта, то его нужно продублировать там же. (впрочем, я думаю, при наличии этих данных в /etc/env.d/ , в make.conf их указывать и не нужно)
Настройка mrtg на CentOS
Потребовалось вот снимать графики с локальных интерфейсов.
Читать полностью »
Бэкап файла /etc/group
Для меня оказалось открытием, что FreeBSD автоматически бэкапит /etc/master.passwd, /etc/group и что-то ещё. Хранятся копии файлов после 2-х последних правок в /var/backups.
UPDATED: Бэкапится не после правок, а раз в сутки.
А то на одном из “подведомственных” серверов в /etc/group оказался каким-то образом /etc/named.conf
Пересборка всех иксовых драйверов
После обновления иксов, часто необходимо пересобрать все драйвера к ним. А иначе просто всё отвалится. Я делаю это такой командой.
equery -q l 'x11-drivers/*' | awk '{print "=" $1}' | xargs emerge -1
Настройка дополнительных клавиш мыши
Как я писал, я купил многокнопочную мышь. Все кнопки мыши видятся через xev. Теперь надо на эти кнопки прикрутить какое-либо действие.
Я решил сделать, чтобы на нажатие боковых кнопок (их 2) песни в плеере перематывались следующая/предыдущая. Сделал я это через xbindkeys и dbus.
Для начала о dbus. В качестве плеера я использую qmmp. У него есть управление через dbus. То есть можно из командной строки управлять им. Посылать сигнылы в dbus можно через qdbus. Например для переключения на следующую композицию используется следующая команда
/usr/bin/qdbus org.mpris.qmmp /Player Next
Аналогично для переключения на предыдущую
/usr/bin/qdbus org.mpris.qmmp /Player Prev
Теперь, как это привязать к нажатиям кнопок мыши. Они числятся 8-й и 9-й кнопкой. Для этого используется xbindkeys. Я создал файл ~/.xbindkeysrc со следующим содержанием.
"/usr/bin/qdbus org.mpris.qmmp /Player Next"
b:9
"/usr/bin/qdbus org.mpris.qmmp /Player Prev"
b:8
Запустил xbindkeys, и, вуаля, кнопки перематывают песни
И добавил xbindkeys в автозапуск.
Ошибки с ключами репозиториев в debian
Иногда при обновлении списка пакетов, либо при добавлении нового репозитория, вылазит такая ошибка
Reading package lists... Done W: There is no public key available for the following key IDs: 9AA38DCD55BE302B W: GPG error: http://ftp.fr.debian.org etch Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 9AA38DCD55BE302B W: You may want to run apt-get update to correct these problems
Чтобы исправить сиё надо выполнить
gpg --keyserver subkeys.pgp.net --recv-keys 9AA38DCD55BE302B && gpg --export 9AA38DCD55BE302B | apt-key add -
Чёрточка в конце обязательна


