Уголок новичка
   1932

Как сохранить критически важную программу если она вызывает конфликт при обновлении?

Добрый день!
Здесь уже был топик по данной проблеме, но приведенное решение меня не устроит.
Невозможно обновиться: Ошибка подготовки транзакции
Не удалось удовлетворить зависимости:
- удаление wxgtk-common нарушает зависимость "wxgtk-common", необходимую для wxgtk2

И предложение править сборочные файлы, касающиеся far2l.
Для решения рекомендовалось:
sudo pacman -Rdd wxgtk-common wxgtk2 wxgtk3
sudo pacman -S wxwidgets-gtk3 wxwidgets-common

после чего всё обновляется, кроме far2l, и переустановить его уже не получается.
Это критически важная для меня программа, я без нее не могу.
Нет ли возможности сохранить его в данной ситуации?
Или может как-нибудь обновиться по-максимуму, чтобы его не затронуть?

12 комментариев

avatar
Попробуйте mc исправить PKGBUILD.
+1
avatar
А не подскажете, каким образом?
PKGBUILD
# Maintainer: Martins Mozeiko <martins.mozeiko@gmail.com>

pkgname=far2l-git
pkgver=r2791.d21947b9
pkgrel=1
pkgdesc='Linux port of FAR v2'
url='https://github.com/elfmz/far2l'
arch=('i686' 'x86_64')
license=('GPL2')
source=('git+https://github.com/elfmz/far2l'
'far2l-desktop.patch')
sha256sums=('SKIP'
'f279f4255d9015e087e036fb793de688b973b1d14afd30a55722cc6f591675ce'
)
makedepends=('git' 'cmake')
depends=('wxgtk3' 'openssl' 'spdlog' 'xerces-c' 'fmt' 'uchardet')
optdepends=(
'libssh: SFTP support in NetRocks'
'smbclient: SMB support in NetRocks'
'libnfs: NFS support in NetRocks'
'neon: WebDAV support in NetRocks'
'pcre: custom archives support in multiarc'
'libarchive: more archive type support in multiarc'
)

pkgver() {
cd "$srcdir"/far2l
printf «r%s.%s» "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
}

prepare() {
cd "$srcdir"/far2l
patch -p1 -i "$srcdir"/far2l-desktop.patch
}

package() {
cd "$srcdir"/far2l

cmake. -DCMAKE_INSTALL_PREFIX="$pkgdir"/usr -DCMAKE_BUILD_TYPE=Release -DwxWidgets_CONFIG_EXECUTABLE=/usr/bin/wx-config-gtk3 -DCMAKE_CXX_FLAGS=-w
cmake --build. --target install

ln -sf ../../bin/far2l "$pkgdir"/usr/lib/far2l/far2l_askpass
ln -sf ../../bin/far2l "$pkgdir"/usr/lib/far2l/far2l_sudoapp
}
0
avatar
Ответ в комментариях. В первом же на текущий момент комментарии, точнее, даже в двух.

И чисто из интереса. Для чего в никсах вообще нужен фар (хорошо хоть его в консоль научили, псевдографика, прибитая к GTK, это душераздирающее зрелище)?
Последний раз редактировалось
+1
avatar
Как я понял, в строке
<code>cmake . -DCMAKE_INSTALL_PREFIX="$pkgdir"/usr -DCMAKE_BUILD_TYPE=Release -DwxWidgets_CONFIG_EXECUTABLE=/usr/bin/wx-config-gtk3 -DCMAKE_CXX_FLAGS=-w
</code>
нужно заменить /usr/bin/wx-config-gtk3 на /usr/bin/wx-config
Но теперь получается:
<code>Не удалось заблокировать базу данных
Не удалось синхронизировать базы данных</code>
а потом всё, как было.

Зачем мне нужен Far на Linux?
Во-первых, дело сильной привычки. Если он у меня уже лет 30, как основное навигационное средство на компах. Под себя сделана куча настроек. И использование его и его редактора уже на подкорке записано.
И то, что он нашелся и на Linux, пару лет назад сильно облегчило переход.
Кроме того, на работе у меня Windows без вариантов. И использование аналогичной программы здорово помогает.
Кроме личных пристрастий, некоторые привычные возможности я не нашел в других файловых менеджерах (возможно, плохо искал). Например, возможность комментировать файлы по Ctrl-Z и видеть эти комментарии на панелях. Они хранятся в descript.ion. Такое еще есть в Total Commander. У меня столько таких комментов накопилось в коллекциях, архивах, рабочих файлах, что помогает в них ориентироваться. Так что потеря или усложнение к ним доступа существенно испортит жизнь. И список можно еще продолжить.
0
avatar
<code>Не удалось заблокировать базу данных
Не удалось синхронизировать базы данных</code>

принудительно обнови базу данных (в гуе в настройках памака есть такое меню)
?
Всегда есть быстрое простое неправильное решение.
быстрые простые правильные (иногда) ответы здесь t.me/ManjaroRu
+1
avatar
Спасибо, с базой данных это вопрос решило.
Но теперь состояние исходное:
— удаление wxgtk-common нарушает зависимость «wxgtk-common», необходимую для wxgtk2
PKGBUILD в отредактированном состоянии
0
avatar
читай коменты к пакету, там все написано, ссылку тебе выше дали, еще на гит загляни в коменты
?
Всегда есть быстрое простое неправильное решение.
быстрые простые правильные (иногда) ответы здесь t.me/ManjaroRu
0
avatar
И то, что он нашелся и на Linux
Фактически это не он. Это порт «по мотивам» от стороннего разработчика.
Цель использования понятна — привычка.
Комментарии к файлам, кстати, умеет double commander. Больше не знаю, весь этот семантический десктоп мне неинтересен.
Учтите, ctrl+z в терминальном режиме, скорее всего будет вести себя несколько… неожиданно, потому как по этому хоткею приложение отправится в bg.
необходимую для wxgtk2
А Вам точно нужен wxgtk2?
Тем более, судя по
sudo pacman -Rdd wxgtk-common wxgtk2 wxgtk3 
эти пакеты Вы удалили. Или нет?
Вообще какой-нибудь pikaur подобные конфликты пакетов разруливает в диалоговом режиме.
Последний раз редактировалось
+1
avatar
Ну да, удалил, после чего всё обновилось, только far перестал запускаться. Так что откатил Timeshift-ом.
Но сейчас подумал, зачем же тут и wxgtk3 удаляется? Так было в найденном рецепте.
Попробовал так:
sudo pacman -Rdd wxgtk-common wxgtk2

И получилось!!! Всё обновилось, в том числе и Far. Застрял только аудиокодек Celt. И он после удаления встал обратно без проблем.
Теперь всё суммирую и двинусь обновлять ноутбук.
Огромное спасибо за помощь и за информацию!
Последний раз редактировалось
0
avatar
Арчвики не рекомендует использовать набор ключей Rdd.
Но сейчас подумал, зачем же тут и wxgtk3 удаляется?
Потому что вместо него теперь wxwidgets-gtk3.
Механика работы команд из корневого поста темы проста.
Первая команда удаляет три пакета с игнорированием зависимостей, чтобы не тянуть все требующие их пакеты.
Вторая предоставляет им замену.
Образно говоря, вместо разборки-сборки стены, мы меняем в ее середине пару кирпичей.
Повторюсь, при обновлении системы приличным AUR-helper-ом это происходит в диалоговом режиме (продолжив аналогию, мы делегируем работу каменщика).
0
avatar
Арчвики не рекомендует использовать набор ключей Rdd.
при обновлении системы приличным AUR-helper-ом это происходит в диалоговом режиме
когда я советовал использовать
sudo pacman -Rdd wxgtk-common wxgtk2
wxwidgets-gtk3 или какой-то другой пакет, который требовался еще не завезли в репы манджаро(это длилось дня 2-3) или просто зеркала у кого-то не обновились, а некоторые пакеты из аур уже их хотели, но потом пришли обновы и такая проблема должна была отпасть автоматически, если кто-то не понимает, что делает, я не виноват.
Последний раз редактировалось
?
Отправка специалистом технической поддержки ссылки на руководство по эксплуатации и другую документацию, не является отказом в предоставлении поддержки.
bash.org
+1
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.