После того, как я обнаружил, что используемая мной вики Ubuntu ссылается на внешние модули , было легче найти решение от rtfm.
Сводка путей установки внешних модулей
modules_install
в / lib / modules / $ (KERNELRELEASE) / extra /
. INSTALL_MOD_PATH
используется для префикса пути установки или INSTALL_MOD_DIR
используется для создания нового каталога в обычном / lib / modules / $ (KERNELRELEASE)
путь. См. Нижнюю часть этого ответа для более подробного объяснения.
Поиск внешних модулей
Чтобы сузить поиск до вышеуказанного, я использую locate
для печати путей, содержащих lib / module
и xargs
] в фильтрует вывод путей, не являющихся каталогами.
Наконец, grep -v
используется для фильтрации вывода путей, начинающихся с / lib / modules / $ (uname -r) / kernel
. При этом должны по-прежнему отображаться пути с префиксом INSTALL_MOD_PATH
во время установки, например / frodo / lib / modules / $ (KERNELRELEASE) / kernel /
.
Очевидно, что при этом не будет выведен путь к модулям, которые каким-то образом были установлены по совершенно странному пути. Вот команда:
locate --null "* lib / modules / $ (uname -r) *" | xargs -r0 sh -c 'для меня [-d "$ i"] && printf "% s \ n" "$ i"; done 'sh {} + | grep -v "^ / lib / modules / $ (uname -r) / kernel \ | ^ / lib / modules / $ (uname -r) $ \ | ^ / lib / modules / $ (uname -r) / build $ \ | ^ / lib / modules / $ (uname -r) / initrd $ "
Это удаляет пути в дереве из вывода, который для меня составлял 4695 строк при использовании только locate" * lib / modules / $ (uname -r) * "
. Теперь вывод намного меньше и должен отображать только известные пути вне дерева:
/frodo/lib/modules/3.12.3-031203-generic
/frodo/lib/modules/3.12.3-031203-generic/kernel
Выдержки из документации Построение внешних модулей
Подробности ниже взяты из Построение внешних модулей
modules_install
Install the external module(s). The default location is
/lib/modules//extra/, but a prefix may
be added with INSTALL_MOD_PATH (discussed in section 5).
=== 5. Module Installation
Modules which are included in the kernel are installed in the
directory:
/lib/modules/$(KERNELRELEASE)/kernel/
And external modules are installed in:
/lib/modules/$(KERNELRELEASE)/extra/
--- 5.1 INSTALL_MOD_PATH
Above are the default directories but as always some level of
customization is possible. A prefix can be added to the
installation path using the variable INSTALL_MOD_PATH:
$ make INSTALL_MOD_PATH=/frodo modules_install
=> Install dir: /frodo/lib/modules/$(KERNELRELEASE)/kernel/
INSTALL_MOD_PATH may be set as an ordinary shell variable or,
as shown above, can be specified on the command line when
calling "make." This has effect when installing both in-tree
and out-of-tree modules.
--- 5.2 INSTALL_MOD_DIR
External modules are by default installed to a directory under
/lib/modules/$(KERNELRELEASE)/extra/, but you may wish to
locate modules for a specific functionality in a separate
directory. For this purpose, use INSTALL_MOD_DIR to specify an
alternative name to "extra."
$ make INSTALL_MOD_DIR=gandalf -C $KDIR \
M=$PWD modules_install
=> Install dir: /lib/modules/$(KERNELRELEASE)/gandalf/
Другим обходным решением является установка межстрочного интервала равным 1 в меню «Настройки» -> «Редактировать текущий профиль»… -> «Дополнительно» -> «Функции терминала». Это почти незаметно (один дополнительный пиксель между строками ), но это решает проблему.
Обновление до Qt 5.12 — это нормально, но проблема не решается сразу. В настройках профиля Konsole на вкладке «Дополнительно» измените «Межстрочный интервал» на 1 . Это решило проблему с горизонтальными линиями для меня.
После выполнения инструкций Нико по изменению DPI системного текста на что-то более высокое, например 144, 192 и т. д., можно снова включить масштабирование экрана, чтобы Кейт выглядела хорошо. Однако результаты могут различаться в зависимости от среды рабочего стола.
Установите желаемое дробное масштабирование дисплея. (Я использую 1,5x ).
Вы можете установить переменную среды QT_SCREEN_SCALE_FACTORS=1
для одного вызова Кейт.
QT_SCREEN_SCALE_FACTORS=1 kate
А можно сделать скрипт-обертку на все звонки Кате
#!/bin/bash
cd $HOME
# Add home binaries directory & cd into it
mkdir -p bin && cd bin
# Symlink Kate executable as kate0
ln -s $(which kate) kate0
# Create the wrapper script
echo '#!/bin/bash' > kate
# This tells Kate to use a 1x scale factor, and to pass all arguments from wrapper
echo 'QT_SCREEN_SCALE_FACTORS=1 kate0 "$@"' >> kate
# Make the wrapper script executable
chmod +x kate
Затем убедитесь, что $HOME/bin
находится в вашем $PATH
. Если его нет, то его можно добавить по
export PATH="$HOME/bin:$PATH"
Добавьте это к ~/.profile
, чтобы сделать его постоянным.
Обратите внимание, что для того, чтобы это работало, ваши домашние сценарии должны стоять перед путем к исходному исполняемому файлу Kate (, например./usr/bin
)в переменной окружения $PATH
.
В качестве обходного пути вы можете изменить DPI шрифтов:
Fonts
, установите флажокForce Fonts DPI
144
на экране 2560x1440,вы можете попробовать 192
в 4K )В этот момент горизонтальные линии должны исчезнуть, и вы сможете читать все, что происходит на экране.