ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: "Dmitry V. Levin" <ldv@altlinux.org>
To: ALT Devel discussion list <devel@lists.altlinux.org>
Subject: Re: [devel] Как сделать репозиторий в git
Date: Wed, 26 Apr 2006 03:56:10 +0400
Message-ID: <20060425235610.GC12520@basalt.office.altlinux.org> (raw)
In-Reply-To: <20060425234602.GI8441@localhost>

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

On Wed, Apr 26, 2006 at 03:46:02AM +0400, Alexey Tourbin wrote:
> On Wed, Apr 26, 2006 at 02:47:36AM +0400, Dmitry V. Levin wrote:
> > Предпосылка та же, что была при создании hasher'а: я предполагаю, что
> > система предназначена не только для того, чтобы мантейнер собирал свои
> > пакеты, но и для того, чтобы собирать чужие пакеты "не глядя".
> > 
> > В этом случае содержимое репозитория следует рассматривать как untrusted
> > input.  В такой ситуации нельзя использовать простые методы, эквивалентные
> > запуску произвольного кода, извлекаемого из репозитория.  К этим простым
> > методам относятся:
> > - запускаемые скрипты;
> > - включаемые makefile'ы;
> > - specfile'ы, обрабатываемые rpmbuild'ом.
> > 
> > Значит, чтобы собирать пакеты из репозитория, нужно либо иметь просто
> > устроенные specfile'ы, либо завести служебный файл, примитивный внутри и
> > достаточный для сборки пакета в типичных случаях устройства репозитория.
> 
> Здесь не понял ход мыслей.  "Сборка specfile'ов небезопасна.  Значит,
> нужно упростить specfile'ы, чтобы сборка стала безопасной."  Так?
> Что имелось в виду под упрощением?

Думаю что упрощение specfile'ов до состояния, когда их можно будет
парсить без помощи rpmbuild, является недостижимой задачей.

> > Упростить 5.5 тысяч specfile'ов в обозримом будущем нереально, поэтому я
> > предлагаю завести служебный файл.  Имя его не столь важно, хотя значение
> > по умолчанию должно быть достаточно редким.  Во время тестирования я
> > использовал имя ".buildspec".
> 
> Чем занимается этот служебный файл?

Он определяет, какие файлы из репозитория должны попасть во временный
srpm-пакет, а также простые преобразования, которые при этом следует
сделать (например, свернуть дерево в тарболл или сжать тарболл bzip'ом).

Примеры .buildspec'ов:

1-й тип (service):
tar: .

2-й тип (hasher):
spec: hasher/hasher.spec
tar: hasher

3-й тип (strace):
copy: *.patch
bzip2: *.tar

> Проблема в том, что из спека на самом деле нетривиально получить src.rpm
> для последующей сборки.

Нетривиально, но с помощью hasher'а можно.  У меня есть мысли (и код) на
эту тему.  А что, интересно?


-- 
ldv

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

  reply	other threads:[~2006-04-25 23:56 UTC|newest]

Thread overview: 81+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-04-25 22:47 Dmitry V. Levin
2006-04-25 23:02 ` Alexey Tourbin
2006-04-25 23:10   ` Dmitry V. Levin
2006-04-25 23:18     ` Alexey Tourbin
2006-04-25 23:34       ` Dmitry V. Levin
2006-04-26  8:36         ` Michael Shigorin
2006-04-26  8:45           ` Alexey Tourbin
2006-04-26  9:21             ` Michael Shigorin
2006-04-26 10:30               ` Dmitry V. Levin
2006-04-26 12:27                 ` Michael Shigorin
2006-04-26 13:42         ` Alexey Tourbin
2006-04-26 13:53           ` Michael Shigorin
2006-04-26 18:49             ` Anton Farygin
2006-04-26 18:58               ` Michael Shigorin
2006-04-26 19:26                 ` Anton Farygin
2006-04-26 20:40                   ` Dmitry V. Levin
2006-04-27  5:45                     ` Anton Farygin
2006-04-25 23:46 ` Alexey Tourbin
2006-04-25 23:56   ` Dmitry V. Levin [this message]
2006-04-26  0:06     ` Alexey Tourbin
2006-04-26  0:21       ` Dmitry V. Levin
2006-04-26  8:56         ` [devel] BuildRequires(pre) Michael Shigorin
2006-04-26 10:31           ` Dmitry V. Levin
2006-04-28  9:35         ` [devel] Как сделать репозиторий в git Sergey Bolshakov
2006-04-28  9:53           ` Alexey I. Froloff
2006-04-28  9:55             ` Sergey Bolshakov
2006-04-29 23:30           ` Dmitry V. Levin
2006-04-29 23:39             ` Alexey Tourbin
2006-04-30 13:15               ` Dmitry V. Levin
2006-04-26  5:11 ` Alexey I. Froloff
2006-04-26 10:33   ` Dmitry V. Levin
2006-04-26 23:34     ` Dmitry V. Levin
2006-04-28  8:22     ` Alexey I. Froloff
2006-04-28 12:06       ` Dmitry V. Levin
2006-04-28 12:23         ` Alexey I. Froloff
2006-04-28 12:35           ` Dmitry V. Levin
2006-04-28 12:47             ` Alexey I. Froloff
2006-04-29  9:20               ` Kirill A. Shutemov
2006-04-30 23:07                 ` Dmitry V. Levin
2006-05-01  9:43                   ` Alexey I. Froloff
2006-04-26  7:13 ` Vital Khilko
2006-04-26 10:35   ` Dmitry V. Levin
2006-04-26 11:21     ` Kirill A. Shutemov
2006-04-26 18:46 ` Anton Farygin
2006-04-26 21:36   ` Dmitry V. Levin
2006-04-26 21:58     ` Alexey I. Froloff
2006-04-26 22:16       ` Dmitry V. Levin
2006-04-27  5:51         ` Alexey I. Froloff
2006-04-27 12:33           ` Dmitry V. Levin
2006-04-27 13:01             ` Alexey I. Froloff
2006-04-27 23:55               ` Dmitry V. Levin
2006-04-28  7:04                 ` Anton Farygin
2006-04-28 12:08                   ` Dmitry V. Levin
2006-04-27  6:15     ` Anton Farygin
2006-04-27 12:47       ` Dmitry V. Levin
2006-04-27 13:25         ` Sergey Vlasov
2006-04-27 13:30           ` Dmitry V. Levin
2006-04-27 13:48         ` Anton Farygin
2006-04-27 14:18         ` Michael Shigorin
2006-04-27 14:00     ` Kirill A. Shutemov
2006-04-27 14:14       ` Alexey I. Froloff
2006-04-27 14:44         ` Dmitry V. Levin
2006-04-27 22:26     ` [devel] Как назвать утилиту Dmitry V. Levin
2006-04-27 16:53       ` Kirill Maslinsky
2006-04-28  7:07       ` Anton Farygin
2006-04-27  7:19 ` [devel] Как сделать репозиторий в git Stanislav Ievlev
2006-04-27 12:56   ` Dmitry V. Levin
2006-04-27 13:03     ` Alexey I. Froloff
2006-04-27 13:08       ` Dmitry V. Levin
2006-04-27 13:32     ` Sviatoslav Sviridov
2006-04-27 13:57     ` Anton Farygin
2006-04-27 14:24     ` Michael Shigorin
2006-04-27 22:06     ` [devel] Как назвать файл с правилами Dmitry V. Levin
2006-04-27 22:32       ` Sviatoslav Sviridov
2006-04-27 16:54         ` Kirill Maslinsky
2006-04-28 12:38           ` Dmitry V. Levin
2006-04-28 11:05       ` [devel] [JT] " Michael Shigorin
2006-04-28 11:09         ` Led
2006-04-28 11:15           ` Michael Shigorin
2006-04-28 11:27             ` Led
2006-04-28 10:56 ` [devel] Как сделать репозиторий в git Anton Farygin

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=20060425235610.GC12520@basalt.office.altlinux.org \
    --to=ldv@altlinux.org \
    --cc=devel@lists.altlinux.org \
    /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