Talk возвращает ошибку при попытке подключиться к пользователю на другом компьютере

Пакеты могут поставляться с произвольными файлами которые находятся в том же каталоге, что и файл PKGBUILD. Для ваших целей вы можете сделать именно это. В функции package()файла PKGBUILD вы можете ссылаться на эти файлы как ${srcdir}/my-executable. Конечный результат может выглядеть следующим образом:

# snip!
source=(my-executable)
sha256sums=('foo')

package() {
  install -Dm755 "${srcdir}/my-executable" "${pkgdir}/usr/local/bin/my-executable"
}

Теперь вы можете создать пакет с помощью:

updpkgsums && mksrcinfo && makepkg

Обратите внимание, что этот подход действительно подходит только для доморощенных пакетов. неиспользуйте этот подход при загрузке пакетов в AUR. Файлы, которые поставляются вместе с вашим PKGBUILD, должны меняться нечасто — уж точно не с каждым выпуском. И если ваш исполняемый файл является двоичным, вам будет запрещено загружать свой пакет в AUR. (Или это сработает, и кто-то найдет это и забанит вас.)

Конкретный пример см. в mkgmap. Он устанавливает простой скрипт-оболочку в /usr/bin/mkgmap. Обратите внимание, что я использую несколько анахронизмов, например выполнение cd "${srcdir}/${pkgname}-${pkgver}"во главе package().

После того, как вы создали пакет, есть несколько доступных инструментов для доставки этих пакетов на все ваши хосты. Одним из хороших инструментов для конкретных приложений является pacserve. (Спасибо jasonwryan за подсказку.)

Кроме того, рассмотрите возможность использования такого инструмента, как Ansible. Если вы хотите, чтобы менеджер пакетов знал об этих исполняемых файлах, создайте пакет. Но если вы хотите поместить файлы в пользовательские каталоги, такие как ~/.local/bin/, системы управления конфигурацией могут вам помочь.

1
01.12.2017, 18:25
1 ответ

Запускал ли другой пользователь:

mesg y

Если нет, то это может быть причиной вашей проблемы.

0
28.01.2020, 00:59

Теги

Похожие вопросы