Изучаем вики Arch Linux

Вопросы, на которые не получается найти ответ в Arch wiki или на форуме
Ответить
vall
Аватара пользователя
Администрация
Сообщения: 541
Зарегистрирован: 09.08.2022

#

Предлагаю здесь к публикации материалы из вики, которые -- возможно -- кто-то не сразу догадается искать в этом источнике. Либо вообще не очевидно, что такая информация может быть размещена там.

Или кто-то захочет просто поделиться своим "открытием" материала, который помог. Или, как иногда говорят арчеводы: заново пересказать вики. Одним словом -- начинаю.

Дистрибутивы на основе Arch

Предупреждение: дистрибутивы на основе Arch не поддерживаются сообществом или разработчиками Arch. См. Кодекс поведения#arch-linux-distribution-support-only

Примечание. Пожалуйста, используйте страницу обсуждения, чтобы предложить изменения в этой статье: Обсуждение: дистрибутивы на базе Arch.

На этой странице перечислены дистрибутивы ОС, которые полностью или частично являются производными от Arch Linux, чтобы помочь обеспечить соблюдение политики товарных знаков Arch Linux. Хотя он и призван быть как можно более полным, это не исчерпывающий список. Ссылки на проекты SourceForge предпочтительнее для упрощения обслуживания.

Вики (англ.)
vall
Аватара пользователя
Администрация
Сообщения: 541
Зарегистрирован: 09.08.2022

#

Benchmarking

Тестирование производительности (бенчмаркинг) — это акт измерения производительности и сравнения результатов с результатами другой системы или общепринятым стандартом с помощью единой процедуры. Этот унифицированный метод оценки производительности системы может помочь ответить на такие вопросы, как:
  • Работает ли система так, как должна?
  • Какую версию драйвера следует использовать для достижения оптимальной производительности?
  • Способна ли система выполнить задачу x?
Для определения производительности системы можно использовать множество инструментов; ниже приведён список доступных инструментов.

Вики
vall
Аватара пользователя
Администрация
Сообщения: 541
Зарегистрирован: 09.08.2022

#

fzf - это утилита нечёткого поиска в командной строке.
pacman -S fzf
Bash
Создаём секцию в .bashrc
~/.bashrc

# Активирует fzf (нечёткий поиск)
. /usr/share/fzf/key-bindings.bash
. /usr/share/fzf/completion.bash
Дополнительные сочетания клавиш и автозавершение fzf доступны для различных оболочек:

• <CTRL + R>: поиск в истории ваших команд. Нажмите Enter, чтобы вставить выбранную команду из истории в командную строку. Переключите релевантность сортировки в хронологическом порядке, нажав CTRL-R опять же (по умолчанию сортировка выполняется по релевантности)
• <CTRL + T>: показывает список файлов и папок в текущем каталоге (и подкаталогах). Нажмите Enter, чтобы вставить выбранный путь к файлу / папке в командную строку
• <ALT + C>: показывает список подкаталогов в текущем каталоге. Нажмите Enter для перехода в выбранный подкаталог.

Pacman
Попробуйте выполнить нечеткий поиск по всем доступным пакетам с информацией о пакете, отображаемой в окне предварительного просмотра, а затем установите выбранные пакеты:
$ pacman -Slq | fzf --multi --preview 'pacman -Si {1}' | xargs -ro sudo pacman -S
Просмотрите все установленные пакеты, а затем удалите выбранные пакеты:
$ pacman -Qq | fzf --multi --preview 'pacman -Qi {1}' | xargs -ro sudo pacman -Rns
Если вы хотите добавить список файлов пакета в предварительный просмотр – обновление окна предварительного просмотра может быть немного медленнее (убедитесь, что вы запускали pacman -Fy с привилегиями суперпользователя хотя бы один раз перед вызовом для синхронизации базы данных файлов pacman):
$ pacman -Slq | fzf --multi --preview 'cat <(pacman -Si {1}) <(pacman -Fl {1} | awk "{print \$2}")' | xargs -ro sudo pacman -S
Alias
Чтобы не вводить длинные команды создаём alias и функцию в .bashrc. Одновременно заменим pacman на paru (должен быть установлен) для просмотра пакетов и в AUR. Также добавим аргумент --reverse , чтобы предложения fzf появлялись ниже строки ввода.
#Сокращения команд
alias r="paru -Qq | fzf --multi --reverse --preview 'paru -Qi {1}' | xargs -ro paru -Rns" #удаление пакета
alias s="paru -Slq | fzf --multi --reverse --preview 'paru -Si {1}' | xargs -ro paru -S" #установка пакета

#Функции bash
#Предварительный просмотр списка файлов пакета и установка (замедляет, предварительно: paru -Fy)
alias f="file"
file () {
paru -Slq | fzf --multi --reverse --preview 'cat <(paru -Si {1}) <(paru -Fl {1} | awk "{print \$2}")' | xargs -ro paru -S
}
Для вступления изменений в силу
$ source ~/.bashrc
Картинка ниже позаимствована из сети для ubuntu. Но даёт общее представление, что получаем в результате.
Изображение

В итоге при вводе:
r (+Enter) -- ищем и удаляем выбранный пакет
s (+Enter) -- ищем и устанавливаем выбранный пакет
f (+Enter) -- ищем и устанавливаем выбранный пакет с просмотром списка файлов пакета.

Вики
vantu5z
Аватара пользователя
Сообщения: 17
Зарегистрирован: 05.09.2022

#

vall:fzf - это утилита нечёткого поиска в командной строке.
Интересная штука, оказывается стояла как зависимость к downgrade.
А можно её прикрутить так, чтобы она отрабатывала при стандартном автодополнении (выбор из предложений) в bash?
Например:
вводим git --<TAB><TAB>
сейчас получаем предложения:
--bare                 --help                 --namespace=           --version 
--exec-path            --html-path            --no-pager             --work-tree=
--exec-path=           --info-path            --no-replace-objects   
--git-dir=             --man-path             --paginate  
А как сделать, чтобы эти предложения автоматом открылись для выбора в fzf?
Дополнение параметров привёл как пример, интересует больше перенаправление вывода предложений по <TAB><TAB>.
vasek
Сообщения: 358
Зарегистрирован: 31.08.2022

#

Имеется fzf-tab, который, как пишут, позволяет использовать fzf в любой ситуации. Имеется и в AUR и в китайской репе.
Описание: https://github.com/Aloxaf/fzf-tab и плюс https://dev.to/budavariam/supercharge-y ... -line-2c9b

Ошибки не исчезают с опытом - они просто умнеют

vall
Аватара пользователя
Администрация
Сообщения: 541
Зарегистрирован: 09.08.2022

#

vantu5z: при стандартном автодополнении (выбор из предложений) в bash?
Насколько понял интересует возможность интеграции с Git. Сам использую локально; только для работы в konsole и vim. Поэтому подсказать не могу.

Но пройдя по ссылке уважаемого коллеги vasek, где предлагается плагин для zsh. Обратил внимание на окончание страницы - связанные проекты. Там упоминается bash в fzf-tab-completion.
vantu5z
Аватара пользователя
Сообщения: 17
Зарегистрирован: 05.09.2022

#

vall:Там упоминается bash в fzf-tab-completion
Да, тоже нашёл, вроде то, что нужно, дополняет и команды и параметры и файлы.
Но есть ньюансы с безшевной интеграцией. Т.е. дополнение основной команды по ТАБ, хотелось бы стандартного или комбинированого повидения при этом, но у меня не заработало, хоть на github'е оно считается решенным. Как будет время потыкаю и отпишусь разработчику.
vantu5z
Аватара пользователя
Сообщения: 17
Зарегистрирован: 05.09.2022

#

vall:Насколько понял интересует возможность интеграции с Git
Не, это я просто пример привел такой. Для работы с git я пользуюсь emacs + magit.
vasek
Сообщения: 358
Зарегистрирован: 31.08.2022

#

vantu5z:emacs
Кстати, на основе emacs можно сконфигурировать tiling WM exwm .... конечно, оценят только те, кто использует emacs.
А так как основан на lisp, то считается самой надежной WM ... но, конечно, это не для нынешнего поколения, которое не признает простоту ...

Ошибки не исчезают с опытом - они просто умнеют

vall
Аватара пользователя
Администрация
Сообщения: 541
Зарегистрирован: 09.08.2022

#

vall: Alias
Чтобы не вводить длинные команды создаём alias и функцию в .bashrc. Одновременно заменим pacman на paru (должен быть установлен) для просмотра пакетов и в AUR.
Если вам удобнее получать результаты вывода команд fzf в отдельном окне, то дополнительно создаём в .bashrc следующую секцию
#fzf просмотр результатов в окне
export FZF_DEFAULT_OPTS='--height 40% --layout=reverse --border'
В данном случае вывод будет в окне размером 40% от высоты окна терминала.
vall: Также добавим аргумент --reverse , чтобы предложения fzf появлялись ниже строки ввода.
Поскольку любые результаты поиска fzf теперь будут отображаться в окне в реверсивном порядке. Тогда аргумент --reverse можно не добавлять в выше предложенные алиасы и функцию (удаление, установка и просмотр файлов пакетов).
Ответить