Subversion Repositories ALCASAR

Rev

Rev 2946 | Rev 2950 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log

Rev 2946 Rev 2947
1
#!/bin/bash
1
#!/bin/bash
2
#
2
#
3
# Build Mageiar (Mageia + ALCASAR) ISO file
3
# Build Mageiar (Mageia + ALCASAR) ISO file
4
# Authors: Hamza ESSAYEGH (Querdos) - Rexy - Laurent Roux - Aurelien Dubois - Pierre Rivault
4
# Authors: Hamza ESSAYEGH (Querdos) - Rexy - Laurent Roux - Aurelien Dubois - Pierre Rivault
5
#
5
#
6
####################################
6
####################################
7
###### Variables & functions  ######
7
###### Variables & functions  ######
8
################################################################################
8
################################################################################
9
 
9
 
10
CURRENT_DIR="$(readlink -f "$(dirname $0)")"
10
CURRENT_DIR="$(readlink -f "$(dirname $0)")"
11
LOG_FILE="$CURRENT_DIR/build-image.log"
11
LOG_FILE="$CURRENT_DIR/build-image.log"
12
RESSOURCES="$CURRENT_DIR/ressources"
12
RESSOURCES="$CURRENT_DIR/ressources"
13
 
13
 
14
# Print the given error message and exit 1
14
# Print the given error message and exit 1
15
function errorExit()
15
function errorExit()
16
{
16
{
17
    tput bold
17
    tput bold
18
    echo -e "ERROR : $1 \nAborting\n" >&2
18
    echo -e "ERROR : $1 \nAborting\n" >&2
19
    echo "$1" > "$LOG_FILE"
19
    echo "$1" > "$LOG_FILE"
20
    tput sgr0
20
    tput sgr0
21
    exit 1
21
    exit 1
22
}
22
}
23
#-------------------------------------------------------------------------------
23
#-------------------------------------------------------------------------------
24
# Print progress bar. $1 is a multiple of five
24
# Print progress bar. $1 is a multiple of five
25
function printProgress()
25
function printProgress()
26
{
26
{
27
    local a
27
    local a
28
    let "a = $1 / 5"
28
    let "a = $1 / 5"
29
    let "b = 25 - $a"
29
    let "b = 25 - $a"
30
    progressStr=$(printf "%${a}s")
30
    progressStr=$(printf "%${a}s")
31
    progressStrBlanks=$(printf "%${b}s")
31
    progressStrBlanks=$(printf "%${b}s")
32
    echo -en "Downloading...$1% [${progressStr// /#}${progressStrBlanks// / }]\r"
32
    echo -en "Downloading...$1% [${progressStr// /#}${progressStrBlanks// / }]\r"
33
}
33
}
34
#-------------------------------------------------------------------------------
34
#-------------------------------------------------------------------------------
35
function printBold()
35
function printBold()
36
{
36
{
37
    tput bold 2>/dev/null
37
    tput bold 2>/dev/null
38
    echo $1
38
    echo $1
39
    tput sgr0 2>/dev/null
39
    tput sgr0 2>/dev/null
40
}
40
}
41
 
41
 
42
ISO_IN=`ls $RESSOURCES | grep '^Mageia.*iso'`
42
ISO_IN=`ls $RESSOURCES | grep '^Mageia.*iso'`
43
MAGEIA_VERSION=`echo $ISO_IN|cut -d"-" -f2`
43
MAGEIA_VERSION=`echo $ISO_IN|cut -d"-" -f2`
44
ARCH=`echo $ISO_IN |cut -d"-" -f3|cut -d"." -f1`
44
ARCH=`echo $ISO_IN |cut -d"-" -f3|cut -d"." -f1`
45
ALCASAR_TARBALL=`ls $RESSOURCES| grep '^alcasar.*gz'`
45
ALCASAR_TARBALL=`ls $RESSOURCES| grep '^alcasar.*gz'`
46
ALCASAR_EXTRACTED_DIR=$(echo $ALCASAR_TARBALL | rev | cut -d '.' -f 3- | rev)
46
ALCASAR_EXTRACTED_DIR=$(echo $ALCASAR_TARBALL | rev | cut -d '.' -f 3- | rev)
47
ALCASAR_VERSION=`echo $ALCASAR_EXTRACTED_DIR | cut -d"-" -f2`
47
ALCASAR_VERSION=`echo $ALCASAR_EXTRACTED_DIR | cut -d"-" -f2`
48
TMP_DIR=/var/tmp
48
TMP_DIR=/var/tmp
49
MAGEIA_NEW_DIR=$TMP_DIR/mageia_new
49
MAGEIA_NEW_DIR=$TMP_DIR/mageia_new
50
MAGEIA_OFFICIAL_DIR=$TMP_DIR/mageia_official
50
MAGEIA_OFFICIAL_DIR=$TMP_DIR/mageia_official
51
coreDir=${MAGEIA_OFFICIAL_DIR}/${ARCH}/media/core
51
coreDir=${MAGEIA_OFFICIAL_DIR}/${ARCH}/media/core
52
nonFreeDir=${MAGEIA_OFFICIAL_DIR}/${ARCH}/media/nonfree
52
nonFreeDir=${MAGEIA_OFFICIAL_DIR}/${ARCH}/media/nonfree
53
mediaDirNew=${MAGEIA_NEW_DIR}/${ARCH}/media
53
mediaDirNew=${MAGEIA_NEW_DIR}/${ARCH}/media
54
coreDirNew=${MAGEIA_NEW_DIR}/${ARCH}/media/core/
54
coreDirNew=${MAGEIA_NEW_DIR}/${ARCH}/media/core/
55
nonFreeDirNew=${MAGEIA_NEW_DIR}/${ARCH}/media/nonfree
55
nonFreeDirNew=${MAGEIA_NEW_DIR}/${ARCH}/media/nonfree
56
urpmi_cache=/var/cache/urpmi/rpms
56
urpmi_cache=/var/cache/urpmi/rpms
57
 
57
 
58
# Drake installer
58
# Drake installer
59
INSTALLER_DIR="${MAGEIA_NEW_DIR}/${ARCH}/install/alcasar"
59
INSTALLER_DIR="${MAGEIA_NEW_DIR}/${ARCH}/install/alcasar"
60
EFI_GRUB_CFG="${MAGEIA_NEW_DIR}/boot/grub2/grub.cfg"
60
EFI_GRUB_CFG="${MAGEIA_NEW_DIR}/boot/grub2/grub.cfg"
61
ADVERT_DIR="${MAGEIA_NEW_DIR}/${ARCH}/install/extra/advertising"
61
ADVERT_DIR="${MAGEIA_NEW_DIR}/${ARCH}/install/extra/advertising"
62
AUTO_INSTALL_CFG=$TMP_DIR/auto_inst.cfg.pl
62
AUTO_INSTALL_CFG=$TMP_DIR/auto_inst.cfg.pl
63
 
63
 
64
# RPMs needed during an install stage
64
# RPMs needed during an install stage
65
BASE_RPM_LIST="acpi acpid alsa-utils aoss arp-scan basesystem bash-completion coreutils-doc cpupower curl dhcp-client dmraid dnf dnf-plugins-core dosfstools dracut drakx-net-text gpm grub2 grub2-efi grub2-mageia-theme harddrake hdparm hexedit info ldetect lftp lib64alsa-plugins lib64glib-networking-gnutls locales-en locales-fr lsof lvm2 mageia-theme-Default man-db man-pages microcode microcode_ctl mtools ntfs-3g numlock os-prober p11-kit perl-Hal-Cdroms plymouth procmail python3 python3-dbus radeon-firmware ralink-firmware rtlwifi-firmware sharutils shorewall-ipv6 strace sysfsutils tmpwatch tree vim-minimal vnstat xdg-user-dirs-gtk sudo socat mandi mandi-ifw"
65
BASE_RPM_LIST="acpi acpid alsa-utils aoss arp-scan basesystem bash-completion coreutils-doc cpupower curl dhcp-client dmraid dnf dnf-plugins-core dosfstools dracut drakx-net-text gpm grub2 grub2-efi grub2-mageia-theme harddrake hdparm hexedit info ldetect lftp lib64alsa-plugins lib64glib-networking-gnutls locales-en locales-fr lsof lvm2 mageia-theme-Default man-db man-pages microcode microcode_ctl mtools ntfs-3g numlock os-prober p11-kit perl-Hal-Cdroms plymouth procmail python3 python3-dbus radeon-firmware ralink-firmware rtlwifi-firmware sharutils shorewall-ipv6 strace sysfsutils tmpwatch tree vim-minimal vnstat xdg-user-dirs-gtk sudo socat mandi mandi-ifw"
66
ISO_RPM_LIST="cdrkit-genisoimage xorriso rpmtools syslinux"
66
ISO_RPM_LIST="cdrkit-genisoimage xorriso rpmtools syslinux"
67
 
67
 
68
#######################
68
#######################
69
######    Main    ######
69
######    Main    ######
70
################################################################################
70
################################################################################
71
 
71
 
72
# Some checks
72
# Some checks
73
[[ $(whoami) != 'root' ]] && errorExit 'Please run as root'
73
[[ $(whoami) != 'root' ]] && errorExit 'Please run as root'
74
[[ $ISO_IN == "" ]] && errorExit "No Mageia iso file in $RESSOURCES"
74
[[ $ISO_IN == "" ]] && errorExit "No Mageia iso file in $RESSOURCES"
75
[[ ! -f "$RESSOURCES/auto_inst.cfg.pl_template" ]] && errorExit "No auto_inst.cfg.pl_template file in $RESSOURCES"
75
[[ ! -f "$RESSOURCES/auto_inst.cfg.pl_template" ]] && errorExit "No auto_inst.cfg.pl_template file in $RESSOURCES"
76
[[ $ALCASAR_TARBALL == "" ]] && errorExit "No ALCASAR tarball file in $RESSOURCES"
76
[[ $ALCASAR_TARBALL == "" ]] && errorExit "No ALCASAR tarball file in $RESSOURCES"
77
 
77
 
78
for directory in $MAGEIA_NEW_DIR $MAGEIA_OFFICIAL_DIR
78
for directory in $MAGEIA_NEW_DIR $MAGEIA_OFFICIAL_DIR
79
do
79
do
80
	[ -d $directory ] || mkdir -p $directory
80
	[ -d $directory ] || mkdir -p $directory
81
done
81
done
82
printBold "Mageiar will be build with Mageia-$MAGEIA_VERSION-$ARCH and $ALCASAR_EXTRACTED_DIR" 
82
printBold "Mageiar will be build with Mageia-$MAGEIA_VERSION-$ARCH and $ALCASAR_EXTRACTED_DIR" 
83
# remove some rpm (if this script has been already run)
83
# Update the system. Keep only RPMs needed to create ALCASAR rpmslist
-
 
84
urpmi --auto-update --auto 2>/dev/null
84
urpme $ISO_RPM_LIST --auto-orphans --force 2>/dev/null
85
urpme $ISO_RPM_LIST --auto-orphans --force 2>/dev/null
85
urpmi $BASE_RPM_LIST --force --auto 2>/dev/null
86
urpmi $BASE_RPM_LIST --force --auto 2>/dev/null
86
# Retrieve list of installed RPM (without those that will be installed with the alcasar install script)
87
# Retrieve list of installed RPM (without those that will be installed with the alcasar install script)
87
RPM_LIST="$(rpm -qa --queryformat "%{NAME}\n"| grep -Ev 'coova-chilli|gammu|lib64gammu8|ipt-netflow|nfdump|wkhtmltopdf' | tr '\n' ' ')"
88
RPM_LIST="$(rpm -qa --queryformat "%{NAME}\n"| grep -Ev 'coova-chilli|gammu|lib64gammu8|ipt-netflow|nfdump|wkhtmltopdf' | tr '\n' ' ')"
88
 
89
 
89
# Insert list into AUTO_INSTALL_CFG
90
# Insert list into AUTO_INSTALL_CFG
90
formattedList=$(echo $RPM_LIST | sed "s/[^ ]*/\'\0\'/g" | sed "s/ /,\n/g")
91
formattedList=$(echo $RPM_LIST | sed "s/[^ ]*/\'\0\'/g" | sed "s/ /,\n/g")
91
cp -f $RESSOURCES/auto_inst.cfg.pl_template $AUTO_INSTALL_CFG
92
cp -f $RESSOURCES/auto_inst.cfg.pl_template $AUTO_INSTALL_CFG
92
insertLineNumber=$(grep -n "'default_packages' => " "$AUTO_INSTALL_CFG" | cut -d ':' -f1)
93
insertLineNumber=$(grep -n "'default_packages' => " "$AUTO_INSTALL_CFG" | cut -d ':' -f1)
93
fileTop=$(head -n "+$insertLineNumber" "$AUTO_INSTALL_CFG")
94
fileTop=$(head -n "+$insertLineNumber" "$AUTO_INSTALL_CFG")
94
fileBottom=$(tail -n "+$insertLineNumber" "$AUTO_INSTALL_CFG" | tail -n +2)
95
fileBottom=$(tail -n "+$insertLineNumber" "$AUTO_INSTALL_CFG" | tail -n +2)
95
cat /dev/null > "$AUTO_INSTALL_CFG"
96
cat /dev/null > "$AUTO_INSTALL_CFG"
96
echo "$fileTop" > "$AUTO_INSTALL_CFG"
97
echo "$fileTop" > "$AUTO_INSTALL_CFG"
97
echo "$formattedList" >> "$AUTO_INSTALL_CFG"
98
echo "$formattedList" >> "$AUTO_INSTALL_CFG"
98
echo "$fileBottom" >> "$AUTO_INSTALL_CFG"
99
echo "$fileBottom" >> "$AUTO_INSTALL_CFG"
99
 
100
 
100
# Installing tools to create the iso file
101
# Installing tools to create the iso file
101
printBold "Installing ISO building tools"
102
printBold "Installing ISO building tools"
102
#dnf install -y $ISO_RPM_LIST || errorExit "could not install necessary packages"
103
#dnf install -y $ISO_RPM_LIST || errorExit "could not install necessary packages"
103
urpmi $ISO_RPM_LIST --force|| errorExit "could not install necessary packages"
104
urpmi $ISO_RPM_LIST --force|| errorExit "could not install necessary packages"
104
 
105
 
105
# Mounting the ISO image
106
# Mounting the ISO image
106
printBold "Mounting the image"
107
printBold "Mounting the image"
107
if [ `mount |grep $MAGEIA_OFFICIAL_DIR | wc -l` -eq 0 ]; then # if not already mounted
108
if [ `mount |grep $MAGEIA_OFFICIAL_DIR | wc -l` -eq 0 ]; then # if not already mounted
108
	mount -o ro,loop $RESSOURCES/$ISO_IN $MAGEIA_OFFICIAL_DIR || errorExit "failed mounting $ISO_IN."
109
	mount -o ro,loop $RESSOURCES/$ISO_IN $MAGEIA_OFFICIAL_DIR || errorExit "failed mounting $ISO_IN."
109
fi
110
fi
110
sleep 1 # wait for mounting process
111
sleep 1 # wait for mounting process
111
[ -d ${MAGEIA_OFFICIAL_DIR}/x86_64 ] || umount $MAGEIA_OFFICIAL_DIR || errorExit "The ISO file isn't in the target architecture ($ARCH)" 
112
[ -d ${MAGEIA_OFFICIAL_DIR}/x86_64 ] || umount $MAGEIA_OFFICIAL_DIR || errorExit "The ISO file isn't in the target architecture ($ARCH)" 
112
 
113
 
113
# Copying main files except core and nonfree directories
114
# Copying main files except core and nonfree directories
114
echo "Extracting base image..."
115
echo "Extracting base image..."
115
cd $MAGEIA_OFFICIAL_DIR && \
116
cd $MAGEIA_OFFICIAL_DIR && \
116
    tar cf - --exclude=${ARCH}/media . | (cd $MAGEIA_NEW_DIR && tar xf - ) && cd "${CURRENT_DIR}"
117
    tar cf - --exclude=${ARCH}/media . | (cd $MAGEIA_NEW_DIR && tar xf - ) && cd "${CURRENT_DIR}"
117
 
118
 
118
# Creating new directories core and nonfree and dir for alcasar stufs
119
# Creating new directories core and nonfree and dir for alcasar stufs
119
mkdir -p ${MAGEIA_NEW_DIR}/${ARCH}/{media/{core,nonfree},install/alcasar}
120
mkdir -p ${MAGEIA_NEW_DIR}/${ARCH}/{media/{core,nonfree},install/alcasar}
120
 
121
 
121
# Adding Alcasar image advert to the installer
122
# Adding Alcasar image advert to the installer
122
cp -f $RESSOURCES/install_slideshow/* "$ADVERT_DIR" || errorExit "could not copy custom slideshow to $ADVERT_DIR"
123
cp -f $RESSOURCES/install_slideshow/* "$ADVERT_DIR" || errorExit "could not copy custom slideshow to $ADVERT_DIR"
123
 
124
 
124
# Create the installed RPM list excluding those brought with alcasar archive (they aren't in repository)
125
# Create the installed RPM list excluding those brought with alcasar archive (they aren't in repository)
125
nbInstalled=$(echo $RPM_LIST | wc -w)
126
nbInstalled=$(echo $RPM_LIST | wc -w)
126
total=`echo $RPM_LIST | wc -w`
127
total=`echo $RPM_LIST | wc -w`
127
count=0
128
count=0
128
# Copying the RPM in core and clearing the plop.idx file
129
# Copying the RPM in core and clearing the plop.idx file
129
echo "Copying $total RPMS in ISO ..."
130
echo "Copying $total RPMS in ISO ..."
130
for rpm in ${RPM_LIST}; do
131
for rpm in ${RPM_LIST}; do
131
	let percent="${count} * 100 / ${total}"
132
	let percent="${count} * 100 / ${total}"
132
	full_rpm_name=`rpm -q $rpm`
133
	full_rpm_name=`rpm -q $rpm`
133
	if [ `ls $urpmi_cache/* | grep $full_rpm_name | wc -l` -eq 0 ] ; then  # rpm not already downloaded
134
	if [ `ls $urpmi_cache/$full_rpm_name* 2>/dev/null | wc -l` -ne 1 ] ; then  # rpm isn't already in $urpmi_cache
-
 
135
		if [ `ls $coreDir/$full_rpm_name* 2>/dev/null | wc -l` -eq 1 ] ; then  # rpm is in official ISO file
-
 
136
			cp $coreDir/$full_rpm_name* $urpmi_cache/
-
 
137
		else # rpm must be downloaded
134
		# dnf download --downloaddir $coreDirNew $rpm 1> /dev/null || errorExit "could not download $rpm"
138
			# dnf download --downloaddir $coreDirNew $rpm 1> /dev/null || errorExit "could not download $rpm"
135
		urpmi --no-install --replacepkgs -q $rpm 2> /dev/null || urpmi --no-install -q --force $rpm 2> /dev/null || echo "could not download $rpm"
139
			urpmi --no-install --replacepkgs -q $rpm 2> /dev/null || urpmi --no-install -q --force $rpm 2> /dev/null || echo "could not download $rpm"
-
 
140
		fi
136
	fi
141
	fi
137
	printProgress ${percent}
142
	printProgress ${percent}
138
	count=$(expr ${count} + 1)
143
	count=$(expr ${count} + 1)
139
done
144
done
140
printBold "$count RPMs copied"
145
printBold "$count RPMs copied"
141
# Copying the Alcasar tarball & automatic install option into the ISO
146
# Copying the Alcasar tarball & automatic install option into the ISO
142
mkdir -p $INSTALLER_DIR || errorExit "could not create directory $INSTALLER_DIR"
147
mkdir -p $INSTALLER_DIR || errorExit "could not create directory $INSTALLER_DIR"
143
cp $RESSOURCES/$ALCASAR_TARBALL $INSTALLER_DIR || errorExit "could not copy $RESSOURCES/$ALCASAR_TARBALL to $INSTALLER_DIR"
148
cp $RESSOURCES/$ALCASAR_TARBALL $INSTALLER_DIR || errorExit "could not copy $RESSOURCES/$ALCASAR_TARBALL to $INSTALLER_DIR"
144
cp $AUTO_INSTALL_CFG $INSTALLER_DIR || errorExit "could not copy $AUTO_INSTALL_CFG to $INSTALLER_DIR"
149
cp $AUTO_INSTALL_CFG $INSTALLER_DIR || errorExit "could not copy $AUTO_INSTALL_CFG to $INSTALLER_DIR"
145
 
150
 
146
mv $urpmi_cache/*.rpm $coreDirNew
151
mv $urpmi_cache/*.rpm $coreDirNew
147
# Generating media info for core
152
# Generating media info for core
148
echo "Generating media_info for core..."
153
echo "Generating media_info for core..."
149
genhdlist2 ${coreDirNew} --allow-empty-media --quiet
154
genhdlist2 ${coreDirNew} --allow-empty-media --quiet
150
echo "Generating media_info for nonfree..."
155
echo "Generating media_info for nonfree..."
151
genhdlist2 ${nonFreeDirNew} --allow-empty-media --quiet
156
genhdlist2 ${nonFreeDirNew} --allow-empty-media --quiet
152
 
157
 
153
# Puting pubkeys in media_info
158
# Puting pubkeys in media_info
154
cp ${coreDir}/media_info/pubkey ${coreDirNew}/media_info/
159
cp ${coreDir}/media_info/pubkey ${coreDirNew}/media_info/
155
cp ${nonFreeDir}/media_info/pubkey ${nonFreeDirNew}/media_info/
160
cp ${nonFreeDir}/media_info/pubkey ${nonFreeDirNew}/media_info/
156
 
161
 
157
# Retrieving media.cfg & compssUsers.pl depending on the arch
162
# Retrieving media.cfg & compssUsers.pl depending on the arch
158
mkdir ${MAGEIA_NEW_DIR}/${ARCH}/media/media_info
163
mkdir ${MAGEIA_NEW_DIR}/${ARCH}/media/media_info
159
cp ${MAGEIA_OFFICIAL_DIR}/${ARCH}/media/media_info/compssUsers.pl ${MAGEIA_NEW_DIR}/${ARCH}/media/media_info/compssUsers.pl
164
cp ${MAGEIA_OFFICIAL_DIR}/${ARCH}/media/media_info/compssUsers.pl ${MAGEIA_NEW_DIR}/${ARCH}/media/media_info/compssUsers.pl
160
cp ${MAGEIA_OFFICIAL_DIR}/${ARCH}/media/media_info/media.cfg ${MAGEIA_NEW_DIR}/${ARCH}/media/media_info/media.cfg
165
cp ${MAGEIA_OFFICIAL_DIR}/${ARCH}/media/media_info/media.cfg ${MAGEIA_NEW_DIR}/${ARCH}/media/media_info/media.cfg
161
 
166
 
162
# Specify install configuration
167
# Specify install configuration
163
#sed -i -e 's*rdz*rdz kickstart=/tmp/media/x86_64/install/alcasar/auto_inst.cfg.pl*g'  ${MAGEIA_NEW_DIR}/isolinux/isolinux.cfg
168
#sed -i -e 's*rdz*rdz kickstart=/tmp/media/x86_64/install/alcasar/auto_inst.cfg.pl*g'  ${MAGEIA_NEW_DIR}/isolinux/isolinux.cfg
164
sed -i -e 's*noiswmd*noiswmd kickstart=/tmp/media/x86_64/install/alcasar/auto_inst.cfg.pl*g'  $EFI_GRUB_CFG 
169
sed -i -e 's*noiswmd*noiswmd kickstart=/tmp/media/x86_64/install/alcasar/auto_inst.cfg.pl*g'  $EFI_GRUB_CFG 
165
 
170
 
166
# Generating distr
171
# Generating distr
167
echo "Generating mirror tree..."
172
echo "Generating mirror tree..."
168
gendistrib -s ${MAGEIA_NEW_DIR}/${ARCH}
173
gendistrib -s ${MAGEIA_NEW_DIR}/${ARCH}
169
 
174
 
170
# Creating the new iso file
175
# Creating the new iso file
171
echo "Creating the isofile..."
176
echo "Creating the isofile..."
172
newIsoName=Mageia-$MAGEIA_VERSION-${ARCH}-Alcasar-$ALCASAR_VERSION.iso
177
newIsoName=Mageia-$MAGEIA_VERSION-${ARCH}-Alcasar-$ALCASAR_VERSION.iso
173
 
178
 
174
# Generating the iso file
179
# Generating the iso file
175
# Parameters for xorriso found using the following command on the original mageia iso
180
# Parameters for xorriso found using the following command on the original mageia iso
176
# xorriso -indev Mageia-7-x86_64.iso -report_el_torito as_mkisofs
181
# xorriso -indev Mageia-7-x86_64.iso -report_el_torito as_mkisofs
177
cd ${MAGEIA_NEW_DIR} && xorriso -as mkisofs \
182
cd ${MAGEIA_NEW_DIR} && xorriso -as mkisofs \
178
	-V 'Mageia-7.1-x86_64' \
183
	-V 'Mageia-7.1-x86_64' \
179
	-partition_cyl_align off \
184
	-partition_cyl_align off \
180
	-partition_offset 0 \
185
	-partition_offset 0 \
181
	--mbr-force-bootable \
186
	--mbr-force-bootable \
182
	-iso_mbr_part_type 0x00 \
187
	-iso_mbr_part_type 0x00 \
183
	-c 'boot.catalog' \
188
	-c 'boot.catalog' \
184
	-b 'boot/grub2/eltorito.img' \
189
	-b 'boot/grub2/eltorito.img' \
185
	-no-emul-boot \
190
	-no-emul-boot \
186
	-boot-load-size 4 \
191
	-boot-load-size 4 \
187
	-boot-info-table \
192
	-boot-info-table \
188
	--grub2-boot-info \
193
	--grub2-boot-info \
189
	-eltorito-alt-boot \
194
	-eltorito-alt-boot \
190
	-boot-load-size 8192 \
195
	-boot-load-size 8192 \
191
	-o ${TMP_DIR}/${newIsoName} .
196
	-o ${TMP_DIR}/${newIsoName} .
192
 
197
 
193
# Unmounting & Removing temporary dir
198
# Unmounting & Removing temporary dir
194
echo "Umounting..."
199
echo "Umounting..."
195
umount $MAGEIA_OFFICIAL_DIR
200
umount $MAGEIA_OFFICIAL_DIR
196
mv $coreDirNew/*.rpm $urpmi_cache
201
mv $coreDirNew/*.rpm $urpmi_cache
197
for directory in $MAGEIA_NEW_DIR $MAGEIA_OFFICIAL_DIR
202
for directory in $MAGEIA_NEW_DIR $MAGEIA_OFFICIAL_DIR
198
do
203
do
199
	[ -d $directory ] && rm -rf $directory
204
	[ -d $directory ] && rm -rf $directory
200
done
205
done
201
rm -f "$AUTO_INSTALL_CFG"
206
rm -f "$AUTO_INSTALL_CFG"
202
echo "All RPM are always in '/var/cache/urpmi/rpms'Done. Remove them if nedded."
207
echo "All RPM are always in $urpmi_cache. Remove them if nedded."
-
 
208
echo "The ISO file is here : ${TMP_DIR}/${newIsoName}"
203
 
209