BSDPORTAL.RU

На этом сайте обсуждаются вопросы использования ОС FreeBSD
 Портал  •  Статьи  •  Форум  •  Wiki  •  Поиск  •  FAQ  •  Обои  •   Официальная документация  •  Новые темы 

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
СообщениеДобавлено: Пн 29 ноя, 2004 2:12 pm 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: Чт 23 окт, 2003 12:31 pm
Сообщения: 559
раздел документация временно недоступен, оставляю перевод здесь на ваше обозрение и внесение поправок.
то sys: если конструктивных предложений по переводу не окажется то просьба опубликовать.


Обновление пакетов FreeBSD с помощью Portupgrade без использования CVSup

Насколько я люблю систему портов FreeBSD, настолько же мне не нравравится
поддерживать дерево портов в актуальном состоянии используя CVSup. Мне не
удалось еще попробовать утилиту portsnap Colin'а Percival'а, которая использует
HTTP протокол для распространения сжатых и криптографически подписанных
снимков дерева портов. Это большая альтернатива, но я стараюсь по возможности
избегать процесса компиляции из исходных текстов, т.к. использую не совсем
современные и очень медленные системы. В этом случае наиболее подходящим
способом является установка и обновление программного обеспечения (ПО)
используя заранее скомпилированные пакеты.
Portupgrade - наиболее подходящая утилита для обновления ПО под FreeBSD. Она
очень мощна, т.к. способна разрешать зависимости во время массового обновления
ПО. Не имеет значения каким образом были установлены приложения: используя
порты или заранее скомпилированные пакеты, т.к. с сомента установки FreeBSD
расценивает их как пакеты используя в работе с ними такие утилиты как например
pkg_info. Использование в качестве аргумента для portupgrade ключа -PP позволит
провести обновление ПО используя исключительно заранее скомпилированные
пакеты. Это позволит избежать процесса компиляции перед непосредственно
установкой.

Большинство людей до сих пор уверены, что дерево портов должно быть
актуальным, дабы позволить portupgrade распознавать доступны ли более свежие
версии портов. Таким образом в том числе и для обновления используя пакеты
требуется CVSup дерева портов либо аналогичный процесс. Так ли это?

Я часто думал над альтернативными методами обновления дерева портов целиком.
По этому поводу в рассылке freebsd-ports проходит множество дискуссий. Они
обьявляют удаление файлов INDEX и INDEX-5 из CVS хранилища. Эти файлы
(INDEX для ветви 4.х и INDEX-5 для ветви 5.х) содержат информацию о ПО,
например для nmap:

nmap-3.75|/usr/ports/security/nmap|/usr/local|Port scanning utility for large
networks|/usr/ports/security/nmap/pkg-d ... reeBSD.org|security ipv6|openssl-
0.9.7e_1 pcre-5.0|openssl-0.9.7e_1 pcre-5.0|http://www.insecure.org/nmap/|||


Эта запись описывает порт nmap, его майнтайнера, зависимости, и прочее: НО вы
не найдете ни одного INDEX файла в CVS, например на cvsweb.freebsd.org (см.
запись в CHANGES, в которой говорится об удалении INDEX). Майнтайнеры
считают что INDEX файлы в CVS сильно устарели и необходимость в их хранении
отпала. Но все же INDEX файлы все еще доступны, их можно сформировать
запустив 'make index' находясь в /usr/ports или скачать их. Последний способ
наиболее подходит, т.к. формирование с использованием традиционных методов
занимает большое количество времени.
Это позволит полностью исключить CVSup и обновление дерева портов если вы
желаете работать только с заранее скомпилированными пакетами. Дальнейшее
повествование описывает как это сделать на FreeBSD 5.3 RELEASE с несколькими
приложениями установленными с помощью заранее скомпилированных пакетов.

Вначале у меня под рукой был только файл INDEX-5, который идет стандартной
поставке коллекции портов устанавливаемой с FreeBSD 5.3 RELEASE:

janney:/root# ls -al /usr/ports/IND*
-rw-r--r-- 1 root wheel 5798559 Nov 4 18:27 /usr/ports/INDEX-5


Сперва я установил portupgrade:

janney:/root# pkg_add -vr portupgrade
looking up ftp.freebsd.org
connecting to ftp.freebsd.org:21
setting passive mode
opening data connection
initiating transfer
Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports ... ease/Lates
t/portupgrade.tbz...x +CONTENTS
x +COMMENT
x +DESC
x +MTREE_DIRS
x man/man1/pkg_deinstall.1.gz
...truncated...




После того как portupgrade был установлен я запустил portversion чтобы
понаблюдать обнаружит ли portupgrade уже установленные пакеты. Во время
запуска portversion происходит создание базы данных пакетов, расположенной в
/var/db/pkg/pkgdb.db.

janney:/root# portversion -v
[Updating the pkgdb in /var/db/pkg ... - 48 packages found (
-0 +1) . done]
[Updating the portsdb in /usr/ports ... - 11735 port entries
found .........1000.........2000.........3000.........4000.........5000........
.6000.........7000.........8000.........9000.........10000.........11000.......
..... done]
bash-3.0_5 = up-to-date with port
bitstream-vera-1.10 = up-to-date with port
boxtools-0.65.0 = up-to-date with port
cdrtools-2.0.3_4 = up-to-date with port
cmdwatch-0.2.0 = up-to-date with port
...truncated...



После окончания процесса в /usr/ports создается новый файл INDEX.db наравне с
оригинальным INDEX-5:

janney:/root# ls -al /usr/ports/IND*
-rw-r--r-- 1 root wheel 5798559 Nov 4 18:27 /usr/ports/INDEX-5
-rw-r--r-- 1 root wheel 11915264 Nov 19 23:16 /usr/ports/INDEX.db


Теперь мне потребуется обновить оригинальный фал INDEX-5. Судя выводу
portupgrade, все мои пакеты находятся в актуальном состоянии. На самом деле это
не так. Например,взглянув на ftp://ftp.freebsd.org/pub/FreeBSD/ports ... -5-stable/ можно увидеть что доступен пакет
/shells/bash-3.0.15.tbz. Я же использую bash-3.0_5, таким образом для обновления
доступен более свежий прекомпилированный пакет.

Данный процесс проходит в два шага. Во-первых, требуется получить новый INDEX-
5, например скачав его следующим сособом:
janney:/usr/ports# make fetchindex
INDEX-5 0% of 5877 kB 0 Bps



После завершения работы 'make fetchindex' получаем обновленный файл INDEX-5:

janney:/usr/ports# ls -al IND*
-rw-r--r-- 1 root wheel 6018417 Nov 19 23:05 INDEX-5
-rw-r--r-- 1 root wheel 11915264 Nov 19 23:16 INDEX.db



Во-вторых, потребуется обновить файл INDEX.db:

janney:/usr/ports# portsdb -uf
[Updating the portsdb in /usr/ports ... - 11972 port entries
found .........1000.........2000.........3000.........4000.........5000........
.6000.........7000.........8000.........9000.........10000.........11000........
. ..... done]



Теперь посмотрим на файл INDEX.db:
janney:/usr/ports# ls -al IND*
-rw-r--r-- 1 root wheel 6018417 Nov 19 23:05 INDEX-5
-rw-r--r-- 1 root wheel 12334080 Nov 19 23:54 INDEX.db


Повторный запуск portversion показал что некоторые порты требуют обновления.
Например bash:

janney:/usr/ports# portversion -v
bash-3.0_5 < needs updating (port has 3.0.16_1)
bitstream-vera-1.10 = up-to-date with port
boxtools-0.65.0 = up-to-date with port
cdrtools-2.0.3_4 = up-to-date with port
...truncated...


Теперь файл INDEX-5 содержит информацию о том, что доступная версия bash в
дереве портов 3.0.16_1, но ведь прекомпилированый пакет имеет версию 3.10.15.
На самом деле это допустимо (если не учитывать аспект безопасности), и позволит
произвести обновление bash с 3.0_5 до 3.0.15:
Следующим шагом нужно сообщить portupgrade где искать заранее
скомпилированные пакеты:

janney:/usr/ports# setenv PACKAGESITE ftp://ftp2.freebsd.org/pub/FreeBSD/ports/
i386/packages-5-stable/All/

Теперь мы готовы к обновлению пакетов с помощью portupgrade:
#janney:/usr/ports# portupgrade -varRPP
---> Session started at: Fri, 19 Nov 2004 23:55:03 -0500
** No need to upgrade 'python-2.3.4_2' (>= python-2.3.4_2). (specify -f to force)
...edited...
---> Checking for the latest package of 'shells/bash'
---> Fetching the package(s) for 'bash-3.0.16' (shells/bash)
---> Fetching bash-3.0.16
++ Will try the following sites in the order named:
ftp://ftp2.freebsd.org/pub/FreeBSD/port ... -5-stable/
---> Invoking a command: /usr/bin/fetch -o '/var/tmp/bash-3.0.16.tbz' 'ftp://ft
p2.freebsd.org/pub/FreeBSD/ports/i386/packages-5-stable/All/bash-3.0.16.tbz'
fetch: ftp://ftp2.freebsd.org/pub/FreeBSD/port ... /All/bash-
3.0.16.tbz: File unavailable (e.g., file not found, no access)
** The command returned a non-zero exit status: 1
** Failed to fetch ftp://ftp2.freebsd.org/pub/FreeBSD/port ... ges-5-stab
le/All/bash-3.0.16.tbz
---> Invoking a command: /usr/bin/fetch -o '/var/tmp/bash-3.0.16.tgz' 'ftp://ft
p2.freebsd.org/pub/FreeBSD/ports/i386/packages-5-stable/All/bash-3.0.16.tgz'
fetch: ftp://ftp2.freebsd.org/pub/FreeBSD/port ... /All/bash-
3.0.16.tgz: File unavailable (e.g., file not found, no access)
** The command returned a non-zero exit status: 1
** Failed to fetch ftp://ftp2.freebsd.org/pub/FreeBSD/port ... ges-5-stab
le/All/bash-3.0.16.tgz
** Failed to fetch bash-3.0.16
---> Listing the results (+:done / -:ignored / *:skipped / !:failed)
! bash-3.0.16 (fetch error)
---> Packages processed: 0 done, 0 ignored, 0 skipped and 1 failed
---> Fetching the latest package(s) for 'bash' (shells/bash)
---> Fetching bash
++ Will try the following sites in the order named:
ftp://ftp2.freebsd.org/pub/FreeBSD/port ... -5-stable/
---> Invoking a command: /usr/bin/fetch -o '/var/tmp/bash.tbz' 'ftp://ftp2.free
bsd.org/pub/FreeBSD/ports/i386/packages-5-stable/Latest/bash.tbz'
/var/tmp/bash.tbz 0% of 532 kB
---> Downloaded as bash.tbz
---> Identifying the package /var/tmp/bash.tbz
---> Saved as /usr/ports/packages/All/bash-3.0.15.tbz
---> Skipping libiconv-1.9.2_1 (already installed)
---> Skipping gettext-0.13.1_1 (already installed)
---> Listing the results (+:done / -:ignored / *:skipped / !:failed)
+ bash@
- libiconv-1.9.2_1
- gettext-0.13.1_1
---> Packages processed: 1 done, 2 ignored, 0 skipped and 0 failed
---> Found a package of 'shells/bash': bash-3.0.15.tbz (bash-3.0.15)
---> Located a package version 3.0.15 (bash-3.0.15.tbz)
---> Using it anyway although it is not the latest version (3.0.16), since -PP/
--use-packages-only is specified
---> Upgrade of shells/bash started at: Sat, 20 Nov 2004 00:00:52 -0500
---> Upgrading 'bash-3.0_5' to 'bash-3.0.15' (shells/bash) using a package
---> Updating dependency info
---> Uninstallation of bash-3.0_5 started at: Sat, 20 Nov 2004 00:00:53 -0500
---> Fixing up dependencies before creating a package
---> Backing up the old version
---> Uninstalling the old version
---> Deinstalling 'bash-3.0_5'
[Updating the pkgdb in /var/db/pkg ... - 47 packages found (
-1 +0) (...) done]
---> Uninstallation of bash-3.0_5 ended at: Sat, 20 Nov 2004 00:01:01 -0500 (co
nsumed 00:00:07)
pkg_info: can't find package 'bash-3.0.15.tbz' installed or in a file!
---> Installation of bash-3.0.15 started at: Sat, 20 Nov 2004 00:01:01 -0500
---> Installing the new version via the package
---> Removing temporary backup files
---> Installation of bash-3.0.15 ended at: Sat, 20 Nov 2004 00:01:06 -0500 (con
sumed 00:00:04)
---> Cleaning out obsolete shared libraries
[Updating the pkgdb in /var/db/pkg ... - 48 packages found (
-0 +1) . done]
---> Upgrade of shells/bash ended at: Sat, 20 Nov 2004 00:01:08 -0500 (consumed
00:00:15)
** No need to upgrade 'xorg-fonts-miscbitmaps-6.7.0' (>= xorg-fonts-miscbitmaps-
6.7.0). (specify -f to force)
...truncated...



Приведенный выше листинг показывает что происходит когда portupgrade не может
обнаружить требуемую версию пакета bash-3.0.16 на ftp://ftp2.freebsd.org/pub/FreeBSD/port ... stable/All.
Происходит поиск bash.tbz на ftp://ftp2.freebsd.org/pub/FreeBSD/port ... ble/Latest. На самом деле это символическая
ссылка на доступный пакет:
lrwxr-xr-x 1 110 0 22 Nov 15 08:09 bash.tbz -> ../All/bash-3.0.15.tbz

На будущее, я определю переменную PACKAGESITE таким образом:

janney:/usr/ports# setenv PACKAGESITE ftp://ftp2.freebsd.org/pub/FreeBSD/ports/
i386/packages-5-stable/All/

В итоге все порты, которые могли быть обновлены с помощью прекомпилированыч пакетов, были действительно обновлены. Например, bash:

janney:/root# portversion -v bash
bash-3.0.15 < needs updating (port has 3.0.16_1)

Прекомпилированные пакеты закачиваются на FTP сервера еженедельно, я буду
проводить этот процесс каждый раз после появление более новых версий.


Я также намереваюсь проследить за новой утилитой Мэтью Симана portindex.Portindex Matthew
позволяет намного быстрее сгенерировать INDEX и INDEX-5, а также заменяет
медленные процессы 'make index' и 'portsb -uU'. Использование системы портов в комбинации с portindex и portsnap позволит раскрыть облее мощный потенциал данного способа установки ПО. Описаный же выше способ должен понравиться людям, использующим медленные системы или обновляющих ПО с помощью пакетов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн 29 ноя, 2004 6:39 pm 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: Чт 23 окт, 2003 12:31 pm
Сообщения: 559
ну так как? статья достойна размещения в документации?
или требуются доработки?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт 30 ноя, 2004 3:54 pm 
Не в сети
Newsmaker
Аватара пользователя

Зарегистрирован: Пт 08 авг, 2003 6:28 pm
Сообщения: 33
Откуда: Калининград
вполне приемлимо IMHO
вот здесь опечатка в версии:
s1lv3r писал(а):
Теперь файл INDEX-5 содержит информацию о том, что доступная версия bash в
дереве портов 3.0.16_1, но ведь прекомпилированый пакет имеет версию 3.10.15.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт 30 ноя, 2004 4:35 pm 
Не в сети
Site Admin
Аватара пользователя

Зарегистрирован: Чт 23 окт, 2003 12:31 pm
Сообщения: 559
спасибо, исправил


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн 08 янв, 2007 4:11 pm 
Не в сети

Зарегистрирован: Вс 07 янв, 2007 11:52 am
Сообщения: 18
s1lv3r писал(а):
спасибо, исправил


Только у тебя здесь описано 10% от функционала portupgrade,
отнюдь не главная. На мой взгляд его главный плюс - возможность
указа депендов, POST/PRE-действий перед компиляцией, сохранение флагов. Например мой pkgtools.conf сейчас выглядит таким образом:

Цитата:
module PkgConfig
ENV['PORTSDIR'] ||= '/usr/ports'
ENV['PACKAGES'] ||= ENV['PORTSDIR'] + '/packages'
ENV['PKG_PATH'] ||= ENV['PACKAGES'] + '/All'
#//сюда ложим пекеджи для отката
ENV['PKG_BACKUP_DIR'] ||= '/home/freedom/pkg'

SANITY_CHECK = true
# не будем использовать ПО из этих разделов
IGNORE_CATEGORIES = [
'chinese',
'french',
'german',
'hebrew',
'japanese',
'korean',
'ukrainian',
'vietnamese',
]

# Джаббер я модифицировал и не хочу его обновлять со всеми,
# Openoffice очень жирный чтобы компилять часто..
HOLD_PKGS = [
'bsdpan-*',
'jabber*',
'openoffice*',
]

IGNORE_MOVED = [
'devel/bison',
]
# Зависимости - мне такие версии больше подходят в
# качестве версий по-умолчанию..

ALT_PKGDEP = {
'www/apache*' => 'apache22',
'databases/mysql\.\.\-server' => 'mysql51-server',
'lang/php4' => 'php5',
'devel/autoconf*' => 'autoconf261',
'devel/automake*' => 'automake19',
'net/openldap\.\.-server' => 'openldap24-server',
'net/openldap\.\.-client' => 'openldap24-client',
'sysutils/portupgrade' => 'portupgrade-devel',
'databases/db4\.$' => 'db44',
}

ports_glob(1)
SKIP_DNS_CHECK=1',

#
# Тут задаем все флаги которые нам нужны при сборке
# Есть возможность указа флагов как для Makefile,
# так и для ./configure (CONFIGURE_ARGS+= )
# - это ответ тем, что говорит "А как собрать портом если
# не вынесли фичу из configure в Makefile
# пример - suphp - тут он ставиться таким образом, чтобы
# скрипты от PHP выполнялись не от www а от овнера файла
#
MAKE_ARGS = {
'*' => [
'FORCE_PKG_REGISTER=yes',
],
'databases/mysql41-server' => [
'WITH_CHARSET=cp1251',
'WITH_XCHARSET=all',
'WITH_COLLATION=cp1251_general_ci',
'BUILD_STATIC=yes',
'BUILD_OPTIMIZED=yes',
'WITHOUT_INNODB=yes',
],
'x11-toolkits/qt33' => [
'WITH_KDE_PATCHES=yes',
],
'databases/mysql51-server' => [
'WITH_CHARSET=cp1251',
'WITH_XCHARSET=all',
'WITH_COLLATION=cp1251_general_ci',
'BUILD_STATIC=yes',
'BUILD_OPTIMIZED=yes',
],
'net/kdenetwork3' => [
'WITH_KOPETE=yes',
],
'deskutils/kdepim3' => [
'WITH_GNOKII=yes',
],
'print/cups-base' => [
'WITH_PHP=yes',
'WITH_LIBPAPER=yes',
],
'www/mozilla' => [
'WITHOUT_CHATZILLA=yes',
],
'audio/arts' => [
'WITH_NAS=yes',
],
'x11/kde3' => [
'WITHOUT_KDETOYS=yes',
'WITHOUT_KDEGAMES=yes',
],
'security/cyrus-sasl' => [
'WITH_KERBEROS4=yes',
],
'devel/m4' => [
'WITH_CHANGEWORD=yes',
],
'graphics/cairo' => [
'WITH_GLITZ=yes',
],
'math/fftw3' => [
'WITH_OPTIMIZED_CFLAGS=yes',
],
'devel/apr-svn' => [
'APR_UTIL_WITH_BERKELEY_DB=yes',
],
'mail/evolution' => [
'WITH_DBUS=yes',
'WITH_PILOT=yes',
],
'multimedia/audacious' => [
'WITH_CHARSET_DETECTION=yes',
],
'devel/pcre' => [
'WITH_UTF8=yes',
],
'net/mtr' => [
'WITHOUT_X11=yes',
],
'net/openslp' => [
'WITH_SLP_SECURITY=yes',
'WITH_ASYNC_API=yes',
],
'net/openldap24-server' => [
'WITH_SASL=yes',
'WITH_PROXYCACHE=yes',
'WITH_PPOLICY=yes',
'WITH_DDS=yes',
'WITH_DENYOP=yes',
'WITH_DYNGROUP=yes',
'WITH_DYNLIST=yes',
'WITH_LASTMOD=yes',
'WITH_SYNCPROV=yes',
'WITH_TRANSLUCENT=yes',
'WITH_SHELL=yes',
'WITH_RELAY=yes',
'WITH_DNSSRV=yes',
'WITH_PASSWD=yes',
'WITH_ODBC=yes',
'WITH_SLP=yes',
],
'multimedia/kdemultimedia3' => [
'WITH_XINE=yes',
'WITH_MPEGLIB=yes',
],
'graphics/kdegraphics3' => [
'WITH_IMLIB=yes',
'WITH_GPHOTO2=yes',
'WITH_SANE=yes',
],
'databases/freetds' => [
'WITH_IODBC=yes',
'WITH_UNIXODBC=yes',
'WITH_MSDBLIB=yes'
],
'editors/openoffice.org-2' => [
'WITH_KDE=yes',
'WITH_TTF_BYTECODE_ENABLED=yes',
'WITH_GPC=yes',
],
'www/swfdec-plugin' => [
'WITH_MOZILLA=yes',
],
'net-im/sim-im-devel' => [
'WITH_KDE=yes',
],
'multimedia/ogle' => [
'WITH_OPTIMIZED_BYTESWAP=yes'
],
'devel/gconf2' => [
'WITH_LDAP=yes',
],
'multimedia/okle' => [
'WITH_DVD_DEVICE="/dev/acd0"',
],
'devel/kdesdk3' => [
'WITH_OPTIONAL_DEPENDS=YES',
],
'java/eclipse' => [
'WITH_MOZILLA=yes'
],
'benchmarks/iperf' => [
'WITHOUT_IPV6=yes',
'WITHOUT_THREADS=yes',
],
'shells/bash' => [
'WITH_STATIC_BASH=yes',
],
'textprox/catdoc' => [
'LANG=ru_RU.KOI8-R',
],
'devel/t1lib' => [
'WITHOUT_X11=yes',
],
'lang/ruby18' => [
'WITHOUT_IPV6=yes',
'WITH_ONIGURUMA=yes',
],
'sysutils/portupgrade' => [
'WITH_BDB4=yes',
],
'sysutils/portupgrade-devel' => [
'WITH_BDB4=yes',
],
'net/samba3' => [
'WITH_SYSLOG=yes',
'WITH_QUOTAS=yes',
'WITH_MSDFS=yes',
# 'WITH_FAM_SUPPORT=yes',
'WITH_EXP_MODULES=yes',
# 'WITH_SMBSH=yes',
# 'WITH_AIO_SUPPORT=yes',
'WITH_ADS=yes',
'SAMBA_WANT_LDAP=yes',
],
'graphics/gd' => [
'WITH_XPM=yes',
# 'GD_FONTS="/root/gd/X-koi8u.tgz koi6x10.bdf koi8x13.bdf koi9x15.bdf koi12x24.bdf koi10x20.bdf"',
'GD_FONTS="/root/patch/gd/X-koi8u.tgz koi6x10.bdf koi6x10.bdf koi6x10.bdf koi6x10.bdf koi6x10.bdf"',
'WITHOUT_X11=yes',
],
'textproc/ispell' => [
'ISPELL_RU=yes',
],
'ftp/ncftp' => [
'INSTALL_AS_NCFTP=yes',
],
'www/webalizer' => [
'WITH_GEOIP=yes',
'FETCH_ALL=yes',
'WEBALIZER_LANG=russian',
],
'databases/postgresql81-server' => [
'WITH_PAM=yes',
'WITH_OPTIMIZED_CFLAGS=yes',
# 'WITH_MIT_KRB5=yes',
'WITH_THREADSAFE=yes',
'WITH_ICU=yes',
],
'palm/pilot-link' => [
'WITH_USB=yes',
'WITH_PNG=yes',
],
'www/suphp' => [
'CONFIGURE_ARGS+=--disable-checkuid',
'CONFIGURE_ARGS+=--disable-checkgid',
'CONFIGURE_ARGS+=--with-setid-mode=owner',
'CONFIGURE_ARGS+=--with-apache-user=www',
'WITH_LOGFILE=/var/log/suphp.log',
],
'databases/postgresql8-*' => [
'WITHOUT_GNUGETOPT=yes',
'WITHOUT_SSL=yes',
'WITH_OPTIMIZED_CFLAGS=yes'
],
'www/p5-Apache-DBI' => [
'WITH_MODPERL2=yes',
],
'databases/postgresq*' => [
'WITHOUT_GNUGETOPT=yes',
'WITHOUT_SSL=yes',
'WITH_OPTIMIZED_CFLAGS=yes',
'WITH_THREADSAFE=yes',
],
'graphics/p5-GD' => [
'WITH_LZW=yes'
],
'www/apache22' => [
'WITH_SUEXEC=yes',
'WITH_STATIC_MODULES="rewrite include auth access ssl"',
# 'WITH_MPM=worker',
'WITH_SSL_EXPERIMENTAL_ENGINE=yes',
'WITHOUT_IPV6=yes',
# 'WITH_KQUEUE_SUPPORT=yes',
# 'WITH_EXPERIMENTAL_PATCHES=yes',
'WITH_LDAP=yes',
'WITH_THREADS=yes',
'WITH_PROXY_MODULES=yes',
],
'devel/distcc' => [
'WITH_COMPILER_LINKS=yes',
'EXTRA_COMPILERS=yes',
'WITH_GTK=yes',
],
'sysutils/k3b' => [
'WITH_FLAC=yes',
'WITH_LAME=yes',
'WITH_FFMPEG=yes',
'WITH_MUSICBRAINZ=yes',
'WITH_MPC=yes',
],
'astro/celestia' => [
'WITH_LUA=yes',
],
'graphics/gnash' => [
'WITH_PLUGIN=yes',
],
'graphics/povray' => [
'WITH_OPTIMIZED_FLAGS=yes',
],
'textproc/libxml2' => [
'WITH_THREADS=yes',
],
'ftp/proftpd' => [
'WITH_LDAP=yes',
'WITH_CTRLS=yes',
'WITH_QUOTA=yes',
],
'www/squid' => [
'WITH_SQUID_LDAP_AUTH=yes',
'WITH_SQUID_DELAY_POOLS=yes',
'WITH_SQUID_SNMP=yes',
'WITH_SQUID_CUSTOM_LOG=yes',
'WITH_SQUID_FOLLOW_XFF=yes',
'WITH_SQUID_ICAP=yes',
],
'www/squid26' => [
'WITH_SQUID_LDAP_AUTH=yes',
'WITH_SQUID_SASL_AUTH=yes',
'WITH_SQUID_COSS=yes',
'WITH_SQUID_WCCPV2=yes',
'WITH_SQUID_FOLLOW_XFF=yes',
'WITH_SQUID_LARGEFILE=yes',
'WITH_SQUID_DELAY_POOLS=yes',
'WITH_SQUID_SNMP=yes',
'WITH_SQUID_CUSTOM_LOG=yes',
'WITH_SQUID_FOLLOW_XFF=yes',
'WITH_SQUID_ICAP=yes',
],
'devel/glib20' => [
'WITH_COLLATION_FIX=yes',
],
'devel/m4' => [
'WITH_CHANGEWORD=yes',
],
'misc/mc' => [
# 'WITHOUT_SAMBA=yes',
'WITH_SAMBA=yes',
'WITH_EDIT=yes',
'WITH_ICONV=yes',
'WITH_SLANG=yes',
'WITH_PERL_MODULES=yes',
'WITH_SUBSHELL=yes',
],
'devel/libslang' => [
'WITH_UTF8=yes',
],
'lang/perl5.8' => [
'WITH_THREADS=yes',
],
'www/links' => [
'WITHOUT_X11=yes',
],
'converters/libiconv' => [
'WITH_EXTRA_PATCHES=yes',
],
'lang/php5' => [
'WITH_APACHE2=yes',
'WITHOUT_IPV6=yes',
'WITH_APACHE=yes',
# 'CONFIGURE_ARGS+=--with-ldap=/usr/local',
# 'CONFIGURE_ARGS+=--with-apxs2=/usr/local/sbin/apxs',
# 'CONFIGURE_ARGS+=--with-oci8=/usr/local/oracle8-client',
# 'CONFIGURE_ARGS+=--with-oracle=/usr/local/oracle7',
],
'lang/php4' => [
'WITH_APACHE=yes',
'WITHOUT_IPV6=yes',
# 'CONFIGURE_ARGS+=--with-ldap=/usr/local',
# 'CONFIGURE_ARGS+=--with-apxs2=/usr/local/sbin/apxs',
# 'CONFIGURE_ARGS+=--with-oci8=/usr/local/oracle8-client',
# 'CONFIGURE_ARGS+=--with-oracle=/usr/local/oracle7',
],
'www/mod_perl2' => [
'WITH_APACHE2=yes',
],
'archivers/unzip' => [
'WITH_UNZIP_UNREDUCE=yes',
],
'graphics/ImageMagick' => [
'WITH_IMAGEMAGICK_THREADS=yes',
],
'www/mnogosearch' => [
'WITH_MNOGO_PGSQL=yes',
'WITH_MNOGO_MSQL=yes',
'WITH_MNOGO_MYSQL=yes',
'WITH_MNOGO_SYSLOG=yes',
],
'net-mgmt/net-snmp' => [
'WITH_TKMIB=yes',
'WITHOUT_IPV6=yes',
'DEFAULT_SNMP_VERSION="3"',
'NET_SNMP_SYS_CONTACT="Freedom@freedom.jp"',
'NET_SNMP_SYS_LOCATION="SPb, "Nowhere" Ltd"',
'NET_SNMP_LOGFILE="/var/log/snmpd.log"',
'NET_SNMP_PERSISTENTDIR="/var/net-snmp"',
'NET_SNMP_MIB_MODULES="host disman/event-mib smux mibII/tcpTable ucd-snmp/diskio agentx ucd-snmp/lmSensors"',
],

}

MAKE_ENV = {
}

BEFOREBUILD = {
}

BEFOREDEINSTALL = {
}

# ну очень полезная штука - рестартануть mysql например,
# либо симлинки расставить можно и тп

AFTERINSTALL = {
# Re-enable the X wrapper
'x11-servers/XFree86-4-Server' => sprintf(
'cd %s/bin && if [ -x Xwrapper-4 ]; then ln -sf Xwrapper-4 X; fi',
x11base()),
'devel/autoconf259' => 'ln -s /usr/local/bin/autoconf259 /usr/local/bin/autoconf; ln -s /usr/local/bin/autoheader259 /usr/local/bin/autoheader; ln -s /usr/local/bin/autom4te259 /usr/local/bin/autom4te; ln -s /usr/local/bin/autoreconf259 /usr/local/bin/autoreconf; ln -s /usr/local/bin/autoscan259 /usr/local/bin/autoscan; ln -s /usr/local/bin/autoupdate259 /usr/local/bin/autoupdate; ln -s /usr/local/bin/ifnames259 /usr/local/bin/ifnames; ',
'devel/automake19' => 'ln -s /usr/local/bin/aclocal19 /usr/local/bin/aclocal; ln -s /usr/local/bin/automake19 /usr/local/bin/automake',
'devel/autoconf261' => 'ln -s /usr/local/bin/autoconf261 /usr/local/bin/autoconf; ln -s /usr/local/bin/autoheader259 /usr/local/bin/autoheader; ln -s /usr/local/bin/autom4te261 /usr/local/bin/autom4te; ln -s /usr/local/bin/autoreconf261 /usr/local/bin/autoreconf; ln -s /usr/local/bin/autoscan261 /usr/local/bin/autoscan; ln -s /usr/local/bin/autoupdate261 /usr/local/bin/autoupdate; ln -s /usr/local/bin/ifnames261 /usr/local/bin/ifnames; ',
'shells/bash' => 'cp /usr/local/bin/bash /bin; cp /usr/local/bin/bashbug /bin; echo /bin/bash >> /etc/shells',
}


PKG_SITES = [
pkg_site_mirror(),
]

PORTUPGRADE_ARGS = ENV['PORTUPGRADE']

end





s1lv3r, просьба - такие вещи задокументировать также.

_________________
while (!done) try++;


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт 09 янв, 2007 7:25 am 
Не в сети
Аватара пользователя

Зарегистрирован: Пт 23 сен, 2005 1:44 pm
Сообщения: 331
Откуда: Нефтеюганск
freedom, спасибо, осветил необходимое


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Зарегистрированные пользователи: Bing [Bot], Google [Bot], Google Feedfetcher


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB
Яндекс.Метрика