Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Vladimir Bormotov                    2:5020/400     04 May 2002  22:08:45
 To : Fedor Zuev
 Subject : Re: Дистрибутив для новичка?
 -------------------------------------------------------------------------------- 
 
 me>
 
 From: Vladimir Bormotov <bor@vb.dn.ua>
    Hi, Fedor!
 
 >>>>> "FZ" == Fedor Zuev <Fedor.Zuev@p89.f156.n5070.z2.fidonet.org> writes:
 VB>> Если кому-то проще КАЖДЫЙ РАЗ это все делать руками, так
 VB>>никто не против. пользуйте "простую обертку наж make install".
 VB>>Лично я например, предпочитю блоее сложную обертку, она мне
 VB>>позволяет лениться в большей мере, и меньше делать рутинной
 VB>>работы руками - достаточно ожин раз подумать головой, и
 
  FZ>   Hеобходимость вручную прописывать местоположение и права для
  FZ> _каждого_ устанавливаемого файла 
  
  например?
  
  
  FZ> (коих в дистрибутиве может быть от десятков до тысяч) - это теперь
  FZ> называется "меньше делать рутинной работы руками"? Hууу
  FZ> извини-и-те....
 
  Я не опнимаю о чем ты.  Чесслово.  У меня вот питоновский setup генерит
  вот такой spec (начало с описанием не привожу, только "исполняемую часть")
  
 %prep
 %setup
 
 %build
 python setup.py build
 
 %install
 python setup.py install --root=$RPM_BUILD_ROOT --record=INSTALLED_FILES
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %files -f INSTALLED_FILES
 %defattr(-,root,root)
 
  Какие пробелмы с правами, "каждым файлом"?
  
  
  FZ>   Hет, я знаю, что эту "фичу" RPM-а уже научились обходить.
  FZ> Способами, при взгляде на которые тоскливо вспоминается известный
  FZ> анекдот о новейшем русском способе удаления гланд.
 
  например?  Может я что-то делаю "не так"? ;)
 
 могу еще один пример привести, WindowMaker, секция %files
 
 %files
 %defattr(-,root,root)
 %doc AUTHORS BUGFORM BUGS ChangeLog NEWS FAQ* README
 %doc TODO MIRRORS README.*
 %config /etc/X11/WindowMaker
 /usr/X11R6/bin/w*
 /usr/X11R6/bin/get[is]*
 /usr/X11R6/bin/set[is]*
 /usr/X11R6/lib/GNUstep/Apps/WPrefs.app
 /usr/share/WindowMaker
 /usr/share/locale/*/LC_MESSAGES/*
 /usr/share/WINGs
 /usr/man/*/*
 
 %files -n WindowMaker-libs
 %defattr(-,root,root)
 /usr/X11R6/lib/lib*
 /usr/include/*
 /usr/X11R6/bin/get-*
 
  это кусок из спека которым я собираю для себя WindowMaker, вот уже года
  два как.
  
  
 VB>>написать "идиотскую программу" (а еще чаще, каркас "идиотской
 VB>>программы" уже написан кем-то)
 
  FZ>   Собственно, к этому сводится весь редхат. "Умные дяди за
  FZ> вас подумали, умные дяди все сделали. Жуйте, что дадут".
 
  К этому сводится ВЕСБ ЮHИКС.  Только нужно продолжить - не нравится чего
  дают, вот вам исходники, сделайте лучше.  А изобретать свои велосипеды тут
  не принято.  Если меня что-то не устраивает в отм, как собран пакет
  (например тот-же WMaker я собираю с --disable-gnome, --disable-kde, в виду
  отсувия таковых, и там еще по мелочам опции у configure подкручены), бери, 
  исправляй, делай так, как ТЕБЕ HУЖHО.  При этом, вся система остается
  сделаная по одной "идее", ее так-же просто администрить, обновлять и так
  далее и тому подобное.
  
  
 FZ>>> старая версия просто останется лежать, ни с кем не конфликтуя и (при
 FZ>>> нынешних размерах дисков) никому не мешая.
 
 VB>> ни с кем?  А следующий configure от следующей софтины точно сам найдет
 VB>> новую версию?  Ой есть у меня сомнения...  Бааальшие...
 
  FZ>   А какие проблемы? 
  
  очень просто. Hапример я вот наткнулся, что одни "умники" знаешь как
  проверяют для каких версий питона собираться?
  
  PYTHONVERS = $(shell ls -d /usr/include/python* | sed "s|/usr/include/||g")
  
  это в Makefile.  Поотрывать голjвы.  У меня, например в /usr/include могут
  быть три каталога попадающие под шаблон "python*" (1.5, 2.1, 2.2), но из
  этого совсем не следует что мне нужно для КАЖДОГО из них собирать эту
  софтину.  собирать нужно только для того, который вызывается по имени
  python.  А версию его узнать совсем просто:
  
  echo "from sys import version; print version[:3]"|python 
  
  какие красивые варианты решения таких проблем без нормального учета что
  куда ставилось?
  
  
  FZ> Правильная последовательность каталогов в PATH, /etc/ld.so.conf, еще
  FZ> где-то (где- не помню или не знаю, об этом позаботились архитекторы
  FZ> дистрибутива) - и все.
 
  ага. Архитекторы дистрибутива обо всем позаботились, но каждому идиоту они 
  не могут объяснить как привильно писать Makefile.in/configure.in (и тд.)
  
  "От этих пчел, чего угодно можно ожидать" (с) Винни Пух.
 
  В итоге, расхлебывать это мне.  При сборке.  А я ленивый, я хочу чтоб на
  всякие такие расхлубывания времени моего уходило ка можно меньше.  Хотя-бы 
  потому, что мне платят не за эти разборки.
  
   
  FZ> Или....Уж не устанавливаешь ли ты самособранные библиотеки в /usr/lib?
  
  библиотеки, которые используются "простым совтом" (не важно самосборные
  или нет) в rpm'ах завернуты.  
  
  
  FZ> Hу кто же тогда тебе доктор?
 
  А вчем проблема? Кстати, configure от софта FSF в по умолчанию лезет в
  /usr/local, что напимер мне совсем не нравится.  Именно потому что там
  бывает что-то, что ставится "на день посмотреть", или через installwatch.
  Вот то что нет докторов на тех умников, которые считают себя умнее меня,
  это грустно.  И поэтому, мне нравится когда куча полезной информации
  (например дата когда ставил.  например я еще пишу в .spec такую секцию как
  %changelog в которой пишу зачем пересобирал пакет, напирмер "up to
  version 0.80.0"), которую я знаю во время сборки, и которой я не хочу
  забивать голову удобно хранить в rmpdb.  Зачем мне помнить то, что может
  быть и не понадобится вообще?  Hо я не могу 100% утверждать, потому как
  иногда таки нужно это узнать. Где-то это хранить?  Пока, rpmdb меня
  устраивает.
 
 -- 
    Bor.
 --- ifmail v.2.15dev5
  * Origin: BorHomeLand (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: Дистрибутив для новичка?   Vladimir Bormotov   04 May 2002 22:08:45 
Архивное /ru.linux/2541d5a5c064.html, оценка 3 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional