Инструменты пользователя

Инструменты сайта


ru:opensuse

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
ru:opensuse [2010/09/08 09:32] zetru:opensuse [2019/04/28 13:54] (текущий) – внешнее изменение 127.0.0.1
Строка 1: Строка 1:
 ====== Psi+ on OpenSUSE Linux ====== ====== Psi+ on OpenSUSE Linux ======
  
-#labels OpenSUSE,Phase-Implementation +**ВНИМАНИЕ:** инструкция ниже протухла в связи с переездом на git. вы всегда можете попробовать [[linux|общую инструкцию по линуксу]].
- +
- +
- +
-Вступление +
  
 +===== Вступление =====
  
 Сборка Psi+ на OpenSUSE "с нуля" (на голой системе). Сборка Psi+ на OpenSUSE "с нуля" (на голой системе).
 +===== Что может понадобиться и как собирать? =====
  
- +В вашей системе может не быть **QtCrypto** и **QtDev** >=4.4.2. В случае отсутствия -- их необходимо установить до начала сборки.
- +
- +
- +
-= Что может понадобиться и как собирать?+
- +
- +
- +
-В вашей системе может не быть `QtCryptoи `QtDev>=4.4.2. В случае отсутствия -- их необходимо установить до начала сборки. +
- +
  
 Установка пакетов для сборки Psi+. Устанавливаются один раз при первой сборке. Установка пакетов для сборки Psi+. Устанавливаются один раз при первой сборке.
- 
- 
  
 <code> <code>
- 
 zypper in git-core gcc libqt4-devel qt4-x11-tools qdevelop patch make zypper in git-core gcc libqt4-devel qt4-x11-tools qdevelop patch make
- 
 </code> </code>
- 
- 
  
 Удаляем предыдущую сборку для сборки "начисто": Удаляем предыдущую сборку для сборки "начисто":
- 
- 
  
 <code> <code>
- +cd ~
-cd /home +
 rm psi -r rm psi -r
- 
 </code> </code>
  
- +Скачиваем исходники Psi и субмодули из git:
- +
-Скачиваем исходники Psi и субмодулей из git: +
- +
  
 <code> <code>
- +cd ~
-cd /home +
 git clone git://git.psi-im.org/psi.git git clone git://git.psi-im.org/psi.git
- 
 cd psi cd psi
- 
 git submodule init git submodule init
- 
 git submodule update git submodule update
- 
 </code> </code>
- 
- 
  
 Полученную директорию можете сохранить, и потом, выполнив в ней комманды, получите актуальную версию Psi. Полученную директорию можете сохранить, и потом, выполнив в ней комманды, получите актуальную версию Psi.
- 
- 
  
 <code> <code>
- 
 git pull git pull
- 
 git submodule update git submodule update
- 
 </code> </code>
- 
- 
  
 Скачаем все патчи и устанавливаем их: Скачаем все патчи и устанавливаем их:
- 
- 
  
 <code> <code>
- +cd ~
-cd /home +
 svn co http://psi-dev.googlecode.com/svn/trunk/patches/ psi svn co http://psi-dev.googlecode.com/svn/trunk/patches/ psi
- 
 cd psi cd psi
- 
 cat *.diff|patch -p1 cat *.diff|patch -p1
 +</code>
  
 +Скачиваем иконпаки, необходимые для сборки и прописываем актуальную ревизию в версию Psi+:
 +<code>
 +cd ~/psi
 +svn export --force http://psi-dev.googlecode.com/svn/trunk/iconsets/system/default iconsets/system/default
 +svn export --force http://psi-dev.googlecode.com/svn/trunk/iconsets/roster/default iconsets/roster/default
 +rev=`svnversion`
 +sed "s/\(xxx\)/${rev}/" -i src/applicationinfo.cpp
 </code> </code>
- 
- 
  
 Cобираем Psi+ и устанавливаем: Cобираем Psi+ и устанавливаем:
- 
- 
  
 <code> <code>
- +cd ~/psi
-cd /home/psi+
 qconf && ./configure --enable-plugins && make && make install qconf && ./configure --enable-plugins && make && make install
- 
 </code> </code>
  
 +__**Примечание!**__ Если не установлен **qconf**, то необходимо сделать это самому.
  
- +Если по команде **./configure** получаем ошибку qtcore, то пишем: 
-*Примечание!* Если не установлен *qconf*, необходимо сделать это самому. +
- +
-Если по команде ./configure получаем ошибку qtcore, то пишем: +
  
 <code> <code>
- 
 qmake --version qmake --version
- 
 </code> </code>
  
-смотрим путь и запускаем ./configure с пареметром: +Смотрим путь и запускаем **./configure** с пареметром:
- +
  
 <code> <code>
- 
 ./configure --qtdir=<path> ./configure --qtdir=<path>
- 
 </code> </code>
- 
- 
  
 Скорее всего это будет:  Скорее всего это будет: 
- 
- 
  
 <code> <code>
- 
 ./configure --qtdir=/usr/lib ./configure --qtdir=/usr/lib
- 
 </code> </code>
  
Строка 151: Строка 89:
  
  
- +===== Дополнения =====
- +
-= Дополнения = +
- +
  
 Если необходимо установить дополнительные смайлы, иконки настроений, или русскую локализацию, то делаем следующее: Если необходимо установить дополнительные смайлы, иконки настроений, или русскую локализацию, то делаем следующее:
  
  
- +==== Смайлы ====
-Смайлы:+
  
 <code> <code>
- 
 cd /usr/local/share/psi/iconsets/emoticons cd /usr/local/share/psi/iconsets/emoticons
- 
 wget http://psi-dev.googlecode.com/svn/trunk/iconsets/emoticons/lk_35x35x138_tasha.jisp wget http://psi-dev.googlecode.com/svn/trunk/iconsets/emoticons/lk_35x35x138_tasha.jisp
- 
 wget http://psi-dev.googlecode.com/svn/trunk/iconsets/emoticons/tasha_18x18x93.jisp wget http://psi-dev.googlecode.com/svn/trunk/iconsets/emoticons/tasha_18x18x93.jisp
- 
 </code> </code>
  
Строка 177: Строка 106:
  
  
-Настроения:+==== Настроения ====
  
 <code> <code>
- 
 cd /usr/local/share/psi/iconsets cd /usr/local/share/psi/iconsets
- 
 mkdir moods mkdir moods
- 
 cd moods cd moods
- 
 wget http://psi-dev.googlecode.com/svn/trunk/iconsets/moods/silk.jisp wget http://psi-dev.googlecode.com/svn/trunk/iconsets/moods/silk.jisp
- 
 </code> </code>
  
Строка 195: Строка 119:
  
  
-Русская локализация:+==== Русская локализация ====
  
 <code> <code>
- 
 cd /usr/local/share/psi cd /usr/local/share/psi
- 
 wget http://psi-ru.googlecode.com/svn/branches/psi-plus/psi_ru.qm wget http://psi-ru.googlecode.com/svn/branches/psi-plus/psi_ru.qm
- 
 </code> </code>
  
  
  
-=Сборка rpm-пакета=+===== Сборка rpm-пакета =====
  
  
  
-==Собираем исходные коды и патчи== +==== Собираем исходные коды и патчи ====
- +
  
 <code> <code>
- 
 #!/bin/sh #!/bin/sh
- 
 # #
- 
 #переменные: #переменные:
- 
 #$USER - имя пользователя в системе #$USER - имя пользователя в системе
- 
 home=/home/$USER home=/home/$USER
- 
 psi=/home/$USER/psi_dev psi=/home/$USER/psi_dev
- 
 #примечание: для архитектуры x86_64 заменить app_info на $(ls /home/$USER/psi_dev/psi/ | grep application-info.diff) #примечание: для архитектуры x86_64 заменить app_info на $(ls /home/$USER/psi_dev/psi/ | grep application-info.diff)
- 
 app_info=ls /home/$USER/psi_dev/psi/ | grep application-info.diff app_info=ls /home/$USER/psi_dev/psi/ | grep application-info.diff
- 
 build_root=/usr/src/packages/ build_root=/usr/src/packages/
- 
 #примечание: для архитектуры x86_64 заменить rev на $(svnversion "$/home/$USER/psi_dev/patches") #примечание: для архитектуры x86_64 заменить rev на $(svnversion "$/home/$USER/psi_dev/patches")
- 
 rev=`svnversion "$/home/$USER/psi_dev/patches"` rev=`svnversion "$/home/$USER/psi_dev/patches"`
- 
 cd ${home} cd ${home}
- 
 mkdir psi_dev mkdir psi_dev
- 
 cd ${psi} cd ${psi}
- 
 git clone git://git.psi-im.org/psi.git git clone git://git.psi-im.org/psi.git
- 
 cd psi cd psi
- 
 git submodule init git submodule init
- 
 git submodule update git submodule update
- 
 cd ${psi} cd ${psi}
- 
 svn co http://psi-dev.googlecode.com/svn/trunk/patches/ svn co http://psi-dev.googlecode.com/svn/trunk/patches/
- 
 cp ${psi}/patches/*diff ${psi}/psi cp ${psi}/patches/*diff ${psi}/psi
- 
 cd ${psi}/psi cd ${psi}/psi
- 
 sed "s/\(xxx Beta\)/${rev} Beta/" -i "${app_info}" sed "s/\(xxx Beta\)/${rev} Beta/" -i "${app_info}"
- 
 for f in *diff; do patch -p1 -i "${f}"; done for f in *diff; do patch -p1 -i "${f}"; done
- 
 sed 's/<!--\(.*plugins.*\)-->/\1/' -i psi.qc sed 's/<!--\(.*plugins.*\)-->/\1/' -i psi.qc
- 
 cd ${psi} cd ${psi}
- 
 mv psi psi-0.15_dev mv psi psi-0.15_dev
- 
 tar -pczf psi-0.15_dev.tar.gz psi-0.15_dev tar -pczf psi-0.15_dev.tar.gz psi-0.15_dev
- 
 rm -r ${build_root}/SOURCES/ rm -r ${build_root}/SOURCES/
- 
 cp psi-0.15_dev.tar.gz ${build_root}/SOURCES cp psi-0.15_dev.tar.gz ${build_root}/SOURCES
- 
 chown -R $USER:users ${psi} chown -R $USER:users ${psi}
- 
 exit 0 exit 0
- 
 </code> </code>
  
 +__**Примечание**__: данный скрипт сам собирает исходные коды и подготавливает их к сброке в rpm-пакет (необходимо запускать с __правами root__).
  
- 
-_Примечание:_ данный скрипт сам собирает исходные коды и подготавливает их к сброке в rpm-пакет (необходимо запускать с правами *root*). 
- 
- 
- 
-==Для сборки rpm-пакета необходим spec-файл== 
  
  
 +==== Для сборки rpm-пакета необходим spec-файл ====
  
 <code> <code>
- +Summary: Client application for the XMPP network      
-Summary: Client application for the Jabber network       +
 Name: psi                                                Name: psi                                               
- 
 Version: 0.15_dev                                        Version: 0.15_dev                                       
- 
 Release: %{dist}                                         Release: %{dist}                                        
- 
 License: GPL                                             License: GPL                                            
- 
 Group: Applications/Internet                             Group: Applications/Internet                            
- 
 URL: http://code.google.com/p/psi-dev/                   URL: http://code.google.com/p/psi-dev/                  
- 
 Source0: %{name}-%{version}.tar.gz                       Source0: %{name}-%{version}.tar.gz                      
- 
  
  
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
- 
  
  
 BuildRequires: openssl-devel, gcc-c++, zlib-devel BuildRequires: openssl-devel, gcc-c++, zlib-devel
- 
 %{!?_without_freedesktop:BuildRequires: desktop-file-utils} %{!?_without_freedesktop:BuildRequires: desktop-file-utils}
- 
  
  
 %description %description
- 
 Psi is the premiere Instant Messaging application designed for Microsoft Windows,  Psi is the premiere Instant Messaging application designed for Microsoft Windows, 
- +Apple Mac OS X and GNU/Linux. Built upon an open protocol named XMPP,           
-Apple Mac OS X and GNU/Linux. Built upon an open protocol named Jabber,            +
 si is a fast and lightweight messaging client that utilises the best in open       si is a fast and lightweight messaging client that utilises the best in open      
- 
 source technologies. The goal of the Psi project is to create a powerful, yet      source technologies. The goal of the Psi project is to create a powerful, yet     
- +easy-to-use XMPP client that tries to strictly adhere to the XMPP drafts.   
-easy-to-use Jabber/XMPP client that tries to strictly adhere to the XMPP drafts.   +and XMPP JEPs. This means that in most cases, Psi will not implement a feature   
- +unless there is an accepted standard for it in the XMPP community. Doing so     
-and Jabber JEPs. This means that in most cases, Psi will not implement a feature   +
- +
-unless there is an accepted standard for it in the Jabber community. Doing so      +
 ensures that Psi will be compatible, stable, and predictable, both from an end-user  ensures that Psi will be compatible, stable, and predictable, both from an end-user 
- 
 and developer standpoint.                                                            and developer standpoint.                                                           
- 
  
  
 %prep %prep
- 
 %setup %setup
- 
  
  
 %build %build
- 
 qconf qconf
- 
 #для сборки без webkit'a нужно удалить флаг *--enable-qtwebkit* #для сборки без webkit'a нужно удалить флаг *--enable-qtwebkit*
- 
 ./configure --prefix="%{_prefix}" --bindir="%{_bindir}" --datadir="%{_datadir}" --qtdir=$QTDIR --enable-plugins --enable-qtwebkit --no-separate-debug-info ./configure --prefix="%{_prefix}" --bindir="%{_bindir}" --datadir="%{_datadir}" --qtdir=$QTDIR --enable-plugins --enable-qtwebkit --no-separate-debug-info
- 
 %{__make} %{?_smp_mflags}                                                                                                                %{__make} %{?_smp_mflags}                                                                                                               
- 
  
  
 %install %install
- 
 %{__rm} -rf %{buildroot} %{__rm} -rf %{buildroot}
- 
  
  
 %{__make} install INSTALL_ROOT="%{buildroot}" %{__make} install INSTALL_ROOT="%{buildroot}"
- 
  
  
 # Install the pixmap for the menu entry # Install the pixmap for the menu entry
- 
 %{__install} -Dp -m0644 iconsets/system/default/logo_128.png}} \ %{__install} -Dp -m0644 iconsets/system/default/logo_128.png}} \
- 
     %{buildroot}%{_datadir}/pixmaps/psi.png}} ||:                    %{buildroot}%{_datadir}/pixmaps/psi.png}} ||:               
- 
  
  
 %post %post
- 
 touch --no-create %{_datadir}/icons/hicolor || : touch --no-create %{_datadir}/icons/hicolor || :
- 
 %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || : %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || :
- 
  
  
 %postun %postun
- 
 touch --no-create %{_datadir}/icons/hicolor || : touch --no-create %{_datadir}/icons/hicolor || :
- 
 %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || : %{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || :
- 
  
  
 %clean %clean
- 
 %{__rm} -rf %{buildroot} %{__rm} -rf %{buildroot}
- 
  
  
 %files %files
- 
 %defattr(-, root, root, 0755) %defattr(-, root, root, 0755)
- 
 %doc COPYING README TODO %doc COPYING README TODO
- 
 %{_bindir}/psi %{_bindir}/psi
- 
 %{_datadir}/psi/ %{_datadir}/psi/
- 
 %{_datadir}/pixmaps/psi.png %{_datadir}/pixmaps/psi.png
- 
 %{_datadir}/applications/psi.desktop %{_datadir}/applications/psi.desktop
- 
 %{_datadir}/icons/hicolor/*/apps/psi.png %{_datadir}/icons/hicolor/*/apps/psi.png
- 
 %exclude %{_datadir}/psi/COPYING %exclude %{_datadir}/psi/COPYING
- 
 %exclude %{_datadir}/psi/README %exclude %{_datadir}/psi/README
- 
 </code> </code>
  
 +__**Примечание**__: spec-файл нужно сохранить в **/usr/src/packages/SPECS/psi.spec**
  
  
-_Примечание:_ spec-файл нужно сохранить в */usr/src/packages/SPECS/psi.spec* 
  
  
  
- +==== Сборка rpm-пакета ====
- +
-==Сборка rpm-пакета== +
- +
  
 <code> <code>
- 
 cd /usr/src/packages/SPECS/ cd /usr/src/packages/SPECS/
- 
 rpmbuild -bb psi.spec rpmbuild -bb psi.spec
- 
 </code> </code>
  
  
  
-_Примечание:_ флаг *-bb* указывает программе на сборку бинарного пакета. После удачной сборки пакет можно забрать из директории /usr/src/packages/RPMS/$архитектура-процессора. +__**Примечание**__Флаг **-bb** указывает программе на сборку бинарного пакета. После удачной сборки пакет можно забрать из директории **/usr/src/packages/RPMS/$архитектура-процессора**.
- +
  
 И установить командой:  И установить командой: 
  
 <code> <code>
- 
 rpm -ihv psi-0.15_dev.rpm rpm -ihv psi-0.15_dev.rpm
- 
 </code> </code>
  
  
  
-= В заключении = +===== В заключении =====
- +
  
 Наслаждаемся ;-) Наслаждаемся ;-)
ru/opensuse.1283938325.txt.gz · Последнее изменение: 2010/10/17 15:36 (внешнее изменение)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki