Страница 1 из 5

Trinity Desktop Environment на Gentoo

Добавлено: 14.11.2018 12:36
ormorph
Выложил репозиторий, доступен на Github тыц.

Доступна минимальная сборка, она же базовая.
Присутствует интеграция с Layman. Для этого надо добавить в /etc/layman/layman.cfg адрес:

Код: Выделить всё

https://raw.github.com/ormorph/TDE/master/layman/tde.overlay
Добавляется в overlays. Должно получиться примерно так:

Код: Выделить всё

overlays  :
    https://api.gentoo.org/overlays/repositories.xml
    https://raw.github.com/ormorph/TDE/master/layman/tde.overlay
После этого команда layman -L покажет наличие репозитория TDE.
Останется только выполнить:

Shell

# layman --fetch

Shell

# layman -a TDE
Перед сборкой лучше сразу размаскировать пакет из репозитория =www-misc/htdig-3.2.0_beta6-r6, этот пакет пропатчен для возможности сборки его gcc-7x. Тот что в системе по умолчанию не собирается, за отсутствием данного патча.
База устанавливается командой:

Shell

# emerge -av tde-minimal
Поддержка языков выставляется в /etc/portage/make.conf, в переменной L10N.
Пример: L10N="ru".
Эта переменная прописывается перед сборкой tde-minimal.
Пока еще добавлены tdewebdev для веб разработки и amarok, их можно собрать отдельно. ебилд kaffeine не рабочий. Ну и не думаю что в нем есть необходимость, так как для сборки в gentoo уже доступен другой такой же.

У меня вроде все собралось, может еще какие зависимости пропустил, если у кого не соберется. Проверено на архитектуре amd64.
Для поддержки consolekit следует добавить флаг consolekit для пакета trinity-base/tdelibs.

Минусы, звук системных уведомлений работает на arts, как костыль можно запускать через эмуляцию oss в pulseaudio padsp, этот режим запуска добавлен в /usr/share/xsessions.
Может кому пригодиться.

Альтернативный способ установки, используя пакет app-eselect/eselect-repository
Добавление репозитория в список /etc/portage/repos.conf/eselect-repo.conf:

Shell

# eselect repository add TDE git https://github.com/ormorph/TDE
Скачивание, синхронизация:

Shell

# emaint sync -r TDE
Как результат репозиторий будет находиться, обычно по умолчанию в /var/db/repos/TDE
Далее все то же самое что и с Layman, с той разницей, что репозиторй будет находиться в другом каталоге, отличном от Layman.

Re: Trinity Desktop Environment на Gentoo

Добавлено: 26.03.2019 00:07
ormorph
В оверлей добавлена новая версия рабочего стола TDE-14.0.6.
По умолчанию собирается без arts. Вроде все должно собираться, кроме trinity-apps/kvirc.
Перед сборкой желательно размаскировать, для этого перейти в каталог /etc/portage/package.keywords и установить символическую ссылку на файл из оверлея package.keywords/tde-14.0.6.
Пример:

Shell

# ln -sf /var/lib/layman/TDE/package.keywords/tde-14.0.6 tde
После этого можно выполнить:

Shell

# emerge tde-base
либо

Shell

# emerge tde-minimal
для минимальной сборки.
Spoiler
ИзображениеИзображение
Файлы из пакета trinity-base/tde-common-admin используются для обеспечения сборки некоторых пакетов, и могут использоваться для генерации configure файла в проектах tdevelop, правда сгенерированный configure по умолчанию привязывает проект к arts, даже там где он не используется, по этому лучше выполнять с такими опциями для сборки без arts:

Shell

$ build_arts=no ./configure --without-arts
У меня собралось норм, могут возникнуть проблемы с некоторыми зависимостями, которые я не учел, так как у меня эти пакеты уже были установлены.

Re: Trinity Desktop Environment на Gentoo

Добавлено: 01.04.2019 19:18
swine
Как с совместимостью с kde4? Конфликтовать не будут? Например та же superkaramba как себя поведёт?

Re: Trinity Desktop Environment на Gentoo

Добавлено: 01.04.2019 20:00
ormorph
swine писал(а):
01.04.2019 19:18
Как с совместимостью с kde4? Конфликтовать не будут?
Не будут, там все в отдельном каталоге /opt/trinity находится, по этому можно одновременно использовать даже два kaffeine.
Все пакеты отображаются в меню других рабочих столов за счет глобальной переменной XDG_DATA_DIRS
swine писал(а):
01.04.2019 19:18
Например та же superkaramba как себя поведёт?
Вполне нормально, работает.

Re: Trinity Desktop Environment на Gentoo

Добавлено: 01.04.2019 20:35
swine
Как приедет заказанный ноут, начну компилять. Жди багрепортов, и возможно фичреквестов )

Re: Trinity Desktop Environment на Gentoo

Добавлено: 01.04.2019 20:53
ormorph
swine писал(а):
01.04.2019 20:35
Как приедет заказанный ноут, начну компилять.
Удачи!
В tde-14.0.6 для сборки по умолчанию звуковой сервер arts не используется, у меня просто цель была выпилить это. Для вывода звука можно использовать любой плеер работающий с pulseaudio, например trinity-video/kaffeine.

Re: Trinity Desktop Environment на Gentoo

Добавлено: 01.04.2019 21:49
swine
Начну пожалуй с фичреквеста.
Хотелось бы видеть build_arts=no --without-arts вынесенными в use. Мне arts привычнее pulseaudio.

Re: Trinity Desktop Environment на Gentoo

Добавлено: 01.04.2019 22:10
ormorph
swine писал(а):
01.04.2019 21:49
Начну пожалуй с фичреквеста.
Хотелось бы видеть build_arts=no --without-arts вынесенными в use. Мне arts привычнее pulseaudio.
Ок, учту.
Такая идея была изначально, просто не очень нравится, когда запускаешь прогу в другом рабочем столе, а оно запускает arts. Ну и для некоторых пакетов эта зависимость излишня, так как просто не используется программой. Просто конфиг создаваемый по умолчанию требует зависимости arts, а она не нужна.
Например не нужен для gwenview. Для тем оформления тоже не думаю что нужен.

Это особенность разработки tdevelop, там даже окно hello world, конфиг сгенерированный с помощью tde-common-admin будет требовать arts.

Re: Trinity Desktop Environment на Gentoo

Добавлено: 02.04.2019 20:11
swine
Сделал на досуге небольшой патчик, работоспособность не проверял. Слегка непонятно про build_arts=no. Собственно вот: http://dpaste.com/2Q6RHGA

Re: Trinity Desktop Environment на Gentoo

Добавлено: 02.04.2019 21:21
ormorph
Хм, я как бы специально не использовал econf, так как некоторые параметры автоматом прописывает из eclass, например --prefix и т.д, по этому использовал на прямую configure.
econf не идет в данном случае. Также параметр $(use_enable arts), подставляет либо --enable-arts либо --disable-arts, данные параметры к сожалению в данном конфиге не используются, по тому смысла от них нет.
Я уже подправил, добавил поддержку arts в некоторые ебилды в зависимости от флага. И как я говорил смысла включать arts в gwenview нет, так как не использует его, например когда видеофайл проигрывает, то звук идет все равно через пульсу. Если конфиг ругается на отсутствие arts, так это по тому, что его генерирует tde-common-admin, такие уж у него параметры по умолчанию, и это не значит что arts в данном случае действительно необходим.

Re: Trinity Desktop Environment на Gentoo

Добавлено: 03.04.2019 17:59
swine
А не было мысли использовать наработки https://github.com/Fat-Zer/trinity ? И вики опять же на него ссылается.

Re: Trinity Desktop Environment на Gentoo

Добавлено: 03.04.2019 18:44
ormorph
swine писал(а):
03.04.2019 17:59
А не было мысли использовать наработки https://github.com/Fat-Zer/trinity ? И вики опять же на него ссылается.
У меня была цель создать то, в чем любой сможет разобраться и перенести себе без лишних переделок, с использованием только системных eclass.
Другими словами сплавить поддержку сборки данного окружения кому нибудь другому.
Ну и мне просто интересно было что там в trinity сделали, и как оно работает, по этому делал чисто для себя что бы посмотреть, ну и на всякий случай выложил что бы другие попробовали. Может заинтересует кого и можно будет ему сплавить))
Тут просто sunjob заинтриговал TDE, вот и решил сделать.

Fat-Zer В принципе не малый вклад внес в разработку Trinity, но оверлей для gentoo уже давно не поддерживает. Не знаю по чему там прописана в низу лицензия MIT(пардон AFL) если весь код под GPL-2 выкладывает, что в шапке каждого файла и прописано. Просто по лицензии AFL этот оверлей делался чисто в обучающих целях, хотя когда то сборка работала норм.
Кстати на счет конструкции build_arts=no ./configure --without-arts, я сделал вариант с оператором if.
Но в принципе можно сделать на много проще, так как --without-arts не работает без параметра build_arts=no, то можно сделать на много проще без if:

Код: Выделить всё

build_arts=$(usex arts yes no) ./configure --without-arts
build_arts=no это переменная с которой работает скрипт configure, которая подхватывается параметром --without-arts.

Re: Trinity Desktop Environment на Gentoo

Добавлено: 04.04.2019 16:05
ormorph
В tde-base добавлен флаг powermanagement, который добавляет в зависимость trinity-apps/tdepowersave. Так же добавлен ебилд trinity-apps/tdepowersave-14.0.6, что актуально для ноутбуков.
Spoiler
ИзображениеИзображение

Re: Trinity Desktop Environment на Gentoo

Добавлено: 12.04.2019 18:01
swine
CMake Error at cmake/modules/TDEMacros.cmake:24 (message):
#################################################

xcomposite is requested, but was not found on your system

trinity-base/tdebase
-DWITH_XCOMPOSITE=ON

Надо бы в depend добавить. И как мне кажется лучше юзом.

Re: Trinity Desktop Environment на Gentoo

Добавлено: 12.04.2019 18:35
ormorph
swine писал(а):
12.04.2019 18:01
Надо бы в depend добавить. И как мне кажется лучше юзом.
Ок, добавил в зависимости x11-libs/libXcomposite.

Re: Trinity Desktop Environment на Gentoo

Добавлено: 13.04.2019 20:52
swine
В trinity-base/arts/arts-14.0.6.ebuild надо убрать из DEPEND trinity-base/tdelibs, а в trinity-base/tdelibs напротив добавить в DEPEND trinity-base/arts при USE=arts.
Немного про EAPI="7" и DEPEND: https://dev.gentoo.org/~mgorny/articles/the-ultimate-guide-to-eapi-7.html#build-time-dependencies-split-into-depend-and-bdepend
Не понял конструкцию RDEPEND="${RDEPEND}" в trinity-base/arts/arts-14.0.6.ebuild :)
Добавлено (21:05):
Надо бы некоторые ебилды перепилить с BDEPEND. сборка фейлится при ROOT= SYSROOT= отличных от /. Но неудобно на нетбуке ковыряться.
Добавлено (21:11):
В смысле привести ебилды к EAPI="7", и заменить DEPEND на BDEPEND.

Re: Trinity Desktop Environment на Gentoo

Добавлено: 13.04.2019 21:36
ormorph
swine писал(а):
13.04.2019 20:52
Не понял конструкцию RDEPEND="${RDEPEND}" в trinity-base/arts/arts-14.0.6.ebuild
Упс..
swine писал(а):
13.04.2019 20:52
В смысле привести ебилды к EAPI="7", и заменить DEPEND на BDEPEND.
Не это не надо, просто тут принято разделение, инструменты сборки прописываются в BDEPEND, а зависимости в DEPEND. Но это не сильно важно.
На EAPI=7 перевел только пакеты использующие cmake-utils.
В результате инструменты сборки изменились, вместо make для сборки используется ninja. Так как в EAPI=7 генерация ninja выставлено по умолчанию. Это немного должно ускорить сборку.

Re: Trinity Desktop Environment на Gentoo

Добавлено: 13.04.2019 22:33
swine
Невнимательно ты читаешь)
Там как раз мой случай с ROOT= SYSROOT=. С BDEPEND нужные для сборки пакеты ставятся в хост систему, а с DEPEND нет, и соответственно сборка фейлится.

Re: Trinity Desktop Environment на Gentoo

Добавлено: 14.04.2019 00:38
ormorph
swine писал(а):
13.04.2019 22:33
Невнимательно ты читаешь)
Там как раз мой случай с ROOT= SYSROOT=. С BDEPEND нужные для сборки пакеты ставятся в хост систему, а с DEPEND нет, и соответственно сборка фейлится.
Не там зачем то добавил в зависимость tdelibs для arts, хотя в версии 14.0.5 она у меня отсутствовала, вот и получается балалайка ))
tdelibs для сборки arts не нужно. Я тогда целую кучу пакетов правил, мог где то сбиться и натворить. А так как на тот момент старался выпилить arts, по этому и не проверил)
А так если добавить файлик ~/.asoundrc:

Код: Выделить всё

# Use PulseAudio by default
pcm.!default {
  type pulse
  fallback "sysdefault"
  hint {
    show on
    description "Default ALSA Output (currently PulseAudio Sound Server)"
  }
}

ctl.!default {
  type pulse
  fallback "sysdefault"
}
То где то через минуту после старта pulseaudio перехватывает управление и arts начинает работать через pulseaudio alsa-плагин. Что позволяет использовать одновременно обе звуковые системы.

Re: Trinity Desktop Environment на Gentoo

Добавлено: 15.04.2019 06:58
swine
Сделал небольшой патчик, приведя ебилды с EAPI=7 к чуть более правильному виду. BDEPEND одно из основных изменений в нём. Заодно убрал # $Id$, как и в основном дереве портажей. Ну и кое-где встречались пробелы в конце строки. Их тоже убрал. По хорошему, надо бы разделить BDEPEND и DEPEND, но это выше моих сил :)
Вот сам патчик: http://dpaste.com/1693PFD и raw: http://dpaste.com/1693PFD.txt
Добавлено (07:09):
Патчик на trinity-base/tdemultimedia для юза arts: http://dpaste.com/0YPTGTB

Re: Trinity Desktop Environment на Gentoo

Добавлено: 15.04.2019 07:23
ormorph
Хм, ну и зачем это нужно?
Без DEPEND, получается та же самая очередность, что и была.
Просто BDEPEND выполняется до DEPEND, благодаря чему повышается гибкость, и устраняются циклические зависимости.
Ну и кавычки убирать не обязательно было из EAPI="7", в портах полно ебилдов оформленных подобным образом.
Вот уж вам скучно было ))

Re: Trinity Desktop Environment на Gentoo

Добавлено: 15.04.2019 07:46
/dev/random
ormorph писал(а):
15.04.2019 07:23
Просто BDEPEND выполняется до DEPEND, благодаря чему повышается гибкость, и устраняются циклические зависимости.
Нет, BDEPEND не для этого. При сборке одной системы из-под другой (ЕМНИП, swine писал, что это как раз его случай), BDEPEND ставится в ту систему, в которой идёт сборка, а DEPEND - в ту, которая собирается. До EAPI7 был только DEPEND, и ставился в обе системы. Кстати, насколько я могу судить без детального вникания, патч некорректен. Библиотеки должны идти в DEPEND, а сборочный инструментарий - в BDEPEND. Тут же без патча всё лежит в DEPEND, а с патчем - в BDEPEND, и оба варианта абсолютно некорректны.

Re: Trinity Desktop Environment на Gentoo

Добавлено: 15.04.2019 08:58
ormorph
/dev/random писал:
15.04.2019 07:46
Нет, BDEPEND не для этого. При сборке одной системы из-под другой (ЕМНИП, swine писал, что это как раз его случай)
Не там я просто с зависимостями намудрил и tdelibs не требовалось добавлять в BDEPEND.
А на счёт инструментов сборки, то тут надо будет ещё разгребать, например удалить из зависимостей те, которые и так добавляет eclass. А так в BDEPEND нужно будет перенести tde-common-*.

Re: Trinity Desktop Environment на Gentoo

Добавлено: 15.04.2019 11:45
swine
/dev/random писал:
15.04.2019 07:46
ormorph писал(а):
15.04.2019 07:23
Просто BDEPEND выполняется до DEPEND, благодаря чему повышается гибкость, и устраняются циклические зависимости.
Нет, BDEPEND не для этого. При сборке одной системы из-под другой (ЕМНИП, swine писал, что это как раз его случай), BDEPEND ставится в ту систему, в которой идёт сборка, а DEPEND - в ту, которая собирается. До EAPI7 был только DEPEND, и ставился в обе системы. Кстати, насколько я могу судить без детального вникания, патч некорректен. Библиотеки должны идти в DEPEND, а сборочный инструментарий - в BDEPEND. Тут же без патча всё лежит в DEPEND, а с патчем - в BDEPEND, и оба варианта абсолютно некорректны.
Совершенно с вами согласен. Я же и написал, что разделить DEPEND и BDEPEND выше моих сил)
Просто на скорую руку sed-ом пробежался.
Насчёт EAPI="7" не согласен. Погрепал /usr/portage. EAPI="7" - 222, EAPI=7 - 3666.

Re: Trinity Desktop Environment на Gentoo

Добавлено: 15.04.2019 13:13
ormorph
Ну вот уже способ объявления переменных вам не нравится)
Оба варианта корректны и работают.
Если хочется внести вклад, то можно посмотреть на множество пакетов, которые я ещё не собирал, например tdeaccessibility.
Тут буду только рад)

Re: Trinity Desktop Environment на Gentoo

Добавлено: 15.04.2019 20:17
swine
Пока что не на чем, да и времени маловато :(

Re: Trinity Desktop Environment на Gentoo

Добавлено: 15.04.2019 20:56
ormorph
Переписал я EAPI=7 с использованием BDEPEND.
Конструкцию # $Id$ не тронул, как же без нее собираться будет ))

Re: Trinity Desktop Environment на Gentoo

Добавлено: 15.04.2019 22:09
Bizdelnick
ormorph писал(а):
15.04.2019 20:56
Конструкцию # $Id$ не тронул, как же без нее собираться будет ))
Она же у Вас всё равно не работает.

Re: Trinity Desktop Environment на Gentoo

Добавлено: 16.04.2019 03:57
ormorph
Bizdelnick писал:
15.04.2019 22:09
Она же у Вас всё равно не работает.
Так вот и я о том же...
Но судя по всему она мозолит глаза )

Re: Trinity Desktop Environment на Gentoo

Добавлено: 16.04.2019 09:19
Bizdelnick
ormorph писал(а):
16.04.2019 03:57
Так вот и я о том же...
А для чего вставили? И, надеюсь, не сочтёте вопрос нескромным, — вообще знаете, для чего она?