ebuild для tile-qt (cvs, cmake)
Danhuu 15 декабря, 2011 - 00:29
Есть такая штучка - делает внешний вид tcl/tk приложений похожим на родные КДЕ-шные - TileQT. Однако предлагаемые на сайте тарболлы, на основе которых у меня хватило бы ума самому написать ebuild, жутко древние. У автора есть свежая версия Tile-Qt CVS, но на него у меня мозгов не хватает. Need Your help!
»
- Для комментирования войдите или зарегистрируйтесь

Я не совсем понял в чем
Я не совсем понял в чем конкретно нужна помощь, но может ebuild собирающий из CVS поможет:
# Copyright 1999-2008 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ inherit cvs eutils DESCRIPTION="Utility to replace a desktop background with a movie, screensaver, etc." KEYWORDS="~alpha ~amd64 ~arm ~hppa ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86" SLOT="0" IUSE="" DEPEND=">=x11-libs/libX11-1.0.3 >=media-libs/mesa-6.5" RDEPEND="${DEPEND}" ECVS_SERVER="anoncvs.freedesktop.org:/cvs/xapps" ECVS_MODULE="xwinwrap" ECVS_BRANCH="" ECVS_LOCALNAME="xwinwrap" ECVS_CO_DATE=${PV##*alpha} ECVS_UP_OPTS="-D ${ECVS_CO_DATE} -dP" ECVS_CO_OPTS="-D ${ECVS_CO_DATE}" S=${WORKDIR}/${ECVS_LOCALNAME} src_unpack() { cvs_src_unpack cd ${S} epatch "${FILESDIR}/xwinwrap-frameless-geometry.patch" } src_compile() { emake || die "emake failed" } src_install() { dobin xwinwrap }Тут скорее, дело не в CVS,
Тут скорее, дело не в CVS, тарболл там всё-таки прилагается, а в cmake - никогда не имел с ней дела. Я могу по аналогии написать примитивный ebuild для приложения,устанавливающегося классическим "configure - make - make install", а что делать с этим - непонятно.
аналогично же
inherit cmake-utils
....
$(cmake-utils_use_with avahi AVAHI) #просто пример
....
всё как обычно
Здесь были линки но пришла Larry и их слизнула =)
Данный аккаунт забанен так как его владелец не умеет себя культурно вести на форуме. /// WBR alexxy
Не склалось :-(
Поминутно заглядывая в man 5 ebuild и devmanual, родил такого вот уродца:
alver@hare ~ $ cat /usr/local/portage/dev-tcltk/tileqt/tileqt-0.5.0.ebuild # Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 inherit cmake-utils DESCRIPTION="TileQt is a theme for tk, which uses the Qt/KDE style engine to draw widgets." HOMEPAGE="http://www.ellogon.org/petasis/tcltk-projects/tileqt" SRC_URI="$P.tar.gz" RESTRICT="fetch" S="${WORKDIR}/tile-qt" LICENSE="GPL-2" SLOT="0" KEYWORDS="amd64 ~ppc x86" DEPEND=">=x11-libs/qt-gui-4 dev-lang/tk" pkg_nofetch() { einfo "Please download" einfo " - ${P}.tar.gz" einfo "from ${HOMEPAGE} and place them in ${DISTDIR}" }Извращение с RESTRICT="fetch" и pkg_nofetch(), т.к. нормальный адрес для SRC_URI из "http://tktable.cvs.sourceforge.net/viewvc/tktable/tile-themes/tile-qt/?view=tar" мне выцарапать не удалось. Для полного счастья, автор никак не определится с названием, и вперемешку использует то tile-qt, то tileqt, версию вообще пришлось выцарапывать из Cmakelist.txt. Оно даже пошло собираться, но вылетело с такой руганью:
Scanning dependencies of target tileqt0.5 [ 4%] [ 9%] [ 14%] Building CXX object CMakeFiles/tileqt0.5.dir/generic/tileQt_QApp.cpp.o Building CXX object CMakeFiles/tileqt0.5.dir/generic/tileQt_Init.cpp.o [ 19%] [ 23%] Building CXX object CMakeFiles/tileqt0.5.dir/generic/tileQt_Button.cpp.o Building CXX object CMakeFiles/tileqt0.5.dir/generic/tileQt_Background.cpp.o Building CXX object CMakeFiles/tileqt0.5.dir/generic/tileQt_Utilities.cpp.o In file included from /var/tmp/portage/dev-tcltk/tileqt-0.5.0/work/tile-qt/generic/tileQt_Elements.h:15:0, from /var/tmp/portage/dev-tcltk/tileqt-0.5.0/work/tile-qt/generic/tileQt_Utilities.h:17, from /var/tmp/portage/dev-tcltk/tileqt-0.5.0/work/tile-qt/generic/tileQt_Button.cpp:16: /var/tmp/portage/dev-tcltk/tileqt-0.5.0/work/tile-qt/generic/tileQt_TkHeaders.h:26:22: фатальная ошибка: ttkTheme.h: Нет такого файла или каталога Компиляция прервана. In file included from /var/tmp/portage/dev-tcltk/tileqt-0.5.0/work/tile-qt/generic/tileQt_Utilities.cpp:17:0: /var/tmp/portage/dev-tcltk/tileqt-0.5.0/work/tile-qt/generic/tileQt_TkHeaders.h:26:22: фатальная ошибка: ttkTheme.h: Нет такого файла или каталога Компиляция прервана. In file included from /var/tmp/portage/dev-tcltk/tileqt-0.5.0/work/tile-qt/generic/tileQt_Elements.h:15:0, from /var/tmp/portage/dev-tcltk/tileqt-0.5.0/work/tile-qt/generic/tileQt_Utilities.h:17, from /var/tmp/portage/dev-tcltk/tileqt-0.5.0/work/tile-qt/generic/tileQt_Init.cpp:10: /var/tmp/portage/dev-tcltk/tileqt-0.5.0/work/tile-qt/generic/tileQt_TkHeaders.h:26:22: фатальная ошибка: ttkTheme.h: Нет такого файла или каталога Компиляция прервана. In file included from /var/tmp/portage/dev-tcltk/tileqt-0.5.0/work/tile-qt/generic/tileQt_Elements.h:15:0, from /var/tmp/portage/dev-tcltk/tileqt-0.5.0/work/tile-qt/generic/tileQt_Utilities.h:17, from /var/tmp/portage/dev-tcltk/tileqt-0.5.0/work/tile-qt/generic/tileQt_Background.cpp:16: /var/tmp/portage/dev-tcltk/tileqt-0.5.0/work/tile-qt/generic/tileQt_TkHeaders.h:26:22: фатальная ошибка: ttkTheme.h: Нет такого файла или каталога Компиляция прервана. make[2]: *** [CMakeFiles/tileqt0.5.dir/generic/tileQt_Button.cpp.o] Ошибка 1 make[2]: *** Ожидание завершения заданий... make[2]: *** [CMakeFiles/tileqt0.5.dir/generic/tileQt_Utilities.cpp.o] Ошибка 1 In file included from /var/tmp/portage/dev-tcltk/tileqt-0.5.0/work/tile-qt/generic/tileQt_Elements.h:15:0, from /var/tmp/portage/dev-tcltk/tileqt-0.5.0/work/tile-qt/generic/tileQt_Utilities.h:17, from /var/tmp/portage/dev-tcltk/tileqt-0.5.0/work/tile-qt/generic/tileQt_QApp.cpp:17: /var/tmp/portage/dev-tcltk/tileqt-0.5.0/work/tile-qt/generic/tileQt_TkHeaders.h:26:22: фатальная ошибка: ttkTheme.h: Нет такого файла или каталога Компиляция прервана. make[2]: *** [CMakeFiles/tileqt0.5.dir/generic/tileQt_Background.cpp.o] Ошибка 1 make[2]: *** [CMakeFiles/tileqt0.5.dir/generic/tileQt_Init.cpp.o] Ошибка 1 make[2]: *** [CMakeFiles/tileqt0.5.dir/generic/tileQt_QApp.cpp.o] Ошибка 1 make[1]: *** [CMakeFiles/tileqt0.5.dir/all] Ошибка 2 make: *** [all] Ошибка 2 emake failed * ERROR: dev-tcltk/tileqt-0.5.0 failed (compile phase): * Make failed! * * Call stack: * ebuild.sh, line 75: Called src_compile * environment, line 2766: Called cmake-utils_src_compile * environment, line 742: Called _execute_optionaly 'src_compile' * environment, line 249: Called enable_cmake-utils_src_compile * environment, line 1009: Called cmake-utils_src_make * environment, line 761: Called die * The specific snippet of code: * emake "$@" || die "Make failed!"; * * If you need support, post the output of 'emerge --info =dev-tcltk/tileqt-0.5.0', * the complete build log and the output of 'emerge -pqv =dev-tcltk/tileqt-0.5.0'. * This ebuild is from an overlay named 'local_overlay': '/usr/local/portage/' * The complete build log is located at '/var/tmp/portage/dev-tcltk/tileqt-0.5.0/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/dev-tcltk/tileqt-0.5.0/temp/environment'. * S: '/var/tmp/portage/dev-tcltk/tileqt-0.5.0/work/tile-qt'Выяснилось, что ttkTheme.h вообще-то живёт в сорцах ttk. В гугле некто советовал вручную скопировать его в include установленного ttk. Скачал сорцы, скопировал файл, не помогло. Развернул тарболл, встаыил туда этот файл, уж надеялся, хоть там он найдётся. Сжал на место, но при попытке сунуть его в /usr/portage/distfiles/ portage стал привешивать к нему хвост типа "checksum failed" (логично, размер изменился), и куда надо вставлять новый checksum я тоже не въезжаю.
Короче, плюнул я на это, быстрее вручную поправить стандартную тему ttk, и, возможно, сорцы R Commander, чтобы шрифты и цвета не убивали мои изрезанные глаза, и заняться, наконец, работой - обсчитывать свои пробы. :-(
В итоге, зоологическая статистика под Линуксом возможна, но с трудом: чистый R слишком времяёмкий, PSPP, Rkward и SOFA не хватает необходимых возможностей. R Commander ближе всего к идеалу - возможностей хватает и по ходу работы можно R изучать, но мелкие шрифты и белый фон глаза нафиг убивают. Попробую эти моменты исправить хотя бы тупой правкой, всё лучше чем винду с крякнутой Statisic-ой ставить.
И спасибо megabaks, krigstask, slepnoga, winterheart и всем остальным, кто помогает сделать Gentoo ещё лучше!