158 lines
4.8 KiB
XML
158 lines
4.8 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<libosinfo version="0.0.1">
|
|
|
|
<install-script id='http://redhat.com/rhel/kickstart/desktop'>
|
|
<profile>desktop</profile>
|
|
<expected-filename>rhel.ks</expected-filename>
|
|
<config>
|
|
<param policy="optional" name="l10n-keyboard"/>
|
|
<param policy="optional" name="l10n-language"/>
|
|
<param policy="optional" name="l10n-timezone"/>
|
|
<param policy="optional" name="hostname"/>
|
|
<param policy="required" name="user-login"/>
|
|
<param policy="required" name="user-password"/>
|
|
<param policy="required" name="admin-password"/>
|
|
<param policy="optional" name="avatar-location"/>
|
|
<param policy="optional" name="avatar-disk"/>
|
|
<param policy="optional" name="target-disk"/>
|
|
<param policy="required" name="script-disk"/>
|
|
</config>
|
|
<injection-method>cdrom</injection-method>
|
|
<injection-method>disk</injection-method>
|
|
<injection-method>floppy</injection-method>
|
|
<avatar-format>
|
|
<mime-type>image/png</mime-type>
|
|
</avatar-format>
|
|
<template>
|
|
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
|
|
|
|
<xsl:output method="text"/>
|
|
|
|
<xsl:template name="target-disk">
|
|
<xsl:choose>
|
|
<xsl:when test="config/target-disk != ''">
|
|
<xsl:value-of select="config/target-disk"/>
|
|
</xsl:when>
|
|
<xsl:when test="os/version > 4">
|
|
|
|
<xsl:text>/dev/vda</xsl:text>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
|
|
<xsl:text>/dev/sda</xsl:text>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
</xsl:template>
|
|
|
|
<xsl:template name="script-disk">
|
|
<xsl:variable name="script-disk">
|
|
<xsl:value-of select="config/script-disk"/>
|
|
</xsl:variable>
|
|
<xsl:value-of select="substring-after($script-disk, '/dev/')"/>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="/command-line">
|
|
<xsl:text>ks=hd:</xsl:text>
|
|
<xsl:call-template name="script-disk"/>
|
|
<xsl:text>:/</xsl:text>
|
|
<xsl:value-of select="script/expected-filename"/>
|
|
</xsl:template>
|
|
|
|
<xsl:template match="/install-script-config">
|
|
# Install script for <xsl:value-of select="os/short-id"/> profile <xsl:value-of select="script/profile"/>
|
|
install
|
|
cdrom
|
|
keyboard us
|
|
lang <xsl:value-of select="config/l10n-language"/>
|
|
network --onboot yes --bootproto dhcp --noipv6 --hostname=<xsl:value-of select="config/hostname"/>
|
|
rootpw dummyPa55w0rd # Actual password set (or unset) in %post below
|
|
firewall --disabled
|
|
authconfig --enableshadow --enablemd5
|
|
timezone --utc <xsl:value-of select="config/l10n-timezone"/>
|
|
bootloader --location=mbr
|
|
zerombr
|
|
|
|
clearpart --all --drives=<xsl:call-template name="target-disk"/>
|
|
|
|
firstboot --disable
|
|
|
|
<xsl:choose>
|
|
<xsl:when test="os/version < 7">
|
|
part /boot --fstype ext4 --size=1024 --ondisk=<xsl:call-template name="target-disk"/>
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
part /boot --fstype ext4 --recommended --ondisk=<xsl:call-template name="target-disk"/>
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
part pv.2 --size=1 --grow --ondisk=<xsl:call-template name="target-disk"/>
|
|
volgroup VolGroup00 --pesize=32768 pv.2
|
|
logvol swap --fstype swap --name=LogVol01 --vgname=VolGroup00 --size=768 --grow --maxsize=1536
|
|
logvol / --fstype ext4 --name=LogVol00 --vgname=VolGroup00 --size=1024 --grow
|
|
reboot
|
|
|
|
%packages
|
|
@core
|
|
@x11
|
|
<xsl:choose>
|
|
<xsl:when test="os/version < 7">
|
|
@basic-desktop
|
|
@general-desktop
|
|
@desktop-platform
|
|
</xsl:when>
|
|
<xsl:otherwise>
|
|
@gnome-desktop
|
|
@multimedia
|
|
</xsl:otherwise>
|
|
</xsl:choose>
|
|
@internet-browser
|
|
@input-methods
|
|
|
|
qemu-guest-agent
|
|
|
|
%end
|
|
|
|
%post --erroronfail
|
|
|
|
useradd -G wheel <xsl:value-of select="config/user-login"/> # Add user
|
|
if test -z '<xsl:value-of select="config/user-password"/>'; then
|
|
passwd -d <xsl:value-of select="config/user-login"/> # Make user account passwordless
|
|
else
|
|
echo '<xsl:value-of select="config/user-password"/>' |passwd --stdin <xsl:value-of select="config/user-login"/>
|
|
fi
|
|
|
|
if test -z '<xsl:value-of select="config/admin-password"/>'; then
|
|
passwd -d root # Make root account passwordless
|
|
else
|
|
echo '<xsl:value-of select="config/admin-password"/>' |passwd --stdin root
|
|
fi
|
|
|
|
# Set user avatar
|
|
if test -n '<xsl:value-of select="config/avatar-location"/>'; then
|
|
mkdir /mnt/unattended-media
|
|
mount <xsl:value-of select='config/avatar-disk'/> /mnt/unattended-media
|
|
cp /mnt/unattended-media<xsl:value-of select="config/avatar-location"/> /home/<xsl:value-of select="config/user-login"/>/.face
|
|
umount /mnt/unattended-media
|
|
fi
|
|
|
|
# Enable autologin
|
|
echo "[daemon]
|
|
AutomaticLoginEnable=true
|
|
AutomaticLogin=<xsl:value-of select="config/user-login"/>
|
|
|
|
[security]
|
|
|
|
[xdmcp]
|
|
|
|
[greeter]
|
|
|
|
[chooser]
|
|
|
|
[debug]
|
|
" > /etc/gdm/custom.conf
|
|
|
|
%end
|
|
</xsl:template>
|
|
</xsl:stylesheet>
|
|
</template>
|
|
</install-script>
|
|
</libosinfo> |