[devel] rpm2specs += cvs?
Michael Shigorin
=?iso-8859-1?q?mike_=CE=C1_osdn=2Eorg=2Eua?=
Вт Окт 18 23:35:03 MSD 2005
On Tue, Oct 18, 2005 at 09:01:37PM +0400, Dmitry Marochko wrote:
> Случайно, это не движок, на котором сделан sisyphus.ru? Если
> это так, то я бы хотел поделиться багом - почему-то не
> показываются спеки пакетов. Также не помешало бы сделать
> скачивание спека и вообще исходного пакета по частям. Т.е.
> если например исходники есть, то зачем качать весь пакет ради
> одного патча или спека?
Это скорее r/o webcvs прицепить, я такое почти сделал когда-то
на alt.linux.kiev.ua -- споткнулся на том, что cvs файлы
с изменившимся inode считал как новые, а переписывать скрипт
для сравнения и cat вместо mv уже тогда не успел -- откатил всё
на старый...
Может, давайте попробуем хоть сейчас сделать для *.spec *.patch
*.diff? Некий текущий ужас (плюс рабочий вариант) -- цепляю.
(опять же... уж если разбирать пакеты, было бы разумно делать это
один раз, ну два, то не тридцать три)
--
---- WBR, Michael Shigorin <mike на altlinux.ru>
------ Linux.Kiev http://www.linux.kiev.ua/
----------- следующая часть -----------
#!/bin/sh
#!/bin/sh -x
TEMPSPECDIR="/www/www.linux.kiev.ua/html/devel/RPM/SPECS/.tmp"
SRPMPREFIX="/var/ftp/pub/Linux/ALT/Sisyphus/SRPMS."
SPECPREFIX="/www/www.linux.kiev.ua/html/devel/RPM/SPECS/"
LOSTSPECS="$TEMPSPECDIR/__lost-specs__"
#REPOS="base castle contrib junior kernel master non-free"
#REPOS="base"
REPOS="classic"
#REPOS="test"
CVSROOT="/var/cvs"
rm -rf "$TEMPSPECDIR"/ "$SPECPREFIX"/.CVS/
#rm -rf "$SPECPREFIX"
mkdir -p "$TEMPSPECDIR"
cd "$TEMPSPECDIR"
for repo in $REPOS; do
mv "$SPECPREFIX$repo"/CVS/ "$SPECPREFIX"/.CVS
#rm -rf "$SPECPREFIX$repo"
mkdir -p "$SPECPREFIX$repo"
for srpm in $SRPMPREFIX$repo/*.src.rpm; do
rpm2cpio "$srpm" \
| cpio --quiet --extract --preserve-modification-time *.spec
spec="`rpmquery --qf='%{NAME}' -p "$srpm"`.spec"
[ -f *.spec ] && chmod 644 *.spec
done
#mv -f *.spec "$SPECPREFIX$repo/$spec" || echo "$srpm"
rsync --delete ./ "$SPECPREFIX$repo"/
mv "$SPECPREFIX"/.CVS/ "$SPECPREFIX$repo"/CVS
#(cd "$SPECPREFIX$repo"; cvs -d /var/cvs ci -m `date +%Y%m%d`)
(
cd "$SPECPREFIX$repo";
cvs update \
| tee "$LOSTSPECS" \
| grep '^? .*\.spec$' \
| cut -c2- \
| xargs cvs add ""
cvs ci -m $((`date +%Y%m%d` -1))
)
done
----------- следующая часть -----------
#!/bin/sh
TEMPSPECDIR="/www/www.linux.kiev.ua/html/devel/RPM/SPECS/.tmp"
SRPMPREFIX="/var/ftp/pub/Linux/ALT/Sisyphus/SRPMS."
SPECPREFIX="/www/www.linux.kiev.ua/html/devel/RPM/SPECS/"
#REPOS="base castle contrib junior kernel master non-free"
#REPOS="base"
REPOS="classic"
rm -rf "$TEMPSPECDIR"
rm -rf "$SPECPREFIX"
mkdir -p "$TEMPSPECDIR"
cd "$TEMPSPECDIR"
for repo in $REPOS; do
mkdir -p "$SPECPREFIX$repo"
for srpm in $SRPMPREFIX$repo/*.src.rpm; do
rpm2cpio "$srpm" | cpio --quiet --extract *.spec
spec="`rpmquery --qf='%{NAME}' -p "$srpm"`.spec"
[ -f *.spec ] && chmod 644 *.spec
mv -f *.spec "$SPECPREFIX$repo/$spec" || echo "$srpm"
done
done
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20051018/899e1823/attachment-0001.bin>
Подробная информация о списке рассылки Devel