Участник:Petr-akhlamov/Сборка TDE
После длительной заброшенности данной DE, я хочу попробовать взять ее поддержку в ALT Linux на себя. Опыта в сборке пакетов у меня нет, я начну с нуля и на этой странице я буду для себя и для окружающих (чтобы помогли и подсказали) описывать ход сборки.
Подготовка
1. Ставим пакеты hasher, git, gear
2. Создаем окружение hasher
hsh --initroot-only ~/hasher
3. Создаем файл ~/.hasher/config
USER=petr workdir="/tmp/.private/petr/" target=x86_x64 packager="`rpm --eval %packager`" apt_config="$HOME/.hasher/apt.conf" mount=/dev/pts,/proc no_sisyphus_check="packager,buildhost,gpg"
4. Выполняем
git config --global user.email "you@example.com" git config --global user.name "Your Name"
Структура srpm-пакетов в ALT
TDE
|--kkbswitch - https://packages.altlinux.org/ru/c8_1/srpms/kkbswitch
|--kdeedu - https://packages.altlinux.org/ru/c8_1/srpms/kdeedu
|--kdenetwork - https://packages.altlinux.org/ru/c8_1/srpms/kdenetwork
|--kde3-menu-common
|--kdetoys - https://packages.altlinux.org/ru/c8_1/srpms/kdetoys
|--kdegames - https://packages.altlinux.org/ru/c8_1/srpms/kdegames
|--kdegraphics - https://packages.altlinux.org/ru/p8/srpms/kdegraphics
|--kdeutils - https://packages.altlinux.org/ru/c8_1/srpms/kdeutils
|--kdeadmin - https://packages.altlinux.org/ru/c8_1/srpms/kdeadmin
|--kdemultimedia - https://packages.altlinux.org/ru/c8_1/srpms/kdemultimedia
|--kdeaccessibility - https://packages.altlinux.org/ru/c8_1/srpms/kdeaccessibility
|--kdeaddons - https://packages.altlinux.org/ru/c8_1/srpms/kdeaddons
|--kdepim - https://packages.altlinux.org/ru/c8_1/srpms/kdepim
|--kdeartwork - https://packages.altlinux.org/ru/c8_1/srpms/kdeartwork
|--kdebase - https://packages.altlinux.org/ru/c8_1/srpms/kdebase
|--kdebindings - https://packages.altlinux.org/ru/c8_1/srpms/kdebindings
`-
|
`-- altlinux-freedesktop-menu https://packages.altlinux.org/ru/p9/srpms/altlinux-freedesktop-menu
|
`-- kdesdk https://packages.altlinux.org/ru/c8_1/srpms/kdesdk
|
`-- libdbus-tqt https://packages.altlinux.org/ru/c8_1/srpms/libdbus-tqt
|
`-- kdeadmin https://packages.altlinux.org/ru/c8_1/srpms/kdeadmin
TDE
|--qt3 - https://packages.altlinux.org/ru/c8_1/srpms/qt3
|--tqtinterface - https://packages.altlinux.org/ru/c8_1/srpms/tqtinterface
|--arts - https://packages.altlinux.org/ru/c8_1/srpms/arts
|--dbus-qt3 - https://packages.altlinux.org/ru/c8_1/srpms/dbus-qt3
|--libart_lgpl - https://packages.altlinux.org/ru/c8_1/srpms/libart_lgpl
|--avahi-qt3 - https://packages.altlinux.org/ru/p8/srpms/avahi
|--tdelibs - https://packages.altlinux.org/ru/c8_1/srpms/kdelibs
`-- kdeadmin https://packages.altlinux.org/ru/c8_1/srpms/kdeadmin
Пакеты
Srpm-пакет | Пакеты | Версия исп/тек | зависимости | изменения |
---|---|---|---|---|
*sqlite3 | http://git.altlinux.org/people/sem/packages/?p=sqlite.git;a=commit;h=65e55432ca66d52066d1846a4a29d854084c287d Sqlite для сборки TQT3 | |||
qt3 |
|
транк/транк | ||
tqtinterface |
|
3.5.13.2/14.0.7 |
|
Обновление до новой версии |
arts |
|
1.5.10-alt6/[1.5.10-alt7] |
libalsa-devel libltdl7-devel libjpeg-devel libmad-devel |
|
dbus-qt3 |
| |||
libart_lgpl |
| |||
avahi-qt3 | ||||
tdelibs |
| |||
kdeadmin |
|
Srpm-пакет | Пакеты |
---|---|
kkbswitch |
|
kdeedu |
|
kdenetwork |
|
kde3-menu-common | |
kdetoys |
|
kdegames |
|
kdegraphics |
|
kdeutils |
|
kdeadmin |
|
kdemultimedia |
|
kdeaccessibility |
|
kdeaddons |
|
kdepim |
|
kdeartwork |
|
kdebase |
|
altlinux-freedesktop-menu |
|
kdesdk |
|
libdbus-tqt |
|
kdebindings |
|
Порядок сборки
tqt3(replaces Qt3; Qt3 without the tqtinterface layer remains available)tqtinterface- arts
- dbus-tqt
- dbus-1-tqt
- tqca-tls (Recommended but required for some applications, such as the Kopete OTR add-on)
- libart-lgpl
- avahi-tqt (Recommended but required when supporting DNS discovery services)
- tdelibs
- tdebase
- At this point, you should have a functioning TDE desktop with basic utilities (terminal, file manager, text/source editors, etc.) If you're going to build tdebindings and want Python support available, continue with the Python linking packages (or skip over them if you don't care about Python support):
- sip4-tqt
- python-tqt
- pytdeextensions
- python-trinity
- tqscintilla
The following build order seems to work well for the remaining core packages when building the stable release. You don't have to install everything, though, unless you're packaging TDE for your distribution--pick the packages that suit your use case.
- tdebindings
- tdeaccessibility
- tdeutils
- tdemultimedia
- tdenetwork
- tdeadmin
- tdeartwork
- tdegames
- tdetoys
- tdeedu
- tdegraphics
- tdepim
- tdesdk (Build tdesdk after installing tdepim. tdepim provides libkcal (bugzilla) hooks for tdesdk.)
- tdevelop (Build tdevelop after tdesdk. tdesdk provides cvs support for tdevelop.)
- tdeaddons
Сборка
Готового пакета:
git clone http://git.altlinux.org/gears/q/qt3.git cd qt3 git checkout -b sisyphus remotes/origin/p8 gear-hsh /home/petr/GIT/qt3/output/
С внесенными изменениями (изменение исходников, правка spec)
git clone http://git.altlinux.org/gears/q/qt3.git cd qt3 git checkout -b sisyphus remotes/origin/p8 //правка gear-commit -a :wq gear-hsh /home/petr/GIT/qt3/output/
Использование уже собранного пакета для сборки:
Добавьте в /etc/apt/sources.list строку
rpm-dir file:/home/petr/TDE/common/build/repo x86_64 hasher
где file: - путь до каталога с локальным репозиторием, куда hasher собрал пакеты.
Проблемы
- У пакета arts после обновления исходников не применяется Patch31, хотя, вроде, файлы остались те же самые