Title : OpenBSD - лёгкий тюнинг DWM и xterm
Author: Толстоевский
Date : 20 May 2022
OpenBSD - лёгкий тюнинг DWM xterm
i3, присутствующий в репозиториях, безусловно прекрасен, но душа моя жаждала dwm, присутствующего в портах Опёнка. Характерная для него аскетичность дефолта, конечно хороша, но удобств мне тоже хотелось, а именно: базовой информации в статусбаре, симпатичных цветов и регулировки громкости с клавиатуры. Собирал я его из портов, все изменения вносились в config.h.
Штош.
Цветовая схема
Тут банально - взял схему dracula из ентих вашых интернетов:
static const char col_gray1[] = "#282a36";
static const char col_gray2[] = "#ffb86c";
static const char col_gray3[] = "#ff79c6";
static const char col_gray4[] = "#ffb86c";
static const char col_cyan[] = "#282a36";
static const char *colors[][3] = {
/* fg bg border */
[SchemeNorm] = { col_gray3, col_gray1, col_cyan },
[SchemeSel] = { col_gray4, col_cyan, col_gray2 },
};
Регулировка громкости
OpenBSD использует sndio для управления звуком. Решил так и оставить - не нужен нам пшшшаудио ваш.
Изменяем тот же config.h дальше:
Вначале импортируем поддержку мультимедиа-клавиш:
#include <X11/XF86keysym.h>
Я поместил в самом начале файла, так кошернее.
Дальше добавим команды, дёргающие интерфейс sndio (логичнее разместить там же, где termcmd:
static const char *raisevolume[] = {"sndioctl output.level=+0.1", NULL };
static const char *lowervolume[] = {"sndioctl output.level=-0.1", NULL };
И объявим вызов этих команд с помошью нужных клавиш (само собой в блоке с клавиатурными сокращениями):
{ 0, XF86XK_AudioLowerVolume, spawn, {.v = lowervolume } },
{ 0, XF86XK_AudioRaiseVolume, spawn, {.v = raisevolume } },
That's all, folks! make&&make install
(ну разве что я лично предпочитаю использовать Super вместо Alt для упарвления окнами - для этого всё там же надо заменить Mod1Mask на Mod4Mask).
Статусбар
Товарищи из suckless предлагают пихать всю нужную информацию через xsetroot, а кто я такой, чтоб с ними спорить?
Создаём файлик ~/.local/bin/dwmstatus (ах, да, я использую bash - он есть в репозитории - с родным для Опёнка ksh я не подружился) :
#!/usr/local/bin/bash
while true; do
datee=$(date +"%a, %Y-%m-%d")
timee=$(date +"%H:%M")
getvolume=$(sndioctl | grep output.level | cut -d "=" -f2)
temp=$(sysctl hw.sensors.lm1.temp1 | cut -d "=" -f2 | awk '{print $1}')
xsetroot -name "📆 $datee 🕖 $timee | 🔊 $getvolume | $temp "
sleep 2
done
Теперь просто допишем запуск dwm и dwmstatus в ~/.xsession:
.local/bin/dwmstat&
exec dwm
Готовенько, можно заходить в красивый DWM. Но минуточку, к красивому оконному манагеру должен прилагаться симпатичный терминал, а в коробке у нас только xterm, по умолчанию выглядящий как соседова тёща с похмелья.
Xterm
В файле ~/.Xresources достаточно проделать что-то подобное (в приведённом примере, опять же, цветовая схема Dracula):
*.foreground: #F8F8F2
*.background: #282A36
*.color0: #000000
*.color8: #4D4D4D
*.color1: #FF5555
*.color9: #FF6E67
*.color2: #50FA7B
*.color10: #5AF78E
*.color3: #F1FA8C
*.color11: #F4F99D
*.color4: #BD93F9
*.color12: #CAA9FA
*.color5: #FF79C6
*.color13: #FF92D0
*.color6: #8BE9FD
*.color14: #9AEDFE
*.color7: #BFBFBF
*.color15: #E6E6E6
xterm*faceName:Noto Mono:style=Regular:size=12
Вот теперь - точно всё, перезаходим в X11 и наслаждаемся ^_^
---
Гостевая книга
---
tags: tech