Re: [Comm] Icewm и SilverXP в качестве темы по дефолту

php-coder =?iso-8859-1?q?php-coder_=CE=C1_ngs=2Eru?=
Сб Сен 11 13:16:01 MSD 2004


0000100101011110100100101::11.09.2004::0110001001001000100111100100010

    Здравствуйте, Владимир!
    Отвечаю на Ваше письмо:

ВГ> Но SilverXP (разработанный нашими соотечественниками) - выше
ВГ> всяких похвал.

    Вы так расхвалили эту тему, что любопытно взглянуть на нее...
    Может пришлете скриншот или выложите его где-нибудь? (можно даже
    на linux.org.ru -- если не боитесь жесткой критики :))

ВГ> Icewm уже установлен, это его надо сносить,

    Не обязательно... Если вы установили его, к примеру, в /usr/local,
    то его можно и не сносить -- AFAIK никакие пакеты никогда не
    устанавилиают туда ничего.

ВГ> качать (или брать с диска) src-rpm,

    Да

ВГ> распаковывать его хитро при помощи rpm2cpio (наверное),

    rpm -ivh для *.src.rpm вытащит все его содержимое и сложит в
    соответствующие каталоги в директорию ~/RPM

ВГ> пропатчить один файл ybutton.сс,

    Не нужно патчить вручную. Нужно править спек! Добавить туда в
    начало, что-то типа PatchN: patch-name-for-icewm.patch
    Потом в секцию %prep, после вызова макроса %setup, добавить
    %patchN -p1
    N - это номер патча, если патчей несколько. Иначе ее можно и
    опустить. После правки спека, я обычно говорю
    
    $ rpmbuild -bs ~/RPM/SPECS/package.spec
    # создаст новую *.src.rpm с вашим патчем

    $ rpmbuild --rebuild ~/RPM/SRPMS/package-version.src.rpm
    # создаст rpm, пригодный к установке

ВГ> потом rebuild (как применить при этом требуемые разработчиками
ВГ> ключи компилляции - не понял до конца

    В секции %build есть вызов макроса %configure, который и отвечает
    за вызов ./configure Этому макросу также можно передать нужные
    парметры. Например:
    %configure --with-x --enable-nls

ВГ> Пытался скачать простой tar.gz, но один ключ компилляции  
ВГ> (--prefix=/usr/X11R6 и т.д.) видимо не соответствовал альтовской  
ВГ> реальности,

    При сборке RPM-пакета обычно программа устанавливается в одно
    место, называемое %buildroot Потом rpmbuild берет из %buildroot
    все файлы, указанные в секции %files и создает RPM-пакет. Таким
    образом устанавливать нужно не в /usr/X11R6, а в
    %buildroot/usr/X11R6 Лучше даже использовать макрос и тогда вызов
    configure будет выглядеть примерно так:
    %configure --prefix=%buildroot%_x11dir

    Кстати, у вас могут возникнуть некоторые трудности, так как
    некоторые программы при запуске будут искать конфигурационные
    файлы и что-там-им-еще-может-понадобиться в %buildroot.

    Вот совет, как лучше устанавливать в /usr/X11R6 программу:
    %build
    %configure --prefix=%_x11dir \
               --bindir=%_x11bindir \
               --datadir=%_x11datadir \
               --mandir=%_x11mandir
    %make_build

    %install
    %make_install DESTDIR=%buildroot install
    ...
    %files
    %_x11bindir/*
    %_x11datadir/%name
    %_x11mandir/man1/*

    Именно так я и делаю в своем пакете Fluxbox'а...

ВГ> да чтобы он попал в список выбираемых при загрузке Иксов  - для
ВГ> меня это пока непонятно, не улеглось в голове..

    Для этого существует макрос %update_wms. Его обычно вызывают
    при установке пакета в систему, в секции %post, и после удаления
    пакета из системы, в секции %postun Честно говоря, мне тоже хотелось
    бы побольше узнать как с ним работать, так как при пакетировании
    Fluxbox у меня возник тот же вопрос. Но пока я ответов не нашел,
    если вы найдете -- то напишите мне, пожалуйста!
    
    Ах, да! Вы можете узнать что делает тот или иной макрос выполнив
    $ rpm --eval %macros
    К примеру, rpm --eval %update_wms скажет, что вызывается некоторый
    скрипт. Скрипт, если правильно помню, написан на shell, так что
    можно и лично разобраться что и как он делает...

ВГ> Поэтому повторюсь - есть пожелание внедрить для будущих дистрибутивов  
ВГ> Альта Icewm сконфигурированный с патчем для SilverXP и сделать эту одну из  
ВГ> самых тщательно созданных (именно тщательно и продуманно!) тему темой по  
ВГ> умолчанию...

    Отличное предложение! Сделайте это! И даже если в ALTLinux этого
    не будет -- это будет у вас! ;))

    Удачи!
  
-- 
  С уважением, php-coder (mailto:php-coder[at]ngs[dot]ru)
  Registered Linux User #327594
  ALT Linux Master 2.2 (kernel 2.4.27)

010010010010010001010101100::Linux RuleZz!::100010010001000100010001110




Подробная информация о списке рассылки community