From: "Вячеслав Диконов" <sdiconov@mail.ru> To: ALT Devel discussion list <devel@altlinux.ru> Subject: Re: [devel] gtk engines smooth Date: Tue, 07 Sep 2004 00:31:10 +0400 Message-ID: <1094502670.5807.63.camel@alpha.tirs.ru> (raw) In-Reply-To: <20040906142008.GG27133@pyro.hopawar.private.net> On Пнд, 2004-09-06 at 21:20 +0700, Alexey Morozov wrote: > > Кроме того, надо вообще что-то сделать с размещением по пакетам > > библиотек прорисовки и тем для gtk1 и gtk2. У нас 2 версии gtk и очень > > желательно, чтобы темы для обеих были одинаковы. При выборе > > темы gtk2 пишется ~/.gtkrc с той же темой для gtk1, поэтому если > > собирать одноименные темы gtk1 и gtk2 вместе в одни и те же пакеты > > переключение будет прозрачно синхронизировано. > В один и тот же пакет темы для разных версий GTK? > Движок (engine) того же smooth'а потянет за собой GTK соответствующей > версии, что, вообще-то, нежелательно. Именно. Над этим я думал три дня и ничего лучшего не выдумал. Все остальные варианты оказываются сложнее для упаковки и установки. Вот они: 1) gtk-themes-* в котором все библиотеки и gtkrc файлы тем для gtk1 и gtk2. Недостаток - двойная зависимость. Достоинство - простота установки и гарантированная синхронность переключения. Сборка gtk1 части тем может быть отключена 1 переменной в spec. Я также думаю над возможностью искусственно отключить зависимоcти таких пакетов от gtk (Autoreq = 0) или заставить оба gtk предоставлять общее одинаковое имя и требовать уже его. 2) gtk1-themes-* + gtk2-themes-* Для установки темы для всей рабочей среды нужны _оба_ пакета и поэтому gnome-themes-* требует их вместе. Это значит, что двойная зависимость никуда не делась! Чтобы избавиться от нее нужны условные зависимости типа "ЕСЛИ УСТАНОВЛЕН GTK1, ТО ВИРТУАЛЬНЫЙ ПАКЕТ Х ТРЕБУЕТ ПАКЕТ Y, А В ПРОТИВНОМ СЛУЧАЕ - НЕ ТРЕБУЕТ" Я не согласен отказаться от зависимости на все темы в вершинных пакетах типа gnome-themes или kde-themes, потому что это лишает смысла такие пакеты и всю затею. 3) gtk-engine-* + gtk-themes или gtk1/2-engine-* + gtk1/2-themes - CСчитаю это напрасным умножением пакетов так как с точки зрения пользователя устанавливающего темы существование engines - лишняя головная боль. Все модули прорисовки имеют в комплекте как минимум 1 стандартную тему. Дополнительных тем может быть много из других источников. Проще всего оказывается свалить всю гору исходных пакетов в общем srpm и на выходе получать один пакет, где все лежит по полочкам. Spec получается несложный (исключение - smooth, потому что какой-то мудрец додумался приделать automake к десятку файлов gtkrc) > Удобство переключения, это, > конечно, круто, но, во-первых, есть вопросы относительно того, всегда ли > такая синхронность нужна, Она нужна до тех пор, пока в Сизифе есть gtk1. Поскольку он уходящее явление, то следует максимально упрощать всю сопутствующую инфраструктуру и не городить лишних пакетов. Собирать все с ним связанное я хочу в ifdef с возможностью легко отключить сборку. > а, во-вторых, породит вопли вида: > захотел поставить smooth, получил две версии библиотеки => зависимости в > ALT убитые. Я отчасти согласен, но это неверный вывод. gtk1 сам по себе невелик на фоне всего, что неизбежно будет стоять в системе с графическим интерфейсом, и почти наверняка понадобится для вещей типа usbview или *drake. Кроме того, зависимость на gtk можно вообще убрать. Пакеты icon-themes тоже можно поставить "в пустоту". > Если же речь о виртуальном пакете > > gtk-themes-smooth, который будет требовать gtk-engines-smooth и > gtk-themes-smooth обеих версий, то я не против. См. вариант 2. Можно и так, но тогда будет вместо одного толстого пакета орда мелких. Я как раз и хочу уменьшить этот эффект. Идея в том, чтобы переключение темы оказывало единообразное действие на все установленные программы (или максимальное их число). С какой стати пользователей, желающих просто сделать сменить надоевшее оформление, должны волновать различия версий gtk и вообще существование разных библиотек? В форточках интерфейс тоже не только на MFC бывает, но выглядит и управляется одинаково и это плюс, который следует перенять. > > Цель изменений - уменьшение количества мелких пакетов тем с > > потенциальных сотен до единиц при сохранении возможности поставить > > темы gtk отдельно от тем gnome и избавлении от ручного подбора множества > > мелких пакетов для сбора цельной темы, включающей много элементов. > Цель благая. Как закончите, пришлите, пожалуйста, спек, я окончательно > махну рукой :-) Хорошо. Это нужно сделать завтра, потому что за него цепляется целый паровозик. -- Вячеслав Диконов <sdiconov@mail.ru>
next prev parent reply other threads:[~2004-09-06 20:31 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 ` Вячеслав Диконов [this message] 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 ` [devel] " Alexey Morozov 2004-09-07 11:08 ` 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=1094502670.5807.63.camel@alpha.tirs.ru \ --to=sdiconov@mail.ru \ --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