Общие рекомендации по использованию дистрибутива Arch Linux
Отсутствие разделяемых библиотек
При замене системных пакетов на пользовательские варианты из репозитория AUR может произойти проблема загрузки разделяемых библиотек другими приложениями.
Один из примеров:
/usr/lib/chromium/chromium: error while loading shared libraries: libSvtAv1Enc.so.0: cannot open shared object file: No such file or directory
В данном примере потребовалось обновление стороннего пакета ffmpeg-obs для восстановления работы браузера. Чтобы узнать какой из пакетов требует обновления следует проверить дерево зависимостей. Для начала выясним к какому пакету относится данная библиотека:
[rea@sanka ~]$ pacman -Qo /usr/lib/libSvtAv1Enc.so /usr/lib/libSvtAv1Enc.so принадлежит svt-av1 1.1.0-1
И запросим информацию о самом пакете:
[rea@sanka ~]$ pacman -Qi svt-av1 Название : svt-av1 Версия : 1.1.0-1 Описание : Scalable Video Technology AV1 encoder and decoder Архитектура : x86_64 URL : https://gitlab.com/AOMediaCodec/SVT-AV1 Лицензии : BSD custom: Alliance for Open Media Patent License 1.0 Группы : Нет Предоставляет : Нет Зависит от : glibc Доп. зависимости : Нет Требуется : ffmpeg-obs ffmpeg4.4 libavif Опционально для : Нет Конфликтует с : Нет Заменяет : Нет Установленный размер : 7,10 MiB Сборщик : Antonio Rojas <arojas@archlinux.org> Дата сборки : Вс 12 июн 2022 11:42:56 Дата установки : Вт 14 июн 2022 21:51:49 Причина установки : Установлен как зависимость другого пакета Установочный скрипт : No Проверен : Подпись
В данном случае пакет svt-av1 является зависимостью для ffmpeg-obs.
Звуковая подсистема
Отсутствие источников ввода и вывода звука на системе с процессором Intel 11-го поколения (Tiger Lake) или новее
Если в приложении pavucontrol или в других мультимедийных утилитах отображается единственное звуковое устройство под названием Dummy Output, то требуется установить пакет с прошивками sof-firmware.
После перезагрузки системы появятся новые источники ввода и вывода. К примеру, это будет Tiger Lake-LP Smart Sound Technology Audio Controller Speaker + Headphones.
Установка стека AMD ROCm™
git clone https://github.com/rocm-arch/rocm-arch.git
По некоторым причинам для сборки стека требуется настройка выделенного chroot окружения.
mkdir -p ~/Work/Builds/chroot
CHROOT=$HOME/Work/Builds/chroot
Устанавливаем группу пакетов base-devel в chroot окружение.
mkarchroot $CHROOT/root base-devel
Для обновления окружения можно воспользоваться следующей командой:
arch-nspawn $CHROOT/root pacman -Syu
После этого можно производить сборку пакетов стека. Для этого нужно зайти в каждую директорию стека, где присутствует скрипт сборки в формате PKGBUILD и запустить команду:
makechrootpkg -c -r $CHROOT
Если для сборки пакета требуется зависимость, которая отсутствует в официальных репозиториях, то потребуется сборка данной зависимости с последующей установкой в моменте начала сборки целевого пакета.
makechrootpkg -c -r $CHROOT -I ../rocm-llvm/rocm-llvm-5.3.2-2-x86_64.pkg.tar.zst -I ../rocm-cmake/rocm-cmake-5.3.2-1-x86_64.pkg.tar.zst -I ../rocm-device-libs/rocm-device-libs-5.3.2-1-x86_64.pkg.tar.zst -I ../comgr/comgr-5.3.0-2-x86_64.pkg.tar.zst -I ../hsakmt-roct/hsakmt-roct-5.3.0-1-x86_64.pkg.tar.zst -I ../hsa-rocr/hsa-rocr-5.3.0-2-x86_64.pkg.tar.zst -I ../rocminfo/rocminfo-5.3.0-1-x86_64.pkg.tar.zst
Порядок сборки минимального стека AMD ROCm™ для работы с бэкендом HIP рендер движка Cycles X в Blender:
rocm-llvm rocm-cmake rocm-device-libs comgr hsakmt-roct hsa-rocr rocminfo hip-runtime-amd
Google Chrome игнорирует выбор файлового менеджера по умолчанию
Чтобы открывался выбранный файловой менеджер при открытии директории с загруженным файлом требуется сделать следующее:
mkdir -p .local/share/dbus-1/services cp /usr/share/dbus-1/services/org.freedesktop.FileManager1.service ~/.local/share/dbus-1/services/
Теперь откройте скопированный файл и заменить команду запуска nautilus на желаемый файловый менеджер, к примеру на pcmanfm-qt:
[D-BUS Service] Name=org.freedesktop.FileManager1 Exec=/usr/bin/pcmanfm-qt -d