ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: Alexey Morozov <alex-altlinux@idisys.iae.nsk.su>
To: ALT Devel discussion list <devel@altlinux.ru>
Subject: Re: [devel] gtk engines smooth
Date: Tue, 7 Sep 2004 18:07:23 +0700
Message-ID: <20040907110723.GH27133@pyro.hopawar.private.net> (raw)
In-Reply-To: <1094502670.5807.63.camel@alpha.tirs.ru>

[-- Attachment #1: Type: text/plain, Size: 5791 bytes --]

On Tue, Sep 07, 2004 at 12:31:10AM +0400, Вячеслав Диконов wrote:
> > В один и тот же пакет темы для разных версий GTK? 
> > Движок (engine) того же smooth'а потянет за собой GTK соответствующей
> > версии, что, вообще-то, нежелательно. 
> Именно. Над этим я думал три дня и ничего лучшего не выдумал. Все
> остальные варианты оказываются сложнее для упаковки и установки.
Тогда я против.
GTK+-1.x вообще-то доживает последние месяцы.

> Вот они:
> 1) gtk-themes-* в котором все библиотеки и gtkrc файлы тем
> для gtk1 и gtk2. Недостаток - двойная зависимость. Достоинство -
> простота установки и гарантированная синхронность переключения.
Вы путаете gtk-themes и gtk-engines.

Темы могут не зависеть от наличия libgtk+....so.X.Y.Z. Движки (engines)
_линкуются_ с ними, поэтому, если вы не намерены нарушать неприличным
образом процесс автоматического поиска зависимостей, то, GTK+-1 в
систему попадет.

С другой стороны, зависимость gtk-themes -> обе версии gtk-engines
приводит к появлению непрямой зависимости на GTK обеих версий.

> Сборка gtk1 части тем может быть отключена 1 переменной в spec. Я также
> думаю над возможностью искусственно отключить зависимоcти таких пакетов
> от gtk (Autoreq = 0) или заставить оба gtk предоставлять общее
> одинаковое имя и требовать уже его.
См. выше о природе этих зависимостей. Это _правильные_ зависимости. Без
них ничего работать не будет.

> 2) gtk1-themes-* + gtk2-themes-* Для установки темы для всей рабочей
> среды нужны _оба_ пакета и поэтому gnome-themes-* требует их вместе. Это
> значит, что двойная зависимость никуда не делась! Чтобы избавиться от
> нее нужны условные зависимости типа "ЕСЛИ УСТАНОВЛЕН GTK1, ТО
> ВИРТУАЛЬНЫЙ ПАКЕТ Х ТРЕБУЕТ ПАКЕТ Y, А В ПРОТИВНОМ СЛУЧАЕ - НЕ ТРЕБУЕТ"
> Я не согласен отказаться от зависимости на все темы в вершинных пакетах
> типа gnome-themes или kde-themes, потому что это лишает смысла такие
> пакеты и всю затею.
Ну, может, и ладно? :-) А если серьезно, то GNOME нынче уже весь GTK+-2
Реально осталось в пределах десятка приложений, которые вообще могут
потребовать GTK+1, да и то, прогресс по искоренению таких приложений
идет семимильными шагами.

> 3) gtk-engine-* + gtk-themes или gtk1/2-engine-* + gtk1/2-themes -
> CСчитаю это напрасным умножением пакетов так как с точки зрения
> пользователя устанавливающего темы существование engines - лишняя
> головная боль.
? Это способ отделить "код" от "хужожеств", поскольку это вполне
параллельно развивающиеся сущности. Не поймите меня превратно, но
мне кажется у тем и движков совершенно разный жизненный цикл.

> Все модули прорисовки имеют в комплекте как минимум 1
> стандартную тему. Дополнительных тем может быть много из других
> источников. Проще всего оказывается свалить всю гору исходных пакетов в
> общем srpm и на выходе получать один пакет, где все лежит по
> полочкам. Spec получается несложный (исключение - smooth, потому что
> какой-то мудрец додумался приделать automake к десятку файлов gtkrc) 
а почему нет? ;-) Это нормальный способ не думать о деталях установки
вообще. Промышленный.

> > Удобство переключения, это,
> > конечно, круто, но, во-первых, есть вопросы относительно того, всегда ли
> > такая синхронность нужна, 
> Она нужна до тех пор, пока в Сизифе есть gtk1. Поскольку он уходящее
> явление, то следует максимально упрощать всю сопутствующую
> инфраструктуру и не городить лишних пакетов. Собирать все с ним
> связанное я хочу в ifdef с возможностью легко отключить сборку.
Ну, вообще-то, я в smooth'е уже сделал этот самый ifdef :-)

А предлагать пользователю напоследок скачать GTK+-1.x из-за того, что
ему понравилась какая-нибудь смазливая темка для GTK+-2 - по-моему,
напрасная трата траффика. Даже не потому, что денег жалко, а непонятен
смысл такого действа.

> > а, во-вторых, породит вопли вида:
> > захотел поставить smooth, получил две версии библиотеки => зависимости в
> > ALT убитые.
> Я отчасти согласен, но это неверный вывод.
Да? Ну тогда объясните это всем тем, кто высказывает такое мнение на
форумах и прочих отстойниках общественного сознания.


> gtk1 сам по себе невелик на фоне всего, что неизбежно будет стоять в
> системе с графическим интерфейсом, и почти наверняка понадобится для
> вещей типа usbview или *drake.
У меня не стоит этих замечательных утилит. Я многое теряю?

> Кроме того, зависимость на gtk можно вообще убрать.
Нет. Смотри выше, почему.

> Пакеты icon-themes тоже можно поставить "в пустоту".
А вот зависимости библиотек, увы, нет. По крайней мере, если вы хотите
этими библиотеками пользоваться :-)


> > gtk-themes-smooth, который будет требовать gtk-engines-smooth и
> > gtk-themes-smooth обеих версий, то я не против.
> См. вариант 2. Можно и так, но тогда будет вместо одного толстого пакета
> орда мелких. Я как раз и хочу уменьшить этот эффект.
Почему не предоставить машине возможность выбирать всю мелочевку,
а человеку дать в руки "макроинструменты"?


> Идея в том, чтобы переключение темы оказывало единообразное действие на
> все установленные программы (или максимальное их число). С какой стати
Опс... Это значит, что мой любимый ксемакс из темно-серого на светло-сером
опять станет черным на ярко-белом? Увы, я не очень одобряю эту идею :-)


> пользователей, желающих просто сделать сменить надоевшее оформление,
> должны волновать различия версий gtk и вообще существование разных
> библиотек? В форточках интерфейс тоже не только на MFC бывает, но
> выглядит и управляется одинаково и это плюс, который следует перенять.
Как это связано с вопросами пакетизации?


> Хорошо. Это нужно сделать завтра, потому что за него цепляется целый
> паровозик.
Хех... Спешность хороша только при ловле блох. Да и то не всегда :-)


[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

  parent reply	other threads:[~2004-09-07 11:07 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-09-05 17:27 Вячеслав Диконов
2004-09-05 18:30 ` Andrey Rahmatullin
2004-09-05 19:23   ` Вячеслав Диконов
2004-09-05 20:37     ` Вячеслав Диконов
2004-09-06 14:20 ` Alexey Morozov
2004-09-06 20:31   ` Вячеслав Диконов
2004-09-07  5:45     ` [devel] " Michael Shigorin
2004-09-07  6:52       ` Вячеслав Диконов
2004-09-07  6:59         ` Alexey I. Froloff
2004-09-07  7:08           ` Вячеслав Диконов
2004-09-07  7:13             ` Alexey I. Froloff
2004-09-07  8:41         ` Michael Shigorin
2004-09-07  9:59           ` Вячеслав Диконов
2004-09-07 15:50             ` Michael Shigorin
2004-09-07 17:40               ` Вячеслав Диконов
2004-09-08  5:53                 ` Michael Shigorin
2004-09-07 11:07     ` Alexey Morozov [this message]
2004-09-07 11:08       ` [devel] " Alexey I. Froloff
2004-09-07 11:59         ` [devel] [JT] Alive! she cried Alexey Morozov
2004-09-09 13:15           ` Yury Aliaev
2004-09-07 13:06         ` [devel] gtk engines smooth Vladimir Lettiev
2004-09-07 13:07       ` Andrey Rahmatullin
2004-09-07 13:42         ` Вячеслав Диконов
2004-09-07 13:53         ` Alexey Morozov
2004-09-07 17:32           ` Вячеслав Диконов
2004-09-07 18:57             ` Вячеслав Диконов
2004-09-08  5:48               ` Alexey Morozov
2004-09-08  5:50               ` [devel] " Michael Shigorin
2004-09-08  8:20               ` [devel] " Andrey Rahmatullin
2004-09-08  8:24                 ` Sergey Pinaev
2004-09-08  5:36             ` Alexey Morozov
2004-09-07 13:35       ` Вячеслав Диконов
2004-09-10  7:55 ` Yuri N. Sedunov
2004-09-10  9:23   ` Вячеслав Диконов
2004-09-10 10:34     ` Yuri N. Sedunov
2004-09-10 12:29       ` Вячеслав Диконов
2004-09-10 12:36         ` [devel] " Michael Shigorin
2004-09-10 13:42         ` [devel] " Yuri N. Sedunov
2004-09-10 15:28           ` Вячеслав Диконов

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20040907110723.GH27133@pyro.hopawar.private.net \
    --to=alex-altlinux@idisys.iae.nsk.su \
    --cc=devel@altlinux.ru \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git