1#!/bin/sh
2# Copyright (c) April 1997 Wolfram Schneider <wosch@FreeBSD.org>, Berlin.
3#
4# portsinfo - Generate list of new ports for last two weeks.
5#
6# $FreeBSD$
7
8PATH=/bin:/usr/bin:/usr/local/bin:$PATH; export PATH
9
10host=http://www.freebsd.org
11url=$host/cgi/ports.cgi
12time='?type=new&time=2+week+ago&sektion=all'
13time2='?type=changed&time=2+week+ago&sektion=all'
14info=yes
15
16if [ x"$info" = xyes ]; then
17
18cat <<'EOF'
19Introduction
20------------
21
22The FreeBSD Ports Collection offers a simple way for users and
23administrators to install applications. Each "port" listed here
24contains any patches necessary to make the original application source
25code compile and run on FreeBSD. Installing an application is as
26simple as downloading the port, unpacking it and typing make in the
27port directory. The Makefile automatically fetches the application
28source code, either from a local disk or via ftp, unpacks it on your
29system, applies the patches, and compiles. If all goes well, simply
30type make install to install the application.
31
32For more information about using ports, see the ports collection
33
34	http://www.freebsd.org/handbook/ports.html
35and
36	http://www.freebsd.org/ports/
37
38EOF
39
40    lynx -dump $host/ports/ |
41	perl -ne '/^[ ]*There are currently/ && s/^\s+// && print && exit'
42
43cat <<EOF
44
45
46New ports added last two weeks
47------------------------------
48
49EOF
50
51
52fi
53
54
55lynx -nolist -dump -reload -nostatus "$url$time" | 
56    grep -v "Description :" |
57perl -ne 'print if (/^\s*Category/ .. /__________________/)' |
58    grep -v ________ | 
59perl -ne 'if (/^\s*Category/) { 
60		print; for(1..50) {print "="}; print "\n";
61          } else { print}'
62
63cat <<EOF
64
65
66Updated ports last two weeks
67-----------------------------------
68
69EOF
70
71lynx -nolist -dump -reload -nostatus "$url$time2" |
72    grep -v "Description :" |
73perl -ne 's/\[INLINE\]\s*//g; print if (/Category/ .. /XXXXYYYYZZZZ/)' |      
74perl -ne 'if (/^\s*Category/) {
75                print; for(1..50) {print "="}; print "\n";
76          } else { print}'
77
78cat <<EOF
79
80This information was produced by
81	$url
82
83EOF
84
85