dwm
(Судя по https://ladycat.wordpress.com/2017/05/26/%d0%b2%d0%bd%d0%b5%d0%b7%d0%b0%d0%bf%d0%bd%d0%be-dwm/, это был 2017 год.)
Несмотря на планы заниматься dwm-ом только в июне, я успела буквально за день дико устать оттого, что привычные клавиатурные сокращения emacs-а перехватываются dwm-ом. Нет, ничего страшного не происходит, но не происходит и нужного. Так что пришлось браться.
Очередной раз порадовалась дружественности дебиана. Типа, хочешь ставить готовые пакеты - вот тебе aptitude, ни в чём себе не отказывай. Что-то не устраивает в готовом, хочется порыться, поисправлять, понастраивать - вот тебе apt-src для упрощения рутинных задач, и опять же, ни в чём себе… https://wiki.debian.org/apt-src и https://wiki.debian.org/ru/DebianBuildPackages
Что собственно мне понадобилось сделать?
- Для начала, поставить apt-src, ибо у меня таковой установлен не был.
- Посмотреть, где интересующая версия пакета (`aptitude versions dwm` в моём случае), и добавить подходящую deb-src запись в /etc/apt/sources.list. В моём случае - `deb-src http://ftp.ru.debian.org/debian sid main`. Обновила сведения (рутиннейшее `aptitude update`).
- Сделала каталог src, чтоб не захламлять местность, уже оттуда `apt-src install dwm` - несмотря на слово install, происходит скачивание и распаковка в этом самом каталоге. Заодно устанавливается то, что потом потребуется для собирания пакета.
- Далее можно развлекаться по желанию. Я, разумеется, залезла в config.h и поменяла строчку `#define MODKEY Mod1Mask` на `#define MODKEY Mod4Mask` (ура, Alt свободен, а win как раз недоприменённая), переставила порядок режимов (если мне нравится monocle, пусть он и будет по умолчанию), и что-то из ненужных клавиатурных сокращений закомментировала (получила по этому поводу позже сообщения, мол, функция есть, а не используется — так и не надо. Хотя бы пока. )))
- `apt-src build dwm` - собираем всё с внесёнными изменениями. Если всё прошло хорошо, как в моём случае, то в результате получается deb-пакет, пригодный для установки. Возможно, вам предложат установить
fakeroot
или запускать сборку от рута - по мнеfakeroot
лучше. - `dpkg -i полученный-пакет` - собственно установка.
- `aptitude hold dwm` - это чтоб потом не обновить случайно. Только осознанно. )
И ура!
Если используете джавовые приложения то желательно дочитать ман до конца. Там есть предупреждение и полезность: «Java applications which use the XToolkit/XAWT backend may draw grey windows only. The XToolkit/XAWT backend breaks ICCCM-compliance in recent JDK 1.5 and early JDK 1.6 versions, because it assumes a reparenting window manager. Possible workarounds are using JDK 1.4 (which doesn't contain the XToolkit/XAWT backend) or setting the environment variable AWT_TOOLKIT=MToolkit
(to use the older Motif backend instead) or running xprop -root -f _NET_WM_NAME 32a -set _NET_WM_NAME LG3D
or wmname LG3D
(to pretend that a non-reparenting window manager is running that the XToolkit/XAWT backend can recognize) or when using OpenJDK setting the environment variable _JAVA_AWT_WM_NONREPARENTING=1
».
Последним советом воспользовалась (добавила в запускающий скрипт), у меня - сработало.
Ещё предупреждает о возможном моргании окошек save-as в gtk. Посмотрим.
- http://ratfactor.com/slackware/dwm/ - премилая инструкция по пользованию.