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

Revision 11225, 2.3 KB checked in by daisuke, 6 years ago (diff)

6 to 6.5

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