#
# Template for RHEL3 and derivatives.
#
# Note! RHEL3 kickstart typically just hangs if it finds something it doesn't like.
#       So, all changes to this file must be tested!
#
# N.B! AHCI is not supported by RHEL3
#

# Use text mode install
text

# Install OS instead of upgrade
install

# System language
lang @@VBOX_INSERT_LOCALE@@.UTF-8

# rhel4+rhel3 needs:
langsupport --default @@VBOX_INSERT_LOCALE@@.UTF-8 @@VBOX_INSERT_LOCALE@@.UTF-8

# Use CDROM installation media
cdrom

# System authorization information (rhel5: no --passalgo=sha512)
#auth  --useshadow
authconfig --enableshadow --enablemd5

# Root password (rhel5 not --plaintext groks)
rootpw @@VBOX_INSERT_ROOT_PASSWORD_SH@@

# Network information
# rhel3: doesn't like --onboot=on.
network  --bootproto=dhcp --device=eth0 --hostname=@@VBOX_INSERT_HOSTNAME_FQDN_SH@@

# Firewall configuration
firewall --disabled

# System keyboard
keyboard us

# rhel3 wants mouse config.
mouse genericwheelps/2 --device psaux

@@VBOX_COND_IS_NOT_MINIMAL_INSTALLATION@@
# rhel3 wants xconfig.
# TODO: Dunno VRAM size, is that a problem? --videoram 32768
xconfig --card "VESA driver (generic)" --hsync 31.5-37.9 --vsync 50-70 --resolution 800x600 --depth 24 --startxonboot  --defaultdesktop gnome
@@VBOX_COND_END@@

# SELinux configuration
# rhel3: disable selinux
# selinux --enforcing

# Installation logging level
#rhel4 does not grok: logging --level=info

# System timezone
timezone@@VBOX_COND_IS_RTC_USING_UTC@@ --utc@@VBOX_COND_END@@ @@VBOX_INSERT_TIME_ZONE_UX@@

# System bootloader configuration
bootloader --location=mbr --append="nomodeset crashkernel=auto rhgb quiet"
zerombr

# Partition clearing information
clearpart --all --initlabel

# Disk partitioning information (rhel5: no ext4, so use ext3)
part / --fstype ext3 --size 6000 --grow --asprimary
part swap --size 1024

#Initial user
#rhel4 does not grok, done in welcome sequence: user --name=@@VBOX_INSERT_USER_LOGIN_SH@@ --password=@@VBOX_INSERT_USER_PASSWORD_SH@@

# Reboot after installation
# Note! Not sure exctly when the --eject option was added. Need to find out an make it optional.
reboot --eject

# Packages.  We currently ignore missing packages/groups here to keep things simpler.
%packages --ignoremissing
grub
kernel
@ base
@ core
@@VBOX_COND_IS_NOT_MINIMAL_INSTALLATION@@
@ admin-tools
@ development
@ editors
@ text-internet
@ base-x
@ graphics
@ basic-desktop
@ general-desktop
@ gnome-desktop
@ desktop-platform
@ fonts
@ graphical-admin-tools
@ graphical-internet
@ remote-desktop-clients
@ sound-and-video
@ x11
@@VBOX_COND_END@@

# Prepare building the additions kernel module, try get what we can from the cdrom as it may be impossible
# to install anything from the post script (rhel3 seems to need kernel-sources):
kernel-source
kernel-headers
kernel-devel
glibc-devel
glibc-headers
gcc
dkms
make
bzip2
perl
# %end - rhel5 does not like this.


# Pre install script for mounting the cdrom, to make sure it cannot be ejcted.
# See https://bugzilla.redhat.com/show_bug.cgi?id=239002
%pre
mkdir -p /tmp/vboxcdrom
mount -t iso9660 /tmp/cdrom /tmp/vboxcdrom || mount -t iso9660 /dev/hdc /tmp/vboxcdrom || mount -t iso9660 /dev/scd0 /tmp/vboxcdrom || mount -t iso9660 /dev/sdb /tmp/vboxcdrom
# %end - rhel5 does not like this.


# Post install happens in a different script.
# Note! We mount the CDROM explictily here since the location differs between fedora 26 to rhel5
#       and apparently there isn't any way to be certain that anaconda didn't unmount it already.
# rhel5: There is not /bin/bash, so use /bin/sh
# rhel5: There is no /dev/cdrom, so try use /dev/hdc and /dev/sdb.
# rhel3: no --log option
%post --nochroot
df -h
cp /tmp/vboxcdrom/vboxpostinstall.sh /mnt/sysimage/root/vboxpostinstall.sh
chmod a+x /mnt/sysimage/root/vboxpostinstall.sh
/bin/sh /mnt/sysimage/root/vboxpostinstall.sh --rhel
umount /tmp/vboxcdrom
rmdir /tmp/vboxcdrom
# %end - rhel5 does not like this.

