From: Ivan Zakharyaschev <vanyaz@mccme.ru> To: <devel@linux.iplabs.ru> Subject: [devel] RPM: icons Date: Fri, 24 Nov 2000 21:29:52 +0300 (MSK) Message-ID: <Pine.LNX.4.30L.0011232230170.1844-100000@zephyrous.ru> (raw) Вот еще ряд небольших проблем: В преамбуле пакета указывается файл-иконка, соответсвующая этому пакету: Icon: ... Сам файл ищется в SOURCES. И он рассматривается как имеющий тот же статус, что файлы, заданные в Source: или Patch: -- без него не совершаются многие операции с пакетом. Можно было бы разрешить говорить NoIcon по аналогии с NoSource и NoPatch (можно еще много чего напридумывать с иконками, но не стоит: это не так важно). NoIcon был бы удобен при работе с rpm --rmsource: например, есть два spec-файла -- один оригинальный, другой с добавленными патчами. Во втором все остальные исходники объявлены в No{Source,Patch}. Теперь, если закрыть глаза на иконку, после rpm --rmsource <2nd spec> можно работать с первым оригинальным (все, что было в No*: не было удалено). С иконкой же хуже: если она задана в обоих spec-файлах, то выполнение rpm --rmsource на одном из них вызовет удаление файла с иконкой и сделает невозможной работу с другим spec-файлом. Исключение иконки из преамбулы spec-файла -- неправильное решение, т.к. иконка -- атрибут пакета. Другое предложение: Mandrake'овские пакеты обычно включают несколько иконок (уже не тех, что объявляются в Icon). И они, наверное, много где устанавливаются таким образом: %install install -m 644 -D %{SOURCE5} $RPM_BUILD_ROOT%{_miconsdir}/%{name}.xpm install -m 644 -D %{SOURCE6} $RPM_BUILD_ROOT%{_iconsdir}/%{name}.xpm install -m 644 -D %{SOURCE7} $RPM_BUILD_ROOT%{_liconsdir}/%{name}.xpm Почему бы не обозначить это действие макросом: %install_icons 6 -m 5 -l 7 Можно было бы выделить отдельный тип исходных данных для иконок наравне с Source и Patch и объявлять их в преамбуле так: # RPM standard icon Icon: ... # Mandrake icons (mini, large etc.): Icon1:... Icon2:... Ввести тэг NoIcon с арнументами-номерами. Кстати: можно ли в одном тэге NoSource указывать несколько номеров, задавать промежутки вида 0-8? (А вообще, система с номерами мне кажется неудобной: можно было бы делать что-нибудь типа "enum { NameOne, NameTwo};" для имен исходников, а потом объявлять файлы для них уже как SourceNameOne, ...; я думаю, что макроопределение, соответсвующее по эффекту enum, можно было бы написать на существующем макроязыке RPM). Можно было бы также ввести тэги Doc и NoDoc для указания исходных файлов с дополнительной документацией. Номера этих Doc'ов можно использовать для работы с ними (в специальных разделах spec-файла, описанных в другом письме). Принципиальное отличие иконок и документации от многих остальных данных, указываемых в Source и Patch, в том, что они не нужны для компиляции программы и что они даже имеют большее отношение к пакету как таковому, а не к самой программе (особенно иконки). Не уверен, что это правильное направление: мало ли какой тип исходных данных еще можно придумать? Например, конфигурационные файлы. И что: для каждого свой тэг? Можно их всех просто поделить на две категории: нужные для компиляции программы и прочие. (Тогда можно было бы исполнять стадию %build, не жалуясь на то, что нет чего-то из Прочего.) -- Best regards, Ivan Z. _______________________________________________ Devel mailing list Devel@linux.iplabs.ru http://www.logic.ru/mailman/listinfo/devel
reply other threads:[~2000-11-24 18:29 UTC|newest] Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=Pine.LNX.4.30L.0011232230170.1844-100000@zephyrous.ru \ --to=vanyaz@mccme.ru \ --cc=devel@linux.iplabs.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