# Copyright 2004 Progeny Linux Systems, Inc.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
#
# Author: olivier <bitmap_@_pan-.-homelinux.com>

suite_notes() {
    cat <<EOF
Fedora Core 4 (stentz) Suite Script
-----------------------------------
Builds a basic Fedora Core 4 bootstrap.

Author: olivier <bitmap_@_pan-.-homelinux.com>

EOF
}

work_out_mirror() {
    local big_mirror_list=""
    trace "Checking for $ARCH arch"
    case $ARCH in
        i[3456]86)
            big_mirror_list=$(cat <<EOF
http://download.fedora.redhat.com/pub/fedora/linux/core/4/i386/os/Fedora/RPMS/
http://mirror.linux.duke.edu/pub/fedora/linux/core/4/i386/os/Fedora/RPMS/
http://distro.ibiblio.org/pub/linux/distributions/fedora/linux/core/4/i386/os/Fedora/RPMS/
http://mirror.eas.muohio.edu/fedora/linux/core/4/i386/os/Fedora/RPMS/
http://mirrors.xmission.com/fedora/core/4/i386/os/Fedora/RPMS/
http://redhat.secsup.org/fedora/core/4/i386/os/Fedora/RPMS/
EOF
            )
            ;;
        "x86_64")
            big_mirror_list=$(cat <<EOF
http://download.fedora.redhat.com/pub/fedora/linux/core/4/x86_64/os/Fedora/RPMS/
http://mirror.linux.duke.edu/pub/fedora/linux/core/4/x86_64/os/Fedora/RPMS/
http://distro.ibiblio.org/pub/linux/distributions/fedora/linux/core/4/x86_64/os/Fedora/RPMS/
http://mirror.eas.muohio.edu/fedora/linux/core/4/x86_64/os/Fedora/RPMS/
http://mirrors.xmission.com/fedora/core/4/x86_64/os/Fedora/RPMS/
http://redhat.secsup.org/fedora/core/4/x86_64/os/Fedora/RPMS/
EOF
            )
            ;;
        *)
            die "Arch $ARCH is unsupported"
            ;;
    esac

    set_mirrors $big_mirror_list
}

work_out_rpms() {
    case $ARCH in
        "x86_64")
            RPMS=$(cat <<EOF
0:setup-2.5.44-1.noarch.rpm
1:filesystem-2.3.0-1.x86_64.rpm
2:basesystem-8.0-4.noarch.rpm
3:tzdata-2004e-2.noarch.rpm
4:glibc-common-2.3.3-74.x86_64.rpm
5:libgcc-3.4.2-6.fc3.i386.rpm
5:libgcc-3.4.2-6.fc3.x86_64.rpm
6:glibc-2.3.3-74.x86_64.rpm
6:glibc-2.3.3-74.i686.rpm
7:mktemp-1.5-10.x86_64.rpm
8:termcap-5.4-3.noarch.rpm
9:libtermcap-2.0.8-39.x86_64.rpm
10:bash-3.0-17.x86_64.rpm
11:ncurses-5.4-13.x86_64.rpm
11:ncurses-5.4-13.i386.rpm
12:zlib-1.2.1.2-1.i386.rpm
12:zlib-1.2.1.2-1.x86_64.rpm
13:info-4.7-5.x86_64.rpm
14:libselinux-1.17.14-1.i386.rpm
14:libselinux-1.17.14-1.x86_64.rpm
15:findutils-4.1.20-7.x86_64.rpm
15:pcre-4.5-3.x86_64.rpm
16:grep-2.5.1-31.x86_64.rpm
16:words-2-23.noarch.rpm
17:libattr-2.4.16-3.i386.rpm
17:libattr-2.4.16-3.x86_64.rpm
18:libacl-2.2.23-5.i386.rpm
18:libacl-2.2.23-5.x86_64.rpm
19:cracklib-2.7-28.i386.rpm
19:cracklib-2.7-28.x86_64.rpm
20:cracklib-dicts-2.7-28.x86_64.rpm
21:libstdc++-3.4.2-6.fc3.i386.rpm
21:libstdc++-3.4.2-6.fc3.x86_64.rpm
22:db4-4.2.52-6.i386.rpm
22:db4-4.2.52-6.x86_64.rpm
23:glib-1.2.10-15.x86_64.rpm
24:glib2-2.4.7-1.x86_64.rpm
24:glib2-2.4.7-1.i386.rpm
25:sed-4.1.2-4.x86_64.rpm
26:gawk-3.1.3-9.x86_64.rpm
27:fedora-release-3-9.x86_64.rpm
28:psmisc-21.4-4.x86_64.rpm
29:iproute-2.6.9-3.x86_64.rpm
30:iputils-20020927-16.x86_64.rpm
31:shadow-utils-4.0.3-37.x86_64.rpm
32:chkconfig-1.3.11.1-1.x86_64.rpm
33:e2fsprogs-1.35-11.2.x86_64.rpm
34:e2fsprogs-1.35-11.2.i386.rpm
35:ethtool-1.8-4.x86_64.rpm
36:mingetty-1.07-3.x86_64.rpm
37:net-tools-1.60-37.x86_64.rpm
38:popt-1.9.1-21.i386.rpm
38:popt-1.9.1-21.x86_64.rpm
38:less-382-4.x86_64.rpm
38:tar-1.14-4.x86_64.rpm
38:hwdata-0.145-1.noarch.rpm
38:usbutils-0.11-6.1.x86_64.rpm
38:libusb-0.1.10a-1.x86_64.rpm
37:device-mapper-1.00.19-2.x86_64.rpm
37:libsepol-1.1.1-2.x86_64.rpm
39:coreutils-5.2.1-31.x86_64.rpm
39:pam-0.77-65.x86_64.rpm
39:pam-0.77-65.i386.rpm
39:cpio-2.5-7.x86_64.rpm
39:MAKEDEV-3.13-1.x86_64.rpm
39:gzip-1.3.3-13.x86_64.rpm
39:hotplug-2004_04_01-6.x86_64.rpm
39:lvm2-2.00.25-1.01.x86_64.rpm
39:mkinitrd-4.1.18-2.x86_64.rpm
39:kernel-2.6.9-1.667.x86_64.rpm
39:initscripts-7.93.2-1.x86_64.rpm
39:SysVinit-2.85-34.x86_64.rpm
39:util-linux-2.12a-16.x86_64.rpm
39:sysklogd-1.4.1-22.x86_64.rpm
39:udev-039-8.FC3.x86_64.rpm
39:which-2.16-4.x86_64.rpm
39:module-init-tools-3.1-0.pre5.3.x86_64.rpm
39:procps-3.2.3-5.x86_64.rpm
39:audit-libs-0.8.2-1.x86_64.rpm
40:beecrypt-3.1.0-6.x86_64.rpm
41:bzip2-libs-1.0.2-13.i386.rpm
41:bzip2-libs-1.0.2-13.x86_64.rpm
42:bzip2-1.0.2-13.x86_64.rpm
43:elfutils-libelf-0.96-1.x86_64.rpm
44:elfutils-0.96-1.x86_64.rpm
45:gdbm-1.8.0-24.x86_64.rpm
45:gdbm-1.8.0-24.i386.rpm
46:gmp-4.1.4-3.x86_64.rpm
47:krb5-libs-1.3.4-7.x86_64.rpm
47:krb5-libs-1.3.4-7.i386.rpm
48:openssl-0.9.7a-40.x86_64.rpm
48:openssl-0.9.7a-40.i686.rpm
49:libxml2-2.6.14-2.x86_64.rpm
49:libxml2-2.6.14-2.i386.rpm
50:readline-4.3-13.x86_64.rpm
51:python-2.3.4-11.x86_64.rpm
52:libxml2-python-2.6.14-2.x86_64.rpm
53:rpm-4.3.2-21.x86_64.rpm
54:rpm-python-4.3.2-21.x86_64.rpm
55:wget-1.9.1-17.x86_64.rpm
56:yum-2.1.11-3.noarch.rpm
EOF
            )
            ;;
        i[3456]86)
            RPMS=$(cat <<EOF
0:setup-2.5.44-1.noarch.rpm
1:filesystem-2.3.4-1.i386.rpm
2:basesystem-8.0-5.noarch.rpm
3:tzdata-2005i-2.noarch.rpm
4:glibc-common-2.3.5-10.i386.rpm
5:libgcc-4.0.0-8.i386.rpm
6:glibc-2.3.5-10.i386.rpm
7:mktemp-1.5-23.i386.rpm
8:termcap-5.4-4.noarch.rpm
9:libtermcap-2.0.8-41.i386.rpm
10:bash-3.0-31.i386.rpm
11:ncurses-5.4-17.i386.rpm
12:zlib-1.2.2.2-3.i386.rpm
13:info-4.8-4.i386.rpm
14:libselinux-1.23.10-2.i386.rpm
15:findutils-4.2.20-1.i386.rpm
15:pcre-5.0-4.i386.rpm
16:grep-2.5.1-48.i386.rpm
16:words-3.0-7.noarch.rpm
17:libattr-2.4.16-5.i386.rpm
18:libacl-2.2.23-8.i386.rpm
19:cracklib-2.8.2-1.i386.rpm
20:cracklib-dicts-2.8.2-1.i386.rpm
21:libstdc++-4.0.0-8.i386.rpm
22:db4-4.3.27-3.i386.rpm
23:glib-1.2.10-16.i386.rpm
24:glib2-2.6.4-1.i386.rpm
25:sed-4.1.4-1.i386.rpm
26:gawk-3.1.4-5.i386.rpm
27:fedora-release-4-2.noarch.rpm
28:psmisc-21.5-4.i386.rpm
29:chkconfig-1.3.20-1.i386.rpm
30:iproute-2.6.11-1.i386.rpm
31:iputils-20020927-22.i386.rpm
32:shadow-utils-4.0.7-9.i386.rpm
33:e2fsprogs-1.37-4.i386.rpm
34:ethtool-3-1.i386.rpm
35:mingetty-1.07-5.i386.rpm
36:net-tools-1.60-52.i386.rpm
37:popt-1.10.1-21.i386.rpm
37:less-382-7.i386.rpm
37:tar-1.15.1-5.i386.rpm
37:hwdata-0.158-1.noarch.rpm
37:usbutils-0.70-1.1.i386.rpm
37:device-mapper-1.01.02-1.0.i386.rpm
37:libsepol-1.5.9-2.i386.rpm
37:libusb-0.1.10a-1.i386.rpm
38:coreutils-5.2.1-48.i386.rpm
38:pam-0.79-8.i386.rpm
38:mkinitrd-4.2.15-1.i386.rpm
38:kernel-smp-2.6.11-1.1369_FC4.i686.rpm
38:cpio-2.6-7.i386.rpm
38:gzip-1.3.5-6.i386.rpm
38:hotplug-2004_09_23-7.i386.rpm
38:lvm2-2.01.08-2.1.i386.rpm
38:initscripts-8.11.1-1.i386.rpm
38:SysVinit-2.85-39.i386.rpm
38:util-linux-2.12p-9.3.i386.rpm
38:sysklogd-1.4.1-30.i386.rpm
38:MAKEDEV-3.19-1.i386.rpm
38:udev-058-1.i386.rpm
38:which-2.16-6.i386.rpm
38:module-init-tools-3.1-3.i386.rpm
38:procps-3.2.5-6.i386.rpm
38:readline-5.0-3.i386.rpm
38:audit-libs-0.8.2-1.i386.rpm
39:beecrypt-4.1.2-8.i386.rpm
40:bzip2-libs-1.0.2-16.i386.rpm
41:bzip2-1.0.2-16.i386.rpm
42:elfutils-libelf-0.108-1.i386.rpm
43:elfutils-0.108-1.i386.rpm
44:gdbm-1.8.0-25.i386.rpm
45:gmp-4.1.4-6.i386.rpm
46:krb5-libs-1.4-3.i386.rpm
47:openssl-0.9.7f-7.i386.rpm
48:libxml2-2.6.19-1.i386.rpm
49:python-2.4.1-2.i386.rpm
50:libxml2-python-2.6.19-1.i386.rpm
50:file-4.13-4.i386.rpm
50:perl-5.8.6-15.i386.rpm
50:perl-Filter-1.30-7.i386.rpm
50:patch-2.5.4-24.i386.rpm
50:sqlite-3.1.2-3.i386.rpm
50:neon-0.24.7-6.i386.rpm
50:expat-1.95.8-6.i386.rpm
51:rpm-build-4.4.1-21.i386.rpm
51:rpm-libs-4.4.1-21.i386.rpm
51:rpm-4.4.1-21.i386.rpm
52:rpm-python-4.4.1-21.i386.rpm
53:python-urlgrabber-2.9.6-1.noarch.rpm
53:python-sqlite-1.1.6-1.i386.rpm
53:python-elementtree-1.2.6-4.i386.rpm
54:yum-2.3.2-7.noarch.rpm
EOF
            )
            ;;
        *)
            # No clue
            ;;
esac
}

print_rpms() {
    local rpm_list=$(echo "$RPMS" | sed "s/[[:digit:]]\+://")

    echo "RPMs for suite $RPMSUITE and arch $ARCH"
    for a in $rpm_list
    do
        echo " : $a"
    done
}

install_rpms() {
    install_by_pass $RPMS
}

suite_details() {
    for a in $RPMS
    do
        echo $a
    done
}
