После обновления либархив посредством pacman-static - испортился pacman, не могу обновиться, софт не работает

Снова начал использовать старый комп, в котором Arch, в нём протух либархив (не поддерживает ZSTD), кодеры придумали дать всем год чтобы перейти на свежий либархив и перепаковать пакеты в то, что на ~1% хуже сжато, зато в 13 раз быстрее распаковывается. И это хорошая инициатива.
Моя проблема в том, что я не успел на поезд, а на старом компе нельзя переустанавливать систему в связи со сложноконфигурируемым софтом, к тому же закончилось место для бекапов. А потом сделал что-то не так, как нужно было.

Теперь при попытке обновиться с pacman -Syyu/-Syu, у системы проблемы с зависимостями.
Ещё были проблемы с кейрингом. Я отключил проверку оного в /etc/pacman.conf,
потому что выкачать заново не смог (уже не помню почему, в history уже посмотреть не могу, случайно туда попал лог ошибок firefox; я с этим мучаюсь три дня),
чистил gpg и прописывал pacman-key --init.

Вот что записал, чтобы не действовать в слепую и помнить что я сделал, когда проснусь
0
sudo pacman -S base base-devel
Отдельный вопрос: base "ставится для baremetal", может ли это быть опасно в вопросах
"порты торчат в интернет" или "после обновления доступ по ssh прекращается, не делайте чтобы не jail-нуть систему"?
Вопрос без полного понимания работы. Уже не помню, где это советовали и почему используется для установки на baremetal системы.

1
sudo pacman-static -S glibc
Автоматически генерируются локали (много локалей, которые мне, по идее, не нужны);

2
Скачал pacman-static, обновил через него libarchive, потом pacman.
warning: libarchive-3.5.1-1 is up to date -- reinstalling

sudo /home/user/Downloads/pacman-static -R pacman libarchive
Подумал, что вот удалю пакмен и либархив и установлю заново
Не обновлю через sync, а именно удалю и установлю; сомневаюсь, что этот метод тыка поможет понять,
удаляются ли пакеты по зависимостям, хочу увидеть предупреждение об этом или отсутсвие оного - увидел - не удаляются, от них много зависимостей;

"Обновил" и base, на случай повреждения файлов на SSD от длительного хранения без питания, отому что видел упоминание об этом "где-то на англоязычном форуме":
sudo /home/user/Downloads/pacman-static -S base
[sudo] password for user:
warning: base-2-2 is up to date -- reinstalling
resolving dependencies...
looking for conflicting packages...
Packages (1) base-2-2
:: Proceed with installation? [Y/n]

3
[ юзернейм ~ ]$ sudo pacman -Syu --ignore firefox --noconfirm
[sudo] password for user:
pacman: symbol lookup error: /usr/lib/libarchive.so.13: undefined symbol: ZSTD_minCLevel

В Firefox много профилей, в них старые дополнения. Пока не хочу обновлять браузер, сначала отсортирую bookmarks, экспортирую (резервная копия заменяет, экспорт закладок позволит сохранить все в один профиль), удалю дампы в about:crashes (я ещё не знаю, для каждого-ли отдельного профиля они хранятся, а память переполнялась часто; чего-либо, что обрабатывает переполнение ОЗУ у меня нет);

4
[ юзернейм ~ ]$ sudo /home/user/Downloads/pacman-static -Syu --ignore firefox --noconfirm
[sudo] password for user:
:: Synchronizing package databases...
core is up to date
extra 1648.3 KiB 571 KiB/s 00:03 [################################] 100%
community is up to date

Попытка обновление системы (лог будет ниже)
В данный момент проблема выражается в этом:
[ юзернейм ~ ]$ vlc
vlc: error while loading shared libraries: libidn.so.12: cannot open shared object file: No such file or directory
[ юзернейм ~ ]$ mpv
mpv: symbol lookup error: /usr/lib/libarchive.so.13: undefined symbol: ZSTD_minCLevel
[ юзернейм ~ ]$ pacman
pacman: symbol lookup error: /usr/lib/libarchive.so.13: undefined symbol: ZSTD_minCLevel

И вот в этом:
[ юзернейм ~ ]$ sudo /home/user/Downloads/pacman-static -Syu
:: Replace haskell-exceptions with community/ghc-libs? [Y/n]
:: Replace haskell-mtl with community/ghc-libs? [Y/n]
:: Replace haskell-parsec with community/ghc-libs? [Y/n]
:: Replace haskell-stm with community/ghc-libs? [Y/n]
:: Replace haskell-text with community/ghc-libs? [Y/n]
........много разных пакетов
:: Replace python2-crypto with community/python2-pycryptodome? [Y/n]
:: Replace python2-socks with community/python2-pysocks? [Y/n]
resolving dependencies...
looking for conflicting packages...
:: python-pyqt5 and pyqt5-common are in conflict. Remove pyqt5-common? [y/N] y
error: failed to prepare transaction (could not satisfy dependencies)
:: installing wxgtk2 (3.0.5.1-2) breaks dependency 'wxgtk' required by elettra-gui
:: installing wxgtk2 (3.0.5.1-2) breaks dependency 'wxgtk' required by flamerobin
........
:: removing pyqt5-common breaks dependency 'pyqt5-common' required by python2-pyqt5
:: removing sip breaks dependency 'sip' required by python2-sip

И пишет ошибку, не может обновиться из-за зависимостей.

Ещё пробовал
[ юзернейм ~ ]$ sudo /home/user/Downloads/pacman-static -R libarchive
checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: removing libarchive breaks dependency 'libarchive' required by cmake
:: removing libarchive breaks dependency 'libarchive' required by file-roller
:: removing libarchive breaks dependency 'libarchive' required by gvfs
:: removing libarchive breaks dependency 'libarchive' required by mkinitcpio
:: removing libarchive breaks dependency 'libarchive' required by mpv
:: removing libarchive breaks dependency 'libarchive' required by pacman
:: removing libarchive breaks dependency 'libarchive' required by pkgfile

И не смог удалить /etc/pacman.d/gnupg
чтобы sudo pacman-key --init && sudo pacman-key --populate archlinux

Пакмэн не работает, а при попытке обновить через pacman-static, мне пишет ошибки о зависимостях
Как это пофиксить? Виндузятническое "переустанови систему" не для меня, очень не хочу переустанавливать.

Находил инфу о том, что можно как-то через pacstrap восстановить основные файлы системы (в том числе, pacman и его зависимости), но не знаю как сформулировать вопрос поисковикам. По запросам error while loading shared libraries: libidn.so.12 и symbol lookup error: /usr/lib/libarchive.so.13
найти решение не смог. Не знаю что делать дальше, пожалуйста, помогите.
OTR.cypherpunks.ca < OMEMO
Много букф...
Простого способа нет. Лучше откатите на пакеты из cache и начните заново, устраняя все казусы с зависимостями.
Ошибки в тексте-неповторимый стиль автора©
Такое старье обновлять легче из чрута загрузившись из свежей исошки.
Все конфликтующие пакеты удаляем сохранив их названия. И потом ищем чем их заменили и ставим если они еще нужны
Можно в двух словах: чего хотите-то?

А то пишете, что надо обновить систему, а потом на страницу, что не хотите обновлять...
такие дела.
Оффтоп конечно, но первое, что вы должны были сделать - полностью забэкапить систему, а потом уже дерзать.
Прошло пять дней. Я раздобыл древний HDD с Шindows, коим пользоваться неприятно, аки кататься на велосипеде без сидушки, может кому и нравится; за два дня использования мастдая, создается ощущение, что система принуждает меня пользоваться оной неким стандартизированным способом, а поиск решений на реддите по линуксу, вики и форумах, ничего подобного своей проблеме найти не осилил.

>Лучше откатите на пакеты из cache и начните заново, устраняя все казусы с зависимостями.
Пакеты из cache были предварительно удалены, ибо места на SSD не хватило бы под загрузку новых.

>устраняя все казусы с зависимостями.
Не знаю как это сделать. Давно пользуюсь разными дистрибутивами, как пользователь, а не как разработчик. Раньше всё работало без проблем, потому не сталкивался с необходимостью.
UPD: Мне кажется, мне просто не поверят о том, что человек, знающий про OTR и OMEMO не сможет обновить Arch через chroot, но я мнительный и опасаюсь окончательно испортить. Но это правда, мне не лень, я читал как это сделать, а потом Kernel Panic (я не могу сфотографировать экран) и я не знаю как посмотреть нужные логи, если они есть, хоть и читал на вики статью про troubleshooting, но...

>Такое старье обновлять легче из чрута загрузившись из свежей исошки.
Боюсь поламать. Очень давно устанавливал, не помню как это делается. Можно, пожалуйста, кратко о том, как это сделать?
>Такое старье
Я понимаю, что Arch для роллинг релизов, но есть ли аналог стабильной ветки как у доебана Debian?
Отдельный вопрос: вероятно, в другой машине (ноут) Арч будет использоваться домохозяйкой для браузера и возни с бухгалтерией (уровень стандартного набора софта бубунты, ничего специфичного), опасаюсь просьб порешать проблемы по телефону, а как-никак кое-какой опыт с Арч есть, потому хотел бы туда поставить именно его.

>Можно в двух словах: чего хотите-то?
Хочу восстановить работоспособность системы, не знаю с чего начать. Я "что-то нажал и всё сломалось", когда ввёл некую команду sysctl из какого-то гайда, который уже не найду, потому что дважды Арч загружался и через пару минут зависал, мигая двумя светодиодами на клаве, а теперь вообще не грузится с остановкой на Kernel panic и непонятной ошибкой. При загрузке в fallback зависает через 3-5 минут.
>а потом на страницу, что не хотите обновлять...
Я бы с радостью обновил, но опасаюсь, что профили Firefox удалятся (профанация с моей стороны, не знаю, пропадут ли они после обновления). Профилей очень много, гигабайты. И много другого софта, который не знаю как бекапить (что следовало делать регулярно и заблаговременно, как и любые бекапы).
>Оффтоп конечно, но первое, что вы должны были сделать - полностью забэкапить систему, а потом уже дерзать.
Согласен, но нет свободного места на других носителях (на которых даже фильмы не записаны, только диск на 80 гб).
OTR.cypherpunks.ca < OMEMO
cypherpunks
Согласен, но нет свободного места на других носителях (на которых даже фильмы не записаны, только диск на 80 гб).
80гиг это очень много. Если бекапить только нужное.

Систему бекапить это просто удобство ее и переставить не очень долго ( бекапим только настройки /etc и /usr/lib/systemd)
да и если почистить от мусора то она не более 30 гигов а нормальная 10-15.
Бекапить надо пользовательские настройки /home/юзер/.* и они тоже много места не занимают

И важные данные бекапить - тут уже они и так должны быть зарезервированы

cypherpunks
Такое старье обновлять легче из чрута загрузившись из свежей исошки.
Боюсь поламать. Очень давно устанавливал, не помню как это делается. Можно, пожалуйста, кратко о том, как это сделать?

Сломать можете только систему не хомяк, если конечно диски не перепутать( сдуру можно и ...)

Грузитесь с последнего установочного iso арча, прописав его в груб или записав на флешку
монтируете корень вашего установленного арча в /mnt
# mount /dev/корневой_раздел /mnt
если отдельный раздел boot был то его тоже монтируем
# mount /dev/бут_раздел /mnt/boot
чрут в арч
# arch-chroot /mnt
обновление баз пакетов
#pacman -Syy
обновление системы
#pacman -Su
разруливаем конфликты
pacman -Qi   конфликтующий_пакет | tee -a conflict.txt 
pacman -R  конфликтующий_пакет 
после обновления смотрим conflict.txt что предоставляли удаленные пакеты
nano conflict.txt
строчки в conflict.txt "Предоставляет"

если оно нам надо и не заменилось другим пакетом ставим пакет который теперь предоставляет это
pacman -Ss чего надо

На всякий случай пересобираем инит
mkinitcpio -P
внимательно смотрим вывод на ошибки
если все нормально выходим и перезагружаемся в установленный арч
exit
reboot
Если боязнь chroot, то можно сначала попробовать вместо chroot загрузиться в режим восстановления (параметр загрузки rescue) и если получится, то пробовать обновиться из него, ... не получится загрузиться, пробовать загрузиться в аварийный режим (параметр загрузки emergency) и пробовать обновиться из него .... и если уж не получиться загрузиться и в этом случае, то тогда остается только chroot.
Ошибки не исчезают с опытом - они просто умнеют
 
Зарегистрироваться или войдите чтобы оставить сообщение.