The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Проект DragonFly BSD представил новую систему сборки пакетов..., opennews (?), 05-Янв-13, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


67. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +/
Сообщение от vle (ok), 07-Янв-13, 14:50 
>>лучшее из source-based пакетных систем
> Самое лучшее - это emerge гентушный.

Список уникальных мегафич в студию! Желательно в сравнении с.

Ответить | Правка | Наверх | Cообщить модератору

72. "Проект DragonFly BSD представил новую систему сборки пакетов..."  –1 +/
Сообщение от Аноним (-), 07-Янв-13, 15:33 
> Список уникальных мегафич в студию! Желательно в сравнении с.

Управление флагами сборки удобное. Быстро и удобно можно посмотреть, изменить, посмотреть что измениться, при надобности скорректировать, и так до достижения удовлетворяющего результата. Как мне в pkgsrc узнать, какие пакеты используют поддержку pulseaudio? Из установленных на моем локалхосте и имеющихся в репозитории? Как мне выключить ее глобально я знаю - PKG_DEFAULT_OPTIONS='-pulseaudio' в /usr/pkg/etc/mk.conf. А вот посмотреть как? Чтобы не было сюрпризов, что оно вытягивается по зависимостям? Потому что какой-то дундук включил ее в mplayer по дефолту? А если я поменяю пару флагов в какой-нить утилитке, что вытянется по новым зависимостям? С какими флагами?

В обчем, если бы ты пользовался emerge, ты бы таких дурацких вопросов не задавал. Бо чем оно лучше - дано в ощущениях.:) Да, не без своих проблем, но портам до него как до Луны раком.

Ответить | Правка | Наверх | Cообщить модератору

76. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +/
Сообщение от vle (ok), 07-Янв-13, 15:46 
>> Список уникальных мегафич в студию! Желательно в сравнении с.
> Управление флагами сборки удобное. Быстро и удобно можно посмотреть, изменить, посмотреть
> что измениться, при надобности скорректировать, и так до достижения удовлетворяющего результата.

bmake show-options
bmake show-vars VARNAMES='DEPENDS BUILD_DEPENDS'
bmake show-vars VARNAMES='DEPENDS BUILD_DEPENDS' PKG_OPTIONS.pulseaudio='-x11'

и т.д. Или это то, что нужно, или уточни детали.

> Как мне в pkgsrc узнать, какие пакеты используют поддержку pulseaudio?
> Из установленных на моем локалхосте


0 cheusov>nih search -I DEPENDS:w:pulseaudio
devel/SDL                 - Simple DirectMedia Layer, a cross-platform multimedia library
0 cheusov>

> и имеющихся в репозитории?


0 cheusov>nih search -b DEPENDS:w:pulseaudio
devel/SDL                 - Simple DirectMedia Layer, a cross-platform multimedia library
audio/akode-plugins-pulseaudio - Pulseaudio output plugin for akode framework
audio/alsa-plugins-pulse  - Advanced Linux Sound Architecture (ALSA) - PulseAudio plugin
audio/audacious-plugins   - Plugins for Audacious media player
audio/bmp-pulse           - BMP output plugin for the PulseAudio sound server
multimedia/gnome-media    - Set of audio/multimedia applications for GNOME2
multimedia/gpac           - Open source multimedia framework
audio/gst-plugins0.10-pulse - Open source multimedia framework - pulse plugin
audio/libao-pulse         - Cross-platform audio library (pulse plugin)
audio/mpg123-pulse        - Contains the pulse module for mpg123
audio/padevchooser        - Tray area icon for the PulseAudio sound server
audio/paman               - GTK frontend for the PulseAudio sound server
audio/paprefs             - Configuration dialog for the PulseAudio sound server
audio/pavucontrol         - Volume control tool ("mixer") for the PulseAudio sound server
audio/pavumeter           - Volume meter for the PulseAudio sound server
multimedia/swfdec         - Library for rendering Flash(R) animations and games
audio/xine-pulse          - The PulseAudio output plugin for xine-lib
audio/xmms-pulse          - XMMS plugin to output sound through the pulseaudio daemon
audio/xmp                 - Player for many different Amiga and PC module formats
0 cheusov>nih search -o DEPENDS:w:pulseaudio
audio/akode-plugins-pulseaudio - Pulseaudio output plugin for akode framework
audio/alsa-plugins-pulse  - Advanced Linux Sound Architecture (ALSA) - PulseAudio plugin
audio/audacious-plugins   - Plugins for Audacious media player
audio/bmp-pulse           - BMP output plugin for the PulseAudio sound server
audio/gst-plugins0.10-pulse - Open source multimedia framework - pulse plugin
audio/gst-plugins1-pulse  - Open source multimedia framework - pulse plugin
audio/libao-pulse         - Cross-platform audio library (pulse plugin)
audio/mpg123-pulse        - Contains the pulse module for mpg123
audio/padevchooser        - Tray area icon for the PulseAudio sound server
audio/paman               - GTK frontend for the PulseAudio sound server
audio/paprefs             - Configuration dialog for the PulseAudio sound server
audio/pavucontrol         - Volume control tool ("mixer") for the PulseAudio sound server
audio/pavumeter           - Volume meter for the PulseAudio sound server
audio/xine-pulse          - The PulseAudio output plugin for xine-lib
audio/xmms-pulse          - XMMS plugin to output sound through the pulseaudio daemon
audio/xmp                 - Player for many different Amiga and PC module formats
comms/deforaos-phone      - DeforaOS desktop telephony
devel/SDL                 - Simple DirectMedia Layer, a cross-platform multimedia library
devel/gmtk                - Gnome-mplayer toolkit
ham/fldigi                - Digital radio modem
multimedia/avidemux       - Graphical video editing program
multimedia/gmplayer       - Fast, cross-platform movie player with GTK2+ interface
multimedia/gnome-media    - Set of audio/multimedia applications for GNOME2
multimedia/gpac           - Open source multimedia framework
multimedia/mplayer        - Fast, cross-platform movie player
multimedia/swfdec         - Library for rendering Flash(R) animations and games
multimedia/vlc10(vlc)     - VLC media player and streaming server
wip/bsnes                 - SNES emulator
wip/deadbeef              - Ultimate Music Player For GNU/Linux
wip/deforaos-phone        - DeforaOS desktop telephony
wip/fldigi                - Digital radio modem
wip/gpac-devel(gpac)      - Open source multimedia framework
wip/moonlight             - Open Source implementation of Microsoft Silverlight for UNIX Systems
wip/mplayer-mt            - Software-only MPEG-1/2/4 video decoder
wip/mplayer-snapshot(mplayer) - Fast, cross-platform movie player
wip/qrq                   - Open source Morse telegraphy trainer
wip/retroarch             - Multi-system emulator for Linux, Windows, Mac OS X and *BSD
wip/rsound                - Multi-platform, simple PCM audio server and client
x11/kde-runtime4          - Runtime requirements for the KDE integrated X11 desktop
x11/razor-qt(razorqt)     - Advanced, fast Qt environment without window manager
0 cheusov>


> Как мне выключить
> ее глобально я знаю - PKG_DEFAULT_OPTIONS='-pulseaudio' в /usr/pkg/etc/mk.conf. А вот
> посмотреть как? Чтобы не было сюрпризов, что оно вытягивается по зависимостям?
> Потому что какой-то дундук включил ее в mplayer по дефолту?


0 mplayer>make show-depends
mplayer-share>=1.1:../../multimedia/mplayer-share
libdv>=0.104nb2:../../multimedia/libdv
esound>=0.2.41nb1:../../audio/esound
faad2>=2.6.1:../../audio/faad2
libmad>=0.15.1bnb1:../../audio/libmad
SDL>=1.2.10:../../devel/SDL
libtheora>=1.0alpha3nb1:../../multimedia/libtheora
x264-devel>=20121107:../../multimedia/x264-devel
xvidcore>=1.1.0nb1:../../multimedia/xvidcore
0 mplayer>

> А если я поменяю пару флагов в какой-нить утилитке, что вытянется по
> новым зависимостям? С какими флагами?

см. выше

> В обчем, если бы ты пользовался emerge, ты бы таких дурацких вопросов
> не задавал.

Может, надо лучше узнать "противную" систему?

> Бо чем оно лучше - дано в ощущениях.:)

Не надо в ощущениях. Надо максимально формально...

> Да, не без своих проблем, но портам до него как до Луны раком.

...и желательно без подобных аналогий.

Ответить | Правка | Наверх | Cообщить модератору

81. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +/
Сообщение от Аноним (-), 07-Янв-13, 16:22 
>bmake show-vars

Про это не знал, спс.

>0 cheusov>nih search -b DEPENDS:w:pulseaudio

Вообще-то, не совсем то, но все равно спасибо. Лучше чем ничего. Кста, ты только одну версию nih оставил, в pkgtools?(раньше в wip еще был, ЕМНИП)

>0 mplayer>make show-depends

dfbsd# bmake show-options
Any of the following general options may be selected:
        aalib    Enable aalib support.
        arts     Use the aRts audio daemon.
        caca     Enable libcaca support.
        debug    Enable debugging facilities in the package.
        dts      Enable DTS Coherent Acoustics support.
        dv       Enable usage of the libdv library.
        dvdnav   Enable libdvdnav support to navigate DVDs.
        dvdread  Enable reproduction of DVDs.
        esound   Enable support for the Enlightment Sound Daemon.
        faad     Enable AAC decoding support using faad2.
        ggi      Enable GGI support.
        gif      Enable GIF support.
        jpeg     Enable JPEG support.
        mad      Enable usage of the mad library to play MP3 files.
        mplayer-menu     Enable support for user-defined menus.
        mplayer-runtime-cpudetection    Enable CPU detection at run time.
        mplayer-ssse3    Enable SSSE3 support.
        nas      Enable usage of the Network Audio System.
        oss      Enable support for the Open Sound System audio library.
        png      Enable PNG support.
        pulseaudio       Enable support for the PulseAudio sound server.
        sdl      Use SDL as display library.
        theora   Use the theora codecs.
        vorbis   Enable Ogg Vorbis support.
        x264
        xvid     Enable usage of XVid codecs.

These options are enabled by default:
        dv dvdnav dvdread esound faad gif jpeg mad
        mplayer-menu mplayer-runtime-cpudetection
        nas oss png pulseaudio sdl theora vorbis x264
        xvid

These options are currently enabled:
        faad gif jpeg mad mplayer-menu mplayer-runtime-cpudetection
        oss png theora vorbis x264 xvid

You can select which build options to use by setting PKG_DEFAULT_OPTIONS
or PKG_OPTIONS.mplayer.

>Может, надо лучше узнать "противную" систему?

Почему сразу "противную"?:) Ладно-ладно, шучу. Надо, конечно.

>Не надо в ощущениях. Надо максимально формально...

А гентой ты все-таки не пользовался, признайся.:)

>...и желательно без подобных аналогий.

Сорри, правда переборщил.

Ответить | Правка | Наверх | Cообщить модератору

86. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +/
Сообщение от vle (ok), 07-Янв-13, 17:02 
>>0 cheusov>nih search -b DEPENDS:w:pulseaudio
> Вообще-то, не совсем то, но все равно спасибо. Лучше чем ничего.

Ну это по бинарному репозиторию, как ты и просил собственно.
С опцией -o поиск по pkgsrc через dict://dict.mova.org:26280
AKA pkg_online database. Можно базу строить локально
(nih refresh -p; nih search -p), но это я еще не выкатил,
только в wip/.
Общая концепция здесь:
http://mova.org/~cheusov/pub/pkgnih/package-search.pdf

> Кста, ты только одну версию nih оставил, в pkgtools?(раньше в wip еще был, ЕМНИП)

wip/nih-current

>>0 mplayer>make show-depends
> dfbsd# bmake show-options

Ну так а что смущает собственно? Да, опций много.
Некоторые включены по умолчанию.

>>Не надо в ощущениях. Надо максимально формально...
> А гентой ты все-таки не пользовался, признайся.:)

Я этого никогда и не скрывал, все перепробовать жизни не хватит,
потому и спрашиваю о деталях.

Ответить | Правка | Наверх | Cообщить модератору

89. "Проект DragonFly BSD представил новую систему сборки пакетов..."  –1 +/
Сообщение от Аноним (-), 07-Янв-13, 17:46 
>но это я еще не выкатил,только в wip/.

Тогда попробую из wip'а. Штука нужная, даже если не совсем доделанная. Хотя я в основном компиляю, ставлю с бинарей только если не собирается что, все равно - твой nih мегарульная штука, респектище! Потому как зоопарк pkg-* - не самая удобная в использовании вещь, скажем прямо.:)

>wip/nih-current

Б.., поиск на pkgsrc.se такой поиск.:)

>Ну так а что смущает собственно? Да, опций много.
>Некоторые включены по умолчанию.

Ну, какбэ по дефолту включать pulseaudio и прочие свистоперделки на утилитах типа mplayer'а - моветон, с моей т.з. В свое время был сюрприз, так сюрприз. Вот, а на генте я бы сразу увидел, что подтянется по зависимостям.

>Я этого никогда и не скрывал, все перепробовать жизни не хватит,
>потому и спрашиваю о деталях.

Это сложно сформулировать так, как ты хочешь - формально, по пунктам.
Если будет возможность - обязательно поюзай, если тебя, конечно, интересует сборка из сорцов(вроде ты говорил, что в дальних планах запилить в nih?).

Ответить | Правка | Наверх | Cообщить модератору

97. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +/
Сообщение от vle (ok), 07-Янв-13, 21:55 
>>но это я еще не выкатил,только в wip/.
> Тогда попробую из wip'а. Штука нужная, даже если не совсем доделанная.

Она доделанная. nih search -p работает, но небыстро при дефолтных настройках
(PLIST включен в поисковые поля, типа apt-file search).
Надо кое-какие поиски переписать на С, но мне пока лень.

> Хотя я в основном компиляю, ставлю с бинарей только если не собирается
> что, все равно - твой nih мегарульная штука, респектище! Потому как
> зоопарк pkg-* - не самая удобная в использовании вещь, скажем прямо.:)

Спасибо на добром слове. Для большого количества пакетов pkg_* конечно не вариант.
Это чуть лучше, чем rpm(1) и dpkg(1).

>>wip/nih-current
> Б.., поиск на pkgsrc.se такой поиск.:)

Чтобы понять рекурсию... :-)


0 cheusov>nih search -o nih
pkgtools/nih              - Package manager for pkgsrc
wip/nih-current(nih)      - Package manager for pkgsrc
0 cheusov>

>>Ну так а что смущает собственно? Да, опций много.
>>Некоторые включены по умолчанию.
> Ну, какбэ по дефолту включать pulseaudio и прочие свистоперделки на утилитах типа
> mplayer'а - моветон, с моей т.з. В свое время был сюрприз,
> так сюрприз. Вот, а на генте я бы сразу увидел, что
> подтянется по зависимостям.

В общем случае, в pkgsrc не стремятся зарезать функционал до минимума.
Ориентир -- поставил бинарь, и он должен работать. Нигде это явно не прописано,
но как-то так сложилось. Потому по умолчанию примерно как линупсах, порой
может показаться, что жирновато. Тут как не выбери, все равно окажешься виноватым.
Тому недодал, этому передал.

>>Я этого никогда и не скрывал, все перепробовать жизни не хватит,
>>потому и спрашиваю о деталях.
> Это сложно сформулировать так, как ты хочешь - формально, по пунктам.
> Если будет возможность - обязательно поюзай, если тебя, конечно, интересует сборка из
> сорцов(вроде ты говорил, что в дальних планах запилить в nih?).

Ой, я уже пару лет точно собираюсь, но все никак.
courserа жить не дает. Надо себя как-то пнуть.

Ответить | Правка | Наверх | Cообщить модератору

136. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +/
Сообщение от deadless (ok), 08-Янв-13, 12:28 
>Ой, я уже пару лет точно собираюсь, но все никак.
>courserа жить не дает. Надо себя как-то пнуть.

а вот за coursera большое спасибо, думаю на пару лет тоже уйду в себя. Отличная вещь!

Ответить | Правка | Наверх | Cообщить модератору

94. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +1 +/
Сообщение от Сержант Скотч (?), 07-Янв-13, 20:24 
>>> Список уникальных мегафич в студию! Желательно в сравнении с.
>> Управление флагами сборки удобное. Быстро и удобно можно посмотреть, изменить, посмотреть
>> что измениться, при надобности скорректировать, и так до достижения удовлетворяющего результата.
> bmake show-options
> bmake show-vars VARNAMES='DEPENDS BUILD_DEPENDS'
> bmake show-vars VARNAMES='DEPENDS BUILD_DEPENDS' PKG_OPTIONS.pulseaudio='-x11'
> и т.д. Или это то, что нужно, или уточни детали.

глобально pulseaudio включен, но для пакетов foo & bar выключен.

 
0 cheusov>nih search -I DEPENDS:w:pulseaudio
devel/SDL            
      - Simple DirectMedia Layer, a cross-platform multimedia library
0 cheusov>

это будут пакеты которые сейчас зависят от pulseaudio или же так мейнтейнер задумал?
(например, linphone может быть собран без поддержки pulseaudio и зависимости не иметь).

>> А если я поменяю пару флагов в какой-нить утилитке, что вытянется по
>> новым зависимостям? С какими флагами?
> см. выше

можно подробнее?
Y с +foo зависит X с +bar. X в системе уже установлен, но с -bar.
Пересоберёт X(и все его уже установленные зависимости)?

>> Да, не без своих проблем, но портам до него как до Луны раком.
> ...и желательно без подобных аналогий.

1)параллельная сборка(X зависит от Y,Z,W которые не установлены. Y & Z независимы, потому их можно собирать параллельно).
2)фоновый фетч в процессе сборки(пока собирается boost/openoffice мы уже вытянули исходники kdelibs со всеми зависимостями)
3)сборка в песочнице
4)контрольные суммы для Makefile
5)фетч под специальным ограниченным пользователем
6)зависимости с учётом флагов(REQUIRED_USE)
7)multiversion(несколько gcc/jvm/etc в рамках одной системы).
8)несколько версий пакета в дереве(gcc-4.5.2, gcc-4.6.1,etc)
9)поддержка профилей(hardened/desktop/server)
10)наличие стабильных(на данной архитектуре с т.з. мейнтейнера) версий
11)виртуальные пакеты(Существуют также пакеты, выполняющие одни и те же функции, но отличающиеся в реализации. Например metalogd, sysklogd и syslog-ng являются системными службами журналирования. Приложения, использующие «системный журнал», не могут зависеть от одной конкретной программы, например от metalogd, так как остальные программы ничем не хуже. В Portage предусмотрены виртуальные пакеты: каждая служба журналирования описана как провайдер сервиса логгирования в виртуальном пакете logger в категории virtual, поэтому все приложения могут зависеть от пакета virtual/logger. При установке, приложения загрузит первый пакет логгирования, который описан в пакете, если только какой-нибудь из таких пакетов уже не установлен (в случае чего зависимость от виртуального пакета считается удовлетворенной))
12)подключаемые деревья портов(т.н. overlays, дополняющие или перекрывающие основное дерево)

13)всякая приятная мелочёвка, типа внятного setup flow(например, как тут http://devmanual.gentoo.org/ebuild-writing/functions/index.html). Т.е. вам пакетный менеджер предоставляет API с набором функций-заглушек. Вы их переопределяете и рассказываете пакетному менеджеру чего вам надо для установки. И если кто-то плохой поправит мейкфайл, добавив туда аналог rm -rf / это приведёт только к проблемам в песочнице, а не во всей системе.

Ответить | Правка | К родителю #76 | Наверх | Cообщить модератору

100. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +/
Сообщение от vle (ok), 07-Янв-13, 22:35 
>>> Управление флагами сборки удобное. Быстро и удобно можно посмотреть, изменить, посмотреть
>>> что измениться, при надобности скорректировать, и так до достижения удовлетворяющего результата.
>> bmake show-options
>> bmake show-vars VARNAMES='DEPENDS BUILD_DEPENDS'
>> bmake show-vars VARNAMES='DEPENDS BUILD_DEPENDS' PKG_OPTIONS.pulseaudio='-x11'
>> и т.д. Или это то, что нужно, или уточни детали.
> глобально pulseaudio включен, но для пакетов foo & bar выключен.

Если это вопрос, то мне он непонятен. Да, можно выключить или включить
определенную опцию попакетно либо глобально для всех пакетов.
Опция, отвечающая за pulseaudio всегда для всех пакетов называется pulseaudio
и никак иначе.

Попакетные установки (PKG_OPTIONS.mplayer) имеют приоритет
над глобальными (PKG_DEFAULT_OPTIONS).

> 0 cheusov>nih search -I DEPENDS:w:pulseaudio
> это будут пакеты которые сейчас зависят от pulseaudio или же так мейнтейнер
> задумал?

Вопрос был про _установленные_ пакеты. Это про них (опция -I means installed).

> (например, linphone может быть собран без поддержки pulseaudio и зависимости не иметь).
>>> А если я поменяю пару флагов в какой-нить утилитке, что вытянется по
>>> новым зависимостям? С какими флагами?
>> см. выше
> можно подробнее? Y с +foo зависит X с +bar. X в системе уже установлен,
> но с -bar. Пересоберёт X(и все его уже установленные зависимости)?

Здесь проблема. К зависимостям нельзя установить требования по требуемым options.

>>> Да, не без своих проблем, но портам до него как до Луны раком.
>> ...и желательно без подобных аналогий.
> 1)параллельная сборка(X зависит от Y,Z,W которые не установлены. Y & Z независимы,
> потому их можно собирать параллельно).

Это в pkgsrc решено 1000 лет назад. Двумя способами: pbulk, distbb.

Я так понимаю, это у нас список достоинств gentoo portage?
Ну тогда по поводу параллельности скажу следующее.
И pbulk и distbb умеют собирать не только параллельно,
но и распределенно, использую удаленные узлы.
distbb умеет не падать при креше удаленного узла.
Пакет перераспределяется на другой, периодически пытаемся
опросить упавшего, не поднялся ли.

> 2)фоновый фетч в процессе сборки(пока собирается boost/openoffice мы уже вытянули исходники
> kdelibs со всеми зависимостями)

Про pbulk не в курсе, я его игнорирую, а в distbb подумываю
над тем, чтобы это сделать. Не то, чтобы это killer feature,
но если будет время.

> 3)сборка в песочнице

pkg_comp, pbulk, distbb, mksandbox. pkg_comp собирает не параллельно,
но sandbox унего 100 лет.

> 4)контрольные суммы для Makefile

Не понял. Это зачем?

> 5)фетч под специальным ограниченным пользователем

В pkgsrc программа для скачивания может легко меняться.
Кому надо, тот сделает себе непривилегированный вариант.
То есть мы и так в сендбоксе, не вижу особого смысла.
Лично я всегда собираю пакеты от непривилегированного
пользователя в сендбоксе. За других не скажу.

> 6)зависимости с учётом флагов(REQUIRED_USE)

Если это требования опций в зависимостях, то этого нет.

> 7)multiversion(несколько gcc/jvm/etc в рамках одной системы).

4 питона, 3 руби, 2 пыхпыха, много апачей со всеми модулями.
Варивны перечисленного.

> 8)несколько версий пакета в дереве(gcc-4.5.2, gcc-4.6.1,etc)

В смысле в дереве?


0 ~>nih search -o b:p:gcc
lang/gcc                  - GNU Compiler Collection, version 2
lang/gcc-aux              - GNAT Ada compiler based on GCC 4.7
lang/gcc3                 - GNU Compiler Collection, v3
lang/gcc3-c++             - GNU Compiler Collection, v3 - C++ compiler
lang/gcc3-c               - GNU Compiler Collection, v3 - C compiler
lang/gcc3-f77             - GNU Compiler Collection, v3 - F77 compiler
lang/gcc3-objc            - GNU Compiler Collection, v3 - Objective C compiler
lang/gcc34                - This is the gcc 3.4 compiler
lang/gcc44                - GNU Compiler Collection 4.4
lang/gcc45                - GNU Compiler Collection 4.5
lang/gcc46                - GNU Compiler Collection 4.6
lang/gcc47                - The GNU Compiler Collection (GCC) - 4.7 Release Series
lang/gcc47-libs           - The GNU Compiler Collection (GCC) support shared libraries.
wip/gcc42                 - This is the GCC 4.2.3 compiler
wip/gcc43                 - This is the GCC 4.3.2 compiler
wip/gcc47                 - GNU Compiler Collection 4.7
0 ~>

Оно?

> 9)поддержка профилей(hardened/desktop/server)

hardened штука отличная, наслышан, но это уже скорее уровня дистрибутива.
На данный момент в pkgsrc опции касательно PIE, FSP, FORTIFY_SOURCES, RELRO
не пропихиваются. За вычетом RELRO NetBSD их поддерживает, так что можно включить.
Фря вот в последнем релизе RELRO научилась.

> 10)наличие стабильных(на данной архитектуре с т.з. мейнтейнера) версий

в pkgsrc в отличие от фри, например, поквартальные стабильные бранчи.

> 11)виртуальные пакеты(Существуют также пакеты, выполняющие одни и те же функции, но отличающиеся
> в реализации. Например metalogd, sysklogd и syslog-ng являются системными службами журналирования.

В терминологии pkgsrc это meta package.

> 12)подключаемые деревья портов(т.н. overlays, дополняющие или перекрывающие основное
> дерево)

Расшифруй. Чьи-то доработки слева и справа?

> 13)всякая приятная мелочёвка, типа внятного setup flow(например, как тут http://devmanual.gentoo.org/ebuild-writing/functions/index.html).

В pkgsrc используются набор специальных таргетов bmake-а,
fetch, extract, patch, configure, build, package, install. Для каждого
есть "приставки": pre-, post-, do- для дополнений и переопределений.
Где здесь rocket science?

> И если кто-то плохой поправит мейкфайл, добавив туда аналог rm -rf /
> это приведёт только к проблемам в песочнице, а не во всей системе.

Т.н. "user-destdir" (установка идет в staging area DESTDIR)
в pkgsrc с некоторых пор по умолчанию. Песочницы -- есть.

Ответить | Правка | Наверх | Cообщить модератору

106. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +/
Сообщение от Аноним (-), 07-Янв-13, 23:36 
>Опция, отвечающая за pulseaudio всегда для всех пакетов называется pulseaudio и никак иначе.

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

>Здесь проблема. К зависимостям нельзя установить требования по требуемым options.

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

>Это в pkgsrc решено 1000 лет назад. Двумя способами: pbulk, distbb.

В генте distcc и ccache, насчет pbulk - не помню.

>Не понял. Это зачем?

Зачем вообще контрольные суммы? Для секурности же! :)

>4 питона, 3 руби, 2 пыхпыха, много апачей со всеми модулями.

Варивны перечисленного.

ФишкА в том, что в pkgsrc это _отдельные_ пакеты, а в portage - разные версии _одного_ пакета. Почувствуй разницу. Это как если бы lang/gcc47 апдейтнулся с 4.7.1 до 4.7.2, ты не можешь установить то и другое вместе, а в генте - сможешь. Не для всех пакетов слоты есть, но для (почти) всех, для которых это имеет смысл - есть.

>hardened штука отличная, наслышан, но это уже скорее уровня дистрибутива.

Это профиль portage.
gentoo # eselect profile list
Available profile symlink targets:
  [1]   default/linux/amd64/10.0 *
  [2]   default/linux/amd64/10.0/selinux
  [3]   default/linux/amd64/10.0/desktop
  [4]   default/linux/amd64/10.0/desktop/gnome
  [5]   default/linux/amd64/10.0/desktop/kde
  [6]   default/linux/amd64/10.0/developer
  [7]   default/linux/amd64/10.0/no-multilib
  [8]   default/linux/amd64/10.0/server
  [9]   default/linux/amd64/10.0/x32
  [10]  hardened/linux/amd64
  [11]  hardened/linux/amd64/selinux
  [12]  hardened/linux/amd64/no-multilib
  [13]  hardened/linux/amd64/no-multilib/selinux
  [14]  hardened/linux/uclibc/amd64

>В терминологии pkgsrc это meta package.

Не, meta-pkgs/ - это другое. meta-pkgs/kde4 - это просто все kde оптом, в генте это kde-base/kde-meta, вот это тоже самое. А аналога virtual/cron virtual/pager - нету, в первом случае этом может быть и fcron, и vixie-cron, и cronie и еще что-то, во втором - more или less, но для других пакетов не будет разницы. Т.е. можно не прибивать пакет гвоздями к fcron, к примеру, а предоставить выбор юзверю, а уж он пусть выбирает, что он хочет видеть в роли крона или сислога.

>Он неверное, не знает про wip.:)

Ответить | Правка | Наверх | Cообщить модератору

111. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +/
Сообщение от vle (ok), 08-Янв-13, 01:11 
>>Опция, отвечающая за pulseaudio всегда для всех пакетов
>>называется pulseaudio и никак иначе.
> Примеры так навскидку не назову, но не для всех опций есть стандартизация.

В этих случаях "стандартизация" не нужна. Конечно, есть опции, специфичные
для одного конкретного пакета.

>>Здесь проблема. К зависимостям нельзя установить требования по требуемым options.
> А и не надо. Надо, чтобы можно было удобно посмотреть, что требуется
> включить/выключить, потом посмотреть ишшо раз на результат, при надобности повторить и
> так до полного удовлетворения.

Пф, тривиальный скрипт на несколько десятков строк на шеле.
Я даже не буду их приводить. В pkgsrc информация о том, с какими
опциями установленный пакет собран регистрируется в pkgdb (PKG_OPTIONS).
В отличие, если не ошибаюсь, от фряшных портов, rpm и dpkg.

Другое дело, что в pkgsrc необходимые "хотелки" к опциям зависимостей
даже нигде не регистрируются. Честно говоря, мне трудно оценить объем
работы, необходимый для этого. На практике и в самом деле достаточно
пересобрать нужный пакет-зависимость, если сборка сломалась и не мучиться.
Или робота построить. Все решает отношение цена/выхлоп. Есть и более важные
места, куда нужно приложить силы.

>>Это в pkgsrc решено 1000 лет назад. Двумя способами: pbulk, distbb.
> В генте distcc и ccache, насчет pbulk - не помню.

distcc -- довольно слабый вариант распараллеливания.
Не параллелятся configure, cmake, scons и т.д., порой занимающие
львиную долю времени сборки.
pbulk и distbb параллелят/дистрибутят все этапы сборки.
Иногда это надо и очень удобно.

ccache вообще из другой оперы. Но поддержка и distcc и ccache,
естественно, в pkgsrc есть издревле.

>>Не понял. Это зачем?
> Зачем вообще контрольные суммы? Для секурности же! :)

Э-э-эм. Как бы это сказать по-мягче.
Контрольные суммы нужны для distfiles
и скачиваемых патчей. И все. Остальное скачивается
из источника, которому можно доверять.

>>4 питона, 3 руби, 2 пыхпыха, много апачей со всеми модулями.
> Варивны перечисленного.

Чего?

> ФишкА в том, что в pkgsrc это _отдельные_ пакеты, а в portage
> - разные версии _одного_ пакета. Почувствуй разницу.

В pkgsrc модули для подобных вещей -- это тоже варианты ОДНОГО пакеты.

> Это как если бы lang/gcc47 апдейтнулся с 4.7.1 до 4.7.2,
> ты не можешь установить то
> и другое вместе, а в генте - сможешь. Не для всех
> пакетов слоты есть, но для (почти) всех, для которых это имеет
> смысл - есть.

В pkgsrc есть аналогичная штука, pkg_views. Опять же "не для всех пакетов
слоты есть, но для тех...". В общем, я этой хреновиной никогда
не пользовался, не вижу необходимости.
Думаю, самое время достать шашки (NixOS).
Но мне достаточно возможности забутстрапить pkgsrc в другое место
и там иметь дубликаты чего угодно.

>>hardened штука отличная, наслышан, но это уже скорее уровня дистрибутива.
> Это профиль portage.

Я к тому, что hardened профиль затрагивает всю систему,
включая патчи на ядро. PaX, hardened chroot и вся эта компания.

>>В терминологии pkgsrc это meta package.
> Не, meta-pkgs/ - это другое. meta-pkgs/kde4 - это просто все kde оптом,
> в генте это kde-base/kde-meta, вот это тоже самое. А аналога virtual/cron
> virtual/pager - нету,

Есть. Вношу поправку. В pkgsrc есть альтернативные зависимости,
типа "зависит от пакета A или от пакета B".
meta package + alternative dependencies = virtual package.
Хотя как отдельное понятие оно нигде не фигурирует.

>>Он неверное, не знает про wip.:)

Это откуда здесь взялось?

Ответить | Правка | Наверх | Cообщить модератору

139. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +/
Сообщение от Аноним (-), 08-Янв-13, 18:31 
>В этих случаях "стандартизация" не нужна. Конечно, есть опции, специфичные
>для одного конкретного пакета.

Блин, ну неохота мне сейчас пример искать. В генте я бы быстро посмотрел, а тут - ну нафик все перелопачивать.

>На практике и в самом деле достаточно
>пересобрать нужный пакет-зависимость, если сборка сломалась и не мучиться.

А если порт не один? А если ты "играешься" опциями - что на каждый раз пересобирать кучу портов?

>В pkgsrc модули для подобных вещей -- это тоже варианты ОДНОГО пакеты.

Ты меня таки не понял.:(

>Думаю, самое время достать шашки (NixOS).

Да вот в том и дело, что гента такая штука, что в ней очень удобно собраны возможности разных осей. Может быть, где-то они сделаны лучше, правильней, и удобней. Но вместе нет нигде.

>Хотя как отдельное понятие оно нигде не фигурирует.

Понял. Но ведь согласись, удобно же?

ЗЫ. Вот еще чего нет в pkgsrc(поправь, если что) - кастомизации опций компилятора. В portage можно переопределить cflags, cxxflags для одного порта. Смешивания стабильной и нестабильной ветки. Возможность замаскировать версию или диапазон версий порта.

Ответить | Правка | Наверх | Cообщить модератору

141. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +/
Сообщение от vleemail (ok), 08-Янв-13, 20:27 
> Блин, ну неохота мне сейчас пример искать. В генте я бы быстро
> посмотрел, а тут - ну нафик все перелопачивать.

Если приходится "перелопачивать" и "вспоминать", значит
оно не так важно и нужно. Для остального можно написал пару утилит,
которые это будут делать. Это проще, чем изучать раз в 100500 лет
нужный функционал.

> Но вместе нет нигде.

killer-up фич я пока особо не заметил.
Что-то чуть-чуть удобнее где-то, нормальная ситуация, обсуждаемая.
Но чтобы прям уверовать в Единственно Верный Путь -- увольте.

Gentoo -- хороший и интересный проект? Да, безусловно.
Одного grsecurity, который рядом с hardened gentoo бродит,
уже достаточно для того, чтобы не отказывать ему в праве
на существование.

Из озвученного в ветке, над чем можно подумать:
- ограничения по опциям на зависимости
- сборка в чруте делается _легким движением руки_

Встречных 100500 вопросов задавать не буду, ибо затянется.

>>Хотя как отдельное понятие оно нигде не фигурирует.
> Понял. Но ведь согласись, удобно же?

Необходимая функциональность предоставлена. Пользуйтесь.
"Виртуальными пакетами" в pkgsrc если и пользуются, то крайне редко.
Надо понимать, что она работает поверх базовой системы.
То есть такие вещи, как syslog service или MTA находятся уровнем ниже.

> ЗЫ. Вот еще чего нет в pkgsrc(поправь, если что) - кастомизации опций
> компилятора. В portage можно переопределить cflags, cxxflags
> для одного порта.

Этого не может не быть. Это делается в mk.conf
директивами bmake-а, если есть желание.

> Смешивания стабильной и нестабильной ветки.

В pkgsrc нет выделенной в отдельную сущность "инфраструктуры".
Т.е. нет чего-то отдельного и относительно стабильного
вроде "набора макросов" для rpm .spec
или набора скриптов dh-* в дебаяне. То есть, частично она, конечно,
есть в каталоге mk/, но это на самом деле далеко не все.
Она размазана по всему дереву. Поэтому перетаскивание каталога
типа lang/perl5 в другое дерево (из стабильного в current, скажем)
в общем случае работать не будет. Это можно считать минусом,
но с другой стороны это плюс, поскольку позволяет без криков
и воплей _быстро_ обеспечить _удобный_ функционал там, где он нужен.
В pkgsrc этим довольно активно пользуются, и в целом "инфраструктура"
pkgsrc гораздо подвижнее, чем rpm макросы или dh-* скрипты.

Вот пример фрагмента "инфраструктуры" для пакетов, использующих
mk-configure для сборки:
http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/devel/mk-configur...

У меня не возникло желания повторять эти строки в каждом пакете.
А вот, как это используется (предпредпоследняя строка):
http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/parallel/paexec/M...

Аналогичная пара для языка lua:
http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/lang/lua/module.m...
http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/devel/lua-filesys...

Смысл в том, что штуки вроде lua или mk-configure лучше знают,
как с ними лучше работать, и предоставляют свой набор ручек.

То есть да, в общем случае перетаскивать нельзя, но на практике
в большинстве случаев можно, если очень хочется. Но это,
честно говоря, только для камикадзе. Релизы -- каждые 3 месяца.
Это достаточно часто, чтобы не прыгать козлом по версиям.

> Возможность замаскировать версию или диапазон версий порта.

Непонятно.

Ответить | Правка | Наверх | Cообщить модератору

142. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +/
Сообщение от Аноним (-), 08-Янв-13, 21:46 
>значит оно не так важно и нужно.

Дык в том и дело - когда понадобится, оно станет важным и нужным. И лучше, если тогда будет возможность сделать быстрее и удобнее. Посему логично озаботиться заранее(пока не нужно), не?

>Что-то чуть-чуть удобнее где-то, нормальная ситуация, обсуждаемая.
>Но чтобы прям уверовать в Единственно Верный Путь -- увольте.

Вы сами ж NixOS вспомянули. Возможно, там установка нескольких версий удобнее сделана, но там других ништяков нет. Так и с другими фичами. Где-то может, и лучше, но всего вместе нет. За то и любим уютненькую.:)

>Надо понимать, что она работает поверх базовой системы.
>То есть такие вещи, как syslog service или MTA находятся уровнем ниже.

А если я хочу собрать систему без шлимыла и в качестве мта использовать что другое?

>Этого не может не быть. Это делается в mk.conf
>директивами bmake-а, если есть желание.

Значит, я невнимательно читал ман. Мне казалось, что это можно только глобально, а не для отдельно взятого порта.

>Релизы -- каждые 3 месяца.
>Это достаточно часто, чтобы не прыгать козлом по версиям.

Понял. Это потому, что на линухе нет base system. И у меня, к примеру, весь системный софт, за редким исключением - из стабильной ветки, а кде и прочая гуйня - из нестабильной. На BSD это [наверное] не нужно.

>Непонятно.

Ну вот есть у меня libxml2-2.8.0. Обновление до 2.8.1 ломает мне совместимость с каким-либо софтом(пример абсолютно высосанный из пальца:)). Что я делаю? Пишу в /etc/portage/package.mask >dev-libs/libxml2-2.8.0. Все, версия заморожена и обновляться не будет. Так же можно задать целый диапазон, если я поставил libreoffice-3.6.4.3, я могу замаскировать его до версии 3.6.9999, если не хочу минорных обновлений. При этом, когда появится доступная версия 3.7.хххх, порт обновится.

Ответить | Правка | Наверх | Cообщить модератору

144. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +/
Сообщение от vle (ok), 09-Янв-13, 01:21 
> Посему логично озаботиться заранее(пока не нужно), не?

Зависит.

>>Надо понимать, что она работает поверх базовой системы.
>>То есть такие вещи, как syslog service или MTA находятся уровнем ниже.
> А если я хочу собрать систему без шлимыла и в качестве мта
> использовать что другое?

Для NetBSD/FreeBSD
/etc/rc.conf:
   postfix=NO
   exim=YES

Что касается базовой системы, то для NetBSD
/etc/mk.conf:
   MKPOSTFIX=no

У FreeBSD /etc/make.conf и переменная другая.

>>Этого не может не быть. Это делается в mk.conf
>>директивами bmake-а, если есть желание.
> Значит, я невнимательно читал ман. Мне казалось, что это можно только глобально,
> а не для отдельно взятого порта.

Можно сделать так:
/etc/mk.conf:


...
.ifdef BSD_PKG_MK       # begin pkgsrc settings
CFLAGS.parallel/paexec  = -O0 -g
LDFLAGS.parallel/paexec = -g

CFLAGS_DEF  = -Os
LDFLAGS_DEF = -g

_pkgpath=${.CURDIR:H:T}/${.CURDIR:T}

CFLAGS  += ${CFLAGS.${_pkgpath}:U${CFLAGS_DEF}}
LDFLAGS += ${LDFLAGS.${_pkgpath}:U${LDFLAGS_DEF}}

.endif

Тут другой ман надо читать.

>>Непонятно.
> Пишу в /etc/portage/package.mask >dev-libs/libxml2-2.8.0.
> Все, версия заморожена и обновляться не будет.

На уровне бинарных пакетов -- nih mark -k libxml
и он обновляться не будет.
В базовом pkg_install (pkg_add -u/U) этого нет.

> Так же можно задать целый диапазон, если я поставил
> libreoffice-3.6.4.3, я могу замаскировать его до версии 3.6.9999, если не хочу
> минорных обновлений. При этом, когда появится доступная версия
> 3.7.хххх, порт обновится.

Это решается другими средствами ментейнером пакетов.
samba33 -- отдельно, samba35 -- отдельно, например.
Аналогичная ситуация с емаксами, питонами, пыпыхами, апачами и прочими.

Ответить | Правка | Наверх | Cообщить модератору

147. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +/
Сообщение от Сержант Скотч (?), 09-Янв-13, 21:11 
>> А если я хочу собрать систему без шлимыла и в качестве мта
>> использовать что другое?
> Для NetBSD/FreeBSD
> /etc/rc.conf:
>    postfix=NO
>    exim=YES
> Что касается базовой системы, то для NetBSD
> /etc/mk.conf:
>    MKPOSTFIX=no
> У FreeBSD /etc/make.conf и переменная другая.

вот и получается, что кто в лес, кто по дрова =(
но тут проблема в том, что есть монолитная сущность в виде base system в которую входит MTA.

>>>Этого не может не быть. Это делается в mk.conf
>>>директивами bmake-а, если есть желание.
>> Значит, я невнимательно читал ман. Мне казалось, что это можно только глобально,
>> а не для отдельно взятого порта.


> CFLAGS.parallel/paexec  = -O0 -g
> LDFLAGS.parallel/paexec = -g
> CFLAGS_DEF  = -Os
> LDFLAGS_DEF = -g
> _pkgpath=${.CURDIR:H:T}/${.CURDIR:T}
> CFLAGS  += ${CFLAGS.${_pkgpath}:U${CFLAGS_DEF}}
> LDFLAGS += ${LDFLAGS.${_pkgpath}:U${LDFLAGS_DEF}}
> .endif

а как мейнтейнеру защиться от безумных CFLAGS/CXXFLAGS(типа -O3 -funroll-all-loops -funsafe-math)?
есть штатная возможность стрипать некоторые флаги?

> Тут другой ман надо читать.
> На уровне бинарных пакетов -- nih mark -k libxml
> и он обновляться не будет.
> В базовом pkg_install (pkg_add -u/U) этого нет.

если вообще не будет - плохо. потому что приведённый выше mask не запрещает минорные апдейты.

> Это решается другими средствами ментейнером пакетов.
> samba33 -- отдельно, samba35 -- отдельно, например.
> Аналогичная ситуация с емаксами, питонами, пыпыхами, апачами и прочими.

а если нам надо зафиксироваться на отдельном минорном релизе?


Ответить | Правка | К родителю #144 | Наверх | Cообщить модератору

148. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +/
Сообщение от vle (ok), 10-Янв-13, 00:03 
>> У FreeBSD /etc/make.conf и переменная другая.
> вот и получается, что кто в лес, кто по дрова =(

Ну при чем тут дрова? FreeBSD-шный rc
слизан с NetBSD-шного примерно в 2000-м, потому они до сих пор
во многом похожи. Базовые системы и общая организация системы,
включая make(1), очень сильно и очень давно разошлись.

> а как мейнтейнеру защиться от безумных CFLAGS/CXXFLAGS(типа -O3
> -funroll-all-loops -funsafe-math)?
> есть штатная возможность стрипать некоторые флаги?

Стрипать не нужно. Достаточно CFLAGS += -DЯ_СКАЗАЛ_ВОТ_ТАК!!!
Но вообще, это проблема высосанная из пальца, я считаю.
И именно с этой целью так никто не делает AFAIK.

>> Это решается другими средствами ментейнером пакетов.
>> samba33 -- отдельно, samba35 -- отдельно, например.
>> Аналогичная ситуация с емаксами, питонами, пыпыхами, апачами и прочими.
> а если нам надо зафиксироваться на отдельном минорном релизе?

Я уже сказал, что масок именно в таком виде нет, но проблема частично
решается тем, что разные питоны, шмитоны и самбы разных версий -- это
отдельные пакеты. Не может произойти апдейта с emacs20 до emacs24,
если пользователь явно не захочет обратного.
Сделать маски на уровне nih/pkgin в принципе несложно, но на уровне
pkg_install их нет и вряд ли эта инициалива пройдет.
Но "зафиксироваться на отдельном минорном релизе" -- это editors/emacs20
vs. editors/emacs24.

Ответить | Правка | К родителю #147 | Наверх | Cообщить модератору

110. "Проект DragonFly BSD представил новую систему сборки пакетов..."  –1 +/
Сообщение от Сержант Скотч (?), 08-Янв-13, 00:54 

> Если это вопрос, то мне он непонятен. Да, можно выключить или включить
> определенную опцию попакетно либо глобально для всех пакетов.
> Опция, отвечающая за pulseaudio всегда для всех пакетов называется pulseaudio
> и никак иначе.
> Попакетные установки (PKG_OPTIONS.mplayer) имеют приоритет
> над глобальными (PKG_DEFAULT_OPTIONS).

спасибо, вы на вопрос как раз ответили :)))

>> 0 cheusov>nih search -I DEPENDS:w:pulseaudio
>> это будут пакеты которые сейчас зависят от pulseaudio или же так мейнтейнер
>> задумал?
> Вопрос был про _установленные_ пакеты. Это про них (опция -I means installed).

тут, видимо, надо пояснить. упрощённо:
1. глобально выключаем pulseaudio
2. ставим много-много софта
3. глобально включаем pulseaudio

(да, ситуация выглядит идиотской, но между 2 и 3 может пройти немало времени).

что покажет nih search -I DEPENDS:w:pulseaudio ?

> Это в pkgsrc решено 1000 лет назад. Двумя способами: pbulk, distbb.

понимаете, пользователю не надо over 9k способов. нужен один, но простой и понятный.

pbulk, distbb - это именно для массового билда и больше подходит для делающих дистрибутив.

хотя, признаюсь честно, distbb радует возможностями.

>> 2)фоновый фетч в процессе сборки(пока собирается boost/openoffice мы уже вытянули исходники
>> kdelibs со всеми зависимостями)
> Про pbulk не в курсе, я его игнорирую, а в distbb подумываю
> над тем, чтобы это сделать. Не то, чтобы это killer feature,
> но если будет время.

оно имеет смысл, когда у нас либо не очень быстрый интернет(либо когда зависимостей много, но тарболлы с исходниками относительно маленькие).


>> 4)контрольные суммы для Makefile
> Не понял. Это зачем?

кто-то плохой поправил Makefile порта(случайно повредили итп).

>> 5)фетч под специальным ограниченным пользователем
> В pkgsrc программа для скачивания может легко меняться.
> Кому надо, тот сделает себе непривилегированный вариант.
> То есть мы и так в сендбоксе, не вижу особого смысла.

сендбокс же силами chroot в большинстве случаев. root из него может выбраться.


 
>[оверквотинг удален]
> The GNU Compiler Collection (GCC) support shared libraries.
> wip/gcc42            
>      - This is the GCC 4.2.3
> compiler
> wip/gcc43            
>      - This is the GCC 4.3.2
> compiler
> wip/gcc47            
>      - GNU Compiler Collection 4.7
> 0 ~>


> Оно?

нет. gcc-4.2.0, gcc-4.2.1,gcc-4.2.2 etc...
имхо, идея поддерживать версии умножением сущностей (lang/gcc44, lang/gcc43 etc) - порочна.

>> 9)поддержка профилей(hardened/desktop/server)
> hardened штука отличная, наслышан, но это уже скорее уровня дистрибутива.
> На данный момент в pkgsrc опции касательно PIE, FSP, FORTIFY_SOURCES, RELRO
> не пропихиваются. За вычетом RELRO NetBSD их поддерживает, так что можно включить.

дело не только в hardened.
например, вы добавляете архитектуру armv8 и на ней есть как сервера, так и десктопы. очевидно, что для серверов x11 и pulseaudio не нужны. прописываете в профиль флаги, версию gcc/binutils/etc и получаете серверный вариант.
т.е. hardened отличается от обычного только набором флагов.


> в pkgsrc в отличие от фри, например, поквартальные стабильные бранчи.

а вот это очень хорошо. очень.

>> 11)виртуальные пакеты(Существуют также пакеты, выполняющие одни и те же функции, но отличающиеся
>> в реализации. Например metalogd, sysklogd и syslog-ng являются системными службами журналирования.
> В терминологии pkgsrc это meta package.

я не стал упоминать о метапакетах, т.к. в portage у них определённая цель: объединять набор пакетов некую сущность(т.е. поставив метапакет kde приедет всё kde).

>> 12)подключаемые деревья портов(т.н. overlays, дополняющие или перекрывающие основное
>> дерево)
> Расшифруй. Чьи-то доработки слева и справа?

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

Ответить | Правка | К родителю #100 | Наверх | Cообщить модератору

117. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +/
Сообщение от vle (ok), 08-Янв-13, 01:35 
>> Если это вопрос, то мне он непонятен. Да, можно выключить или включить
>> определенную опцию попакетно либо глобально для всех пакетов.
>> Опция, отвечающая за pulseaudio всегда для всех пакетов называется pulseaudio
>> и никак иначе.
>> Попакетные установки (PKG_OPTIONS.mplayer) имеют приоритет
>> над глобальными (PKG_DEFAULT_OPTIONS).
> спасибо, вы на вопрос как раз ответили :)))

Я старался. Если не затруднит, перефразируй вопрос.
Ибо как я понял, так и ответил. Я не из тех, кто юлит.

>[оверквотинг удален]
>>> это будут пакеты которые сейчас зависят от pulseaudio или же так мейнтейнер
>>> задумал?
>> Вопрос был про _установленные_ пакеты. Это про них (опция -I means installed).
> тут, видимо, надо пояснить. упрощённо:
> 1. глобально выключаем pulseaudio
> 2. ставим много-много софта
> 3. глобально включаем pulseaudio
> (да, ситуация выглядит идиотской, но между 2 и 3 может пройти немало
> времени).
> что покажет nih search -I DEPENDS:w:pulseaudio ?

Ну я тогда тоже ведь упгощенно как гусский у гусского спгошу.
В генту от изменения текстового файла, скажем, /etc/fstab меняется
информация об _установленных_ пакетах? ;-)
Ну вот и здесь так же. Изменение в пункте №3 коснется
только вновь собираемых пакетов. Отследить, какие пакеты пользователь
"может захотеть" пересобрать можно. См. то, что я писал о PKG_OPTIONS.
Скриптом на шеле. Было бы желание. Могу сделать это фичей nih-а,
но пока не вижу особой надобности, хотя... можно подумать.

>> Это в pkgsrc решено 1000 лет назад. Двумя способами: pbulk, distbb.
> понимаете, пользователю не надо over 9k способов. нужен один, но простой и
> понятный. pbulk, distbb - это именно для массового билда и больше подходит для
> делающих дистрибутив.

Да, на данный момент настройка pbulk и distbb не совсем тривиальна.
Здесь я минус вижу и его хорошо понимаю.
pkg_comp в этом смысле прост и понятен как дерево,
хотя не имеет тех возможностей даже близко. Я потихоньку двигаюсь
в этом направлении в distbb, но неспеша. Банальная проблема заключается
уже в том, что хотелки у всех разные, и системы тоже. Можно заточить
все исключительно под NetBSD и дефолтные настройки,
но это не совсем правильно. Потому лично я
в distbb предоставил возможности, которых достаточно для того, чтобы лепить
поперх что угодно. Может быть я и ошибся.

> хотя, признаюсь честно, distbb радует возможностями.

Спасибо.

>>> 4)контрольные суммы для Makefile
>> Не понял. Это зачем?
> кто-то плохой поправил Makefile порта(случайно повредили итп).

У меня на машине кто-то плохой? Я вас умоляю.
А почему он забыл поправить контрольные суммы?

>>> 5)фетч под специальным ограниченным пользователем
>> В pkgsrc программа для скачивания может легко меняться.
>> Кому надо, тот сделает себе непривилегированный вариант.
>> То есть мы и так в сендбоксе, не вижу особого смысла.
> сендбокс же силами chroot в большинстве случаев. root из него может выбраться.

"И эти люди запрещают мне ковыряться пальцем в носу!"(С)
Во-первых, как я уже сказал, в pkgsrc непривилегированный режим сборки
(user-destdir) поддерживается в >99.5% пакетов,
и лично я всегда пользуюсь именно им. Во-вторых, в этом вашем линупсе
таки дырявый чрут даже для привилигированных пользователей
(fchdir, fchroot, ptrace). В третьих, ну я ли должных объяснять
про hardened chroot проекта grsecurity пользователю (разработчику?) gentoo? ;-)
В-четвертых, в линупсе уже давно есть lxc. OpenVZ в свете последних событий
я бы поостерегся хвалить. По крайней мере до некоторых пор.

> нет. gcc-4.2.0, gcc-4.2.1,gcc-4.2.2 etc...
> имхо, идея поддерживать версии умножением сущностей
> (lang/gcc44, lang/gcc43 etc) - порочна.

gcc-4.2 и gcc-4.7 -- это разные сущности, совсем.

>>> 11)виртуальные пакеты(Существуют также пакеты, выполняющие одни и те же функции, но отличающиеся
>>> в реализации. Например metalogd, sysklogd и syslog-ng являются системными службами журналирования.
>> В терминологии pkgsrc это meta package.
> я не стал упоминать о метапакетах, т.к. в portage у них определённая
> цель: объединять набор пакетов некую сущность(т.е. поставив метапакет kde приедет всё
> kde).

На это я уже ответил. meta package + alternative depedendency

>>> 12)подключаемые деревья портов(т.н. overlays, дополняющие или перекрывающие основное
>>> дерево)
>> Расшифруй. Чьи-то доработки слева и справа?
> именно. т.е. если человек сделал доброе дело, но в апстрим не берут(либо
> человек не хочет становится мейнтейнером) и хочет поделиться с миром. таким
> же образом цепляются собственные наработки.

У нас для этого используется ОДИН дополнительный
репозиторий -- wip, что безумно удобно.
И все о нем знают. То есть добрые дела творить можно, причем с начала 2000-х.
Очень активный проект, надо сказать.

Ответить | Правка | Наверх | Cообщить модератору

138. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +/
Сообщение от Аноним (-), 08-Янв-13, 18:21 
>gcc-4.2 и gcc-4.7 -- это разные сущности, совсем.

Хм?
Ну на то пошло, в слоты можно поставить gcc-4.2.3, 4.2.4, 4.7.0, 4.7.2. И все это будут разные слоты одного порта, и между ними можно удобно переключаться парой команд.

>У нас для этого используется ОДИН дополнительный
>репозиторий -- wip, что безумно удобно.

А вот не факт.
Во-первых, чужая площадка - это чужая площадка.:) В смысле, что ты хошь-нехошь, а должен принимать правила того, кто рулит. И не только правила, но и возможные закидоны. А оверлей можешь поднять хоть на своем локалхосте.
Во-вторых. В разных репах один и тот же порт может быть по-разному запилен. И юзверь сможет выбирать, чью версию он будет использовать - твою или Васи Пупкина.

Ответить | Правка | Наверх | Cообщить модератору

140. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +/
Сообщение от spy (?), 08-Янв-13, 20:21 
>>>> 4)контрольные суммы для Makefile
>>> Не понял. Это зачем?
>> кто-то плохой поправил Makefile порта(случайно повредили итп).
> У меня на машине кто-то плохой? Я вас умоляю.
> А почему он забыл поправить контрольные суммы?

а что это ему даст?
вот есть каталог с ebuild'ми. файл с хешами называется Manifest, его содержимое примерно такое:

# cat Manifest                                                                                                                                                                                                                  
-----BEGIN PGP SIGNED MESSAGE-----                                                                                                                                                                                                          
Hash: SHA256                                                                                                                                                                                                                                
                                                                                                                                                                                                                                            
DIST drush-4.5.tar.gz 282760 SHA256 11a8ba3acbebf0be45407dee54a4c59cb9da7dfb461cf4ed9e27e78b2968fc99 SHA512 9ce80f08e8e5ca3a48821dd8db2cac8fa7b6e1d6f6e77319d4f1a84639fc4cc8152e666da31d11f02b2a5b646f81d8a714b483bef48d6ed2b4001cc18a92831b WHIRLPOOL 5efdbc154faf164bc0d0a5959ee6ec07e4446053995a12035b37a664e172ed4f06c7adc7c9d6ac24fbb98603133478dfa2c44c77a91a8688296f7339a751c70c                                                                                                  
DIST drush-4.6.tar.gz 290434 SHA256 c8f5a165c1624b023aaa74b4fd852da1dc426bd08f7cf1af328fe16e7de27d8d SHA512 7965a7d191f88e60d9dc19baba3a6e25e10facbe5a84d30681b5b071dbde0c284fddcc8fb76f70c0ccfc115f4603b2c607f3081f523d566bfb397e70983dd3a2 WHIRLPOOL 18fdcbd3349fda8016c6ae512d9f2c1035e53e0122c9241717d66dfaa4c3e3a19d2e13b89c576faa426ab635ff98e3afabe9d664c825df28071d7438e12d31fc                                                                                                  
DIST drush-5.1.tar.gz 398390 SHA256 24c701e8e4da60261210227f5e3c666989ce79234b222a8b1f17de137e7efd67 SHA512 2f35eb25914fe6e6da80f1c9b8be1978a17f6f1cfdb822bfd211d56bd0a8dcb1a4d67325dc11920ad61cfa638a5b1e58dec7f49396b589465401b31af703feaa WHIRLPOOL 18cf7374deaddff745441290222a742b82b2183ebb6f5d1c1a079e84607f82839d458bba8aa118d6c07e53cf54e49b1314dc7c199af6582d8fe1a313e3c9ee9c                                                                                                  
DIST drush-5.8.tar.gz 409642 SHA256 15dd85f04c49b4a896b02dd6960d3140f3ae680bab3eea5d3aba27be0481e480 SHA512 85f7572aece8590d23164dc938e00b740718a5b9bf20ca866083f9e8ce2025ec07f57e06234bf50bfe2351f407f5bad21789103c1e04d18d2fd202fa735637e6 WHIRLPOOL 68f4a8ca09fc61c36de3d6cc6e3aeaab2021b677ba9d732a65f4d5a9940ebbee3cd63dc84f165e119770168547b1997aff6c23497dc50dbe548df348c296188c                                                                                                  
EBUILD drush-4.5-r1.ebuild 1209 SHA256 a0c61140ae49781b30b2779b5bb09c4dffade03ac3e34ec0b5575a24e5da56ab SHA512 063cf74bd1644f005ebeb8a6a090c09b77bb0594de9f093ef5a5aebaae8264ce23e83b8ef77d2fe7d03bc185b3ce3c0dab38f6614d01ce77a453aeb6deaecc6c WHIRLPOOL 4a6043fb99f45dfac14ba59914e2b8198a9cf4ee76c1e9208754a2378d75943b4f151aa5bbdbdda84fddd04c98937e25faa3ad2a99c04de4671efef334bb0ea9                                                                                                
EBUILD drush-4.6.ebuild 1208 SHA256 3172cdb4c705d5eeefea7255cf85a052336d19011bfcfd3e6bed5a7e5d1e6d29 SHA512 1a2087ba9c58c64bc64b81f6d050ece76772206bdad2510581974dc6ca328f75a0e1bde04a459730e43373d88c716b82627232e55f7f76f87cf31b0a7fe5a9d3 WHIRLPOOL 70913d7cae906002aaf053a587c6cce59be611e5d1c03705d3c1fa56c242b92715168ceec6e0cee417458fc3baf9e4971ebb46ed231f3e7c71ead22b8439f962                                                                                                  
EBUILD drush-5.1.ebuild 1515 SHA256 405be1c00dc0776325e771510db7ae343f2b62e92c2646238078b4106aacf7b9 SHA512 e50c281d6b33c79cc577df5ee59c178b72f2494241ddf4512101900602ce9c0896833ba7b54a0790608007d0d1f0c19e30a1180637952555ba5e35e8fe5874bc WHIRLPOOL 7a9b822ec9a225d9d05ac270eab5c8e4fa8b505310914f487b63815e724709c161304a64bbaf74376212628bf4d60e239c6da7e7555208cf7c8a72f819b5dec2
EBUILD drush-5.8.ebuild 1517 SHA256 67e0d3755055718453b498af2fb559a9debe8df1125164fae2d47f458c062f62 SHA512 bc8677fe05f2f50159220315ba5ff48a3df61eb66d7086560da01f59b371c7f720017689f0b4a25d2a783b25a60f1426dafefae4c95c0d11f0d9c70bcf8b1eff WHIRLPOOL 08af066c00d1d2af0add58c29d37a5629a8c4dda963e72eecf98b003c24189c1e8d8c29c8da9ae41e752c1e4ecaf26ebc436b3d782235c8ee616f8091a76a367
MISC ChangeLog 1061 SHA256 5502bd56cd74b5f3cfb6e5e4ce07e7fb06ff11e554b8a5f1a81f98cee73d171c SHA512 399db2153bbd7d54c7fcbc217e85db63fcebf5447b0679b804e60945de009ad598cd7e2442f7d60f18c9655e0b271895863e60d7cbe94bf5fd5de03ef1af6243 WHIRLPOOL cdf5c067d5103a06daeedeed2129a19529bf71fa2368d0b814e1f3efe42d0dd08f5f92ca2d9ba21c2751b84edf4e4fe37af15d386bd13c7c14593ce1f08b8ade
MISC metadata.xml 615 SHA256 2825b70437ca9835993991ae46bda0e478e0f1e1a45447c972d4ec609af2b657 SHA512 eb1fb01f21c2dfd6ad7e993cdd11323c7b7b0168573018f46dcb9bdde1d45587b57284fce29836d884e1c322e97742e551da356ec37374449ed34c8cfc8f68cc WHIRLPOOL 77579cb2131198edca50004ac1350cb5a400bc502ace0dbbad99ba77d69427b8a5de2005c10477fa28c2c02f40b39e3b887be9ae1e8fa69492cec14673b3808f
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.19 (GNU/Linux)

iD8DBQFQ2S1AQW+hXSf0t0IRCOZkAJ9O19lL02qu2mecUGYcjl/LPqD42wCgzHLq
iX35K4JQkHAz6u8/oeh6gHE=
=P10I
-----END PGP SIGNATURE-----

Ну а дальше "Signing the Manifest using your GPG key"

http://devmanual.gentoo.org/general-concepts/manifest/index....

Ответить | Правка | К родителю #117 | Наверх | Cообщить модератору

104. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +1 +/
Сообщение от Michael Shigorinemail (ok), 07-Янв-13, 23:10 
> И если кто-то плохой поправит мейкфайл, добавив туда аналог rm -rf /
> это приведёт только к проблемам в песочнице, а не во всей системе.

А кто-то ещё собирается не в чруте как минимум?

Ответить | Правка | К родителю #94 | Наверх | Cообщить модератору

128. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +/
Сообщение от vle (ok), 08-Янв-13, 03:47 
>> И если кто-то плохой поправит мейкфайл, добавив туда аналог rm -rf /
>> это приведёт только к проблемам в песочнице, а не во всей системе.
> А кто-то ещё собирается не в чруте как минимум?

Этой шутке, Миша, я думаю уже много лет. Выкинь ее.
Также смотри то, что я говорил про user-destdir
и непривилегированную сборку.

Но я тебе скажу другое. Есть случаи, когда собираться
в чруте невозможно, и приходиться собирать и ставить пакеты "на месте".
Например, когда у меня нет root-а. По POSIX-у chroot его требует.
pkgsrc, к примеру, умеет бутстрапиться в любой произвольный
каталог, рута при этом не нужно, все ставится и работает
от обычного пользователя (режим UNPRIVILEGED=yes).
Так вот, в этом случае тебе придется
пользоваться средствами типа
http://pkgsrc.se/pkgtools/pkg_rolling-replace
которые шлепают по пакетам, обходя дерево зависимостей от листьев к корню
и пересобирает каждый, ставя его, опять же, на месте.

usecase: Вот дали нам ребята из Joyent shell account на их SmartMachine,
чтобы могли сами исправлять пакеты под их вариант соляры, а контейнера пожалели.
Да он и не нужен! shell account-а ведь достаточно для разработки!

Ответить | Правка | Наверх | Cообщить модератору

137. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +/
Сообщение от Аноним (-), 08-Янв-13, 18:11 
>пользоваться средствами типа
>http://pkgsrc.se/pkgtools/pkg_rolling-replace

Кстати, замечательнейшая штука, я ей обновляюсь. При случае автору привет передавайте.:)

Ответить | Правка | Наверх | Cообщить модератору

79. "Проект DragonFly BSD представил новую систему сборки пакетов..."  +/
Сообщение от vle (ok), 07-Янв-13, 15:58 
> Как мне в pkgsrc узнать, какие пакеты используют поддержку pulseaudio? Из
> установленных на моем локалхосте

Еще два варианта:
1) pkg_info -R pulseaudio
2) nih deps -I1l pulseaudio

Во втором варианте без -1l выведет дерево зависимостей от pulseaudio рекурсивно.
-1 пока не отрелизил.

Ответить | Правка | К родителю #72 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру