Table of Contents

Psi+ on Debian Linux

В debian testing и sid, а также в ubuntu пакеты находятся в официальном репозитории.

sudo apt-get install psi-plus psi-plus-plugins psi-plus-icons psi-plus-skins

Сборка пакета на Debian-based системах

В репозитории есть пакеты для Ubuntu, которые обновляются каждую ночь. (при наличии обновлений в репозитории psi+) Если по какой-то причине вас не устраивает периодичность обновления или вы используете другой Debian-based дистрибутив, то вы можете собирать свои версии пакетов.

Скачайте source пакеты psi-plus и psi-plus-icons последней версии и распакуйте их в произвольном каталоге. Из debian/scripts возьмите скрипты и положите их в тот-же каталог.

Вам потребуется исправить скрипт newBuild.sh Укажите свои email и имя для подписи пакетов, а так-же другие опции

LAST_DEB=5125-19
LAST_DEB_RES=5004

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

Ревизия генерируется по формуле «5000 + номер ревизи»-«ревизия плагинов»

При запуске скрипта он скачивает исходные коды и проверяет версию из svn, если она больше последней собранной, то собирается новый пакет. При изменении в папке иконок так-же собирается новый пакет с иконками - они меняются относительно редко.

Если у вас что-то не собрирается или собирается с ошибками, то проверьте наличие обновлений в ppa и используйте как базовую последнюю версию из ppa.

Что может понадобиться и как собирать?

В вашей системе может не быть libqca-qt5 и Qt>=5.6.0. В случае отсутствия – их необходимо установить до начала сборки.

Установка пакетов для сборки Psi+. Устанавливаются один раз при первой сборке:

sudo apt-get install git-core cmake libhunspell-dev libidn11-dev libminizip-dev libotr5-dev libqca-qt5-2-dev libqt5svg5-dev libqt5webkit5-dev libqt5x11extras5-dev libsignal-protocol-c-dev libsm-dev libssl-dev libtidy-dev libxss-dev qt5keychain-dev qtmultimedia5-dev zlib1g-dev libusrsctp-dev

Удаляем существующий каталог для сборки «начисто»:

cd ~
rm -rf psi-plus-snapshots/build

Скачиваем исходники Psi и субмодули из git:

git clone https://github.com/psi-plus/psi-plus-snapshots.git
cd psi-plus-snapshots

Полученную директорию можно сохранить, и потом, выполнив в ней команды, получить актуальную версию Psi+:

git pull

Cобираем Psi+ и устанавливаем (привилегии root понадобятся для установки):

mkdir -p ~/psi-plus-snapshots/build
cd ~/psi-plus-snapshots/build
cmake -DCHAT_TYPE=basic -DENABLE_PLUGINS=ON -DBUNDLED_IRIS=ON -S ../
cmake --build . --target all
sudo cmake --build . --target install

Данные команды соберут обычную не-вебкит версию Psi+ со всеми плагинами, если нужны функции вебкит / вебенжин версий, то вместо указанной команды нужно выполнить либо

cmake -DCHAT_TYPE=webkit -DENABLE_PLUGINS=ON ..

или

cmake -DCHAT_TYPE=webengine -DENABLE_PLUGINS=ON ..

Внимание!!! Устанавливать программу в систему при помощи make install - плохая практика. Если вам нужно проверить работу клиента или работать без установки, то необходимо собирать следующим образом:

mkdir -p ~/psi-plus-snapshots/build
cd ~/psi-plus-snapshots/build
cmake -DCHAT_TYPE=basic -DENABLE_PLUGINS=ON -DDEV_MODE=ON ..
cmake --build . --target all
cmake --build . --target prepare-bin
cd psi
./psi-plus

При наличии многоядерного процессора можно ускорить сборку, для этого в команду сборки нужно добавить флаг –parallel КОЛИЧЕСТВО_ЯДЕР_ПРОЦЕССОРА, например:

cmake --build . --target all --parallel 5

Полный список флагов сборки Psi/Psi+ доступен тут

Дополнения

Если необходимо установить дополнительные смайлы, иконки клиентов и настроений и/или русскую локализацию, то делаем следующее.

Смайлы, настроения и прочие иконпаки, а также скины, вебкит-темы и звуки

rm -rf ~/.local/share/psi+/iconsets
rm -rf ~/.local/share/psi+/skins
rm -rf ~/.local/share/psi+/sounds
rm -rf ~/.local/share/psi+/themes
git clone https://github.com/psi-im/resources.git ~/.local/share/psi+/

Предыдущая операция делается один раз, при первой сборке. Далее достаточно будет сделать:

cd ~/.local/share/psi+
git pull

Файлы локализации

cd ~
git clone https://github.com/psi-plus/psi-plus-l10n.git
cd psi-plus-l10n/translations
lrelease *.ts
mkdir -p ~/.local/share/psi+/translations
cp *.qm ~/.local/share/psi+/translations/

В заключении

Наслаждаемся ;-)