source: projects/web/trunk/bin/getpackagerdf.sh @ 3101

Revision 3101, 2.2 KB checked in by daisuke, 13 years ago (diff)

cleanup layout

  • Property svn:executable set to *
Line 
1#!/bin/bash
2
3DISTVER=VinePlus/5
4CATLIST=vine5x
5if [ "$1" == "VineSeed" ]; then
6  DISTVER=VineSeed
7  CATLIST=vineseed
8fi
9FILENAME=$(echo ${DISTVER} | sed -e 's|/||g' | tr '[:upper:]' '[:lower:]')news.html
10
11TOPDIR=/home/ftp/pub/Vine
12SRPMSDIR=${TOPDIR}/${DISTVER}/pool
13NEWRPMS=""
14URLHEAD="http://vinelinux.org/"
15
16#NEWRPMS=$((cd $SRPMSDIR ; rpm -qp --qf '%{BUILDTIME}\t%{NAME}-%{VERSION}-%{RELEASE}.src.rpm\n' *.src.rpm) | sort -rn | head -30 | \
17#while read buildtime srcrpm
18#do
19#  echo -n "$srcrpm "
20#done)
21
22NEWRPMS=$(ls -1t ${SRPMSDIR}/*.rpm | head -40 | xargs rpm -qp --qf '%{name}-%{version}-%{release}.src.rpm ')
23
24# Header
25cat << EOF
26<?xml version="1.0" encoding="UTF-8"?>
27<rdf:RDF
28  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
29  xmlns="http://purl.org/rss/1.0/"
30  xmlns:dc="http://purl.org/dc/elements/1.1/"
31  xml:lang="ja">
32<channel rdf:about="http://vinelinux.org/seed/index.html">
33  <title>${DISTVER}更新情報</title>
34  <link>http://vinelinux.org/${FILENAME}</link>
35  <description>${DISTVER} パッケージ更新情報</description>
36  <dc:date>`LANG=C date +%Y-%m-%dT%X+09:00`</dc:date>
37EOF
38
39export LANG=ja_JP.UTF-8
40
41# Contents
42echo "  <items>"
43echo "    <rdf:Seq>"
44for i in $NEWRPMS
45do
46  rpm -qp \
47      --qf "      <rdf:li resource=\"${URLHEAD}${FILENAME}#%{NAME}-%{VERSION}-%{RELEASE}\" />\n" \
48      ${SRPMSDIR}/$i | grep -v '^. \*'
49done
50echo "    </rdf:Seq>
51  </items>
52</channel>"
53echo
54
55for i in $NEWRPMS
56do
57  rpm -qp \
58      --qf "<item rdf:about=\"${URLHEAD}${FILENAME}#%{NAME}-%{VERSION}-%{RELEASE}\">\n" \
59      --qf '<title>%{NAME}-%{VERSION}-%{RELEASE}</title>\n' \
60      --qf "<link>${URLHEAD}${FILENAME}#%{NAME}-%{VERSION}-%{RELEASE}</link>\n" \
61      --qf '<description>\n' \
62      --qf '<\!\[CDATA\[<pre>\n' \
63      ${SRPMSDIR}/$i | grep -v '^. \*'
64  rpm -qp \
65      --qf '%{CHANGELOGTEXT}\n' \
66      ${SRPMSDIR}/$i | grep -v '^. \*' | grep -v '^ $' | \
67      sed -e 's/&/\&amp;/g' -e 's/</\&lt;/g' -e 's/>/\&gt;/g' -e 's/@/ at /g'
68  rpm -qp \
69      --qf '</pre>\]\]>\n' \
70      --qf '</description>\n' \
71      --qf '<dc:date>%{CHANGELOGTIME:date}+09:00</dc:date>\n' \
72      --qf '</item>\n\n' \
73      ${SRPMSDIR}/$i | \
74      sed -e 's/[年月]/-/g' -e 's/ /T/g' -e 's/[日秒]//g' -e 's/[時分]/:/g'
75done
76
77# Footer
78echo "</rdf:RDF>"
Note: See TracBrowser for help on using the repository browser.