ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: "Alexey I. Froloff" <raorn@immo.ru>
To: ALT Devel discussion list <devel@altlinux.ru>
Subject: Re: [devel] hasher
Date: Fri, 9 Jan 2004 09:36:37 +0300
Message-ID: <20040109063637.GD13319@inferno.immo> (raw)
In-Reply-To: <20040108225711.763a7371.peet@altlinux.ru>

[-- Attachment #1: Type: text/plain, Size: 3548 bytes --]

* Peter V. Saveliev <peet@altlinux.ru> [040108 22:58]:
> Сорри за занудство, просто в отсутствие развёнутой документации по пакету,
> очень сложно ставить задачи, с ним связанные. Вот, тут прозвучало мнение,
> что для моих задач больше подходит sandman. Возможно, но хотелось бы
> самостоятельно придти к такому выводу :)
Ну, могу попробовать ещё раз озвучить своё мнение по этому
вопросу.  Надо наверно начать с того, что sandman был написан
разработчиками для облегчения процесса разработки, в то время как
hasher был ориентирован в первую очередь на быструю и безопасную
пересборку пакетов, пришедших из "непровереных источников".

В sandman фиксируются все изменения пакета (спек-файл, тарболы,
патчи), можно гибко управлять некоторыми параметрами сборки
индивидуально для пакетов, есть поддержка нескольких базовых
дистрибутивов (т.е. можно разрабатывать пакеты для, например,
current sisyphus, master 2.2 и junior 2.2).  В sandman также
возможна паралельная сборка нескольких пакетов (в hasher это тоже
можно сделать используя разные префиксы).  Также для ускорения
процесса пересборки есть (или сейчас сломана?) поддержка ccache,
возможность повторного использования "песочниц" для сборки
нескольких зависимых друг от друга пакетов.  Плюс к этому всему -
клиент-серверная архитектура, что позволяет держать один мощный
сборочный сервер на группу разработчиков.  Ещё большим
преимуществом я считаю зависимость sandman только от apt,
установленного в рабочей системе, да и то только на начальной
стадии создания базовой системы в chrooted environment.

С другой стороны sandman довольно сильно доверяет собираемым
пакетам.  Несмотря на то, что создание сборочной среды происходит
в chrooted environment, пакеты устанавливаются от
суперпользователя и от него же выполняются все postinstall
скрипты.  Чем это может быть чревато, думаю, об'яснять не надо
;-)

hasher - "пакеторубка" (C) ldv ;-)  В первую очередь (как _мне_
кажется) он задумывался как быстрая и безопасная разгребалка
incoming'а.  Всё операции выполняются от псевдопользователя
(хотел по привычке добавить "в пустом read-only chroot'е" ;-) под
fakeroot(1), используется целый комплекс мероприятий для защиты
от возможного DoS (например ограничение времени сборки)...
Также, hasher довольно сильно зависит от окружения, в котором
работает, мне кажется, что он очень ALT- (точнее даже Sisyphus-)
specific...

Но зато при использовании hasher разработчик должен сам думать с
какими параметрами его вызывать, где хранить исходные src.rpm'ы,
следить за тем, чтобы не собирались несколько пакетов в одном
префиксе и т.д. (но есть один большой плюс - гибкое управление
целевой архитектурой - например я собираю свои ядра в hasher под
i686, в sandman это можно сделать, но гораздо сложнее).

Это всё - суб'ективное мнение меня как мантейнера нескольких
пакетов.  И конечно не последнюю роль тут играет тот факт, что
sandman я настроил (ещё раз огромное спасибо Сергею Большакову за
неоценимую помощь) ещё тогда, когда hasher не был написан ;-)

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

В любом случае - не попробуешь не узнаешь ;-)

-- 
Regards, Sir Raorn.
-------------------
Код в ntp, который обеспечивает этот resolving, плох.
		-- ldv in sisyphus@

[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]

  reply	other threads:[~2004-01-09  6:36 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-01-07 11:51 Peter V. Saveliev
2004-01-07 13:54     ` [devel] hasher Michael Shigorin
2004-01-07 14:20       ` Vitaly Lipatov
2004-01-07 14:57         ` Peter V. Saveliev
2004-01-07 17:17           ` Vitaly Lipatov
2004-01-08  0:14           ` Dmitry V. Levin
2004-01-07 15:07         ` Michael Shigorin
2004-01-07 17:19           ` Vitaly Lipatov
2004-01-07 20:31             ` Michael Shigorin
2004-01-07 14:29       ` Peter V. Saveliev
2004-01-07 14:31         ` Michael Shigorin
2004-01-07 15:07           ` Peter V. Saveliev
2004-01-08  5:45             ` Alexey I. Froloff
2004-01-08 12:25               ` Алексей Любимов
2004-01-08 12:32                 ` Alexey I. Froloff
2004-05-25 10:08               ` Alexey I. Froloff
2004-05-25 10:45               ` Алексей Любимов
2004-01-08  0:18         ` Dmitry V. Levin
2004-01-08  0:11       ` Dmitry V. Levin
2004-01-08  7:51         ` Michael Shigorin
2004-01-08  8:00           ` Alexey I. Froloff
2004-01-08  0:06 ` [devel] hasher Dmitry V. Levin
2004-01-08 19:57   ` Peter V. Saveliev
2004-01-09  6:36     ` Alexey I. Froloff [this message]
2004-01-09 10:05       ` Peter V. Saveliev
2004-01-09 10:28       ` Dmitry V. Levin
2004-07-17 15:50 ` Dmitry V. Levin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20040109063637.GD13319@inferno.immo \
    --to=raorn@immo.ru \
    --cc=devel@altlinux.ru \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git