SVN: livecd/mklive/mklive

qwiat qwiat at pld-linux.org
Sat Jul 23 08:25:00 CEST 2011


Author: qwiat
Date: Sat Jul 23 08:24:59 2011
New Revision: 12265

Modified:
   livecd/mklive/mklive
Log:
- added support for pendrive


Modified: livecd/mklive/mklive
==============================================================================
--- livecd/mklive/mklive	(original)
+++ livecd/mklive/mklive	Sat Jul 23 08:24:59 2011
@@ -1,4 +1,9 @@
 #!/bin/bash
+#
+# This script will create LiveCD based on
+# PLD-Linux distribution
+#
+
 
 # check kernel release
 function get_src_kernel_rel 
@@ -13,7 +18,7 @@
 	for modname in $@
 	do
 		module_with_deps=$(grep -P "/$modname.ko(.gz)?:" $sys_source/lib/modules/$kernel_rel/modules.dep | sed -e s/:// )
-		[ -z  "$module_with_deps" ] && die "No entries found in modules.dep for $modname"
+		[ -z  "$module_with_deps" ] && module_with_deps=$modname && echo "No entries found in modules.dep for $modname"
 		for modpath in $module_with_deps
 		do
 			dstdir=$(dirname $tmp_initrd/lib/modules/$kernel_rel/$modpath)
@@ -102,7 +107,8 @@
 	[ ! -f $sys_source/lib/modules/$kernel_rel/modules.dep ] && echo "Running depmod..." && chroot $sys_source depmod $kernel_rel
 
 	echo "Copying kernel modules to initrd skeleton..."
-	copy_module loop cdrom crc16 crc-t10dif usbhid hid ehci-hcd uhci-hcd ohci-hcd xhci-hcd unionfs isofs squashfs usb-storage sr_mod
+	copy_module loop cdrom crc16 crc-t10dif unionfs isofs squashfs vfat 
+	copy_module usbhid hid ehci-hcd uhci-hcd ohci-hcd xhci-hcd usb-storage sr_mod uas scsi_dh sg sd_mod libata usb-libusual nls_iso8859-1 nls_cp437
 	copy_modules_dir kernel/drivers/ata kernel/drivers/scsi
 	[ -d $sys_source/lib/modules/$kernel_rel/kernel/fs/aufs ] && echo "found aufs module" && aufs_module_found=1 && copy_module aufs
 	echo "Copying firmware files to initrd skeleton..."
@@ -122,10 +128,9 @@
  	cp $sys_source/etc/ld.so.conf $tmp_initrd/etc
 	ldconfig -r $tmp_initrd
 	chown -R root:root $tmp_initrd/*
-
-	echo "Running cleanup..."
-	find $tmp_initrd -name \*~ -exec rm \{\} \;
-	find $tmp_initrd -name .svn -type d -exec rm -rf \{\} \; 2> /dev/null
+	echo "Writing $VOLID LABEL into: $volid_file"
+	echo "$VOLID" > $volid_file
+	make_cleanup $tmp_initrd
 
 	# bootsplash
 	if [ $bootsplash_arg -eq 1 ]; then
@@ -165,6 +170,13 @@
 	echo "  # mklive /my-sys-dir /my-live.iso --tpl=templates-my --lzma"
 
 }
+function make_cleanup
+{
+        echo "Running cleanup of $1..."
+        find $1 -name \*~ -exec rm \{\} \;
+        find $1 -name .svn -type d -exec rm -rf \{\} \; 2> /dev/null
+}
+
 
 ##### MAIN #####
 templatesDir=templates
@@ -204,12 +216,13 @@
 
 # read configuration from ~/.mkliverc
 [ -f ~/.mkliverc ] && . ~/.mkliverc
-[ -z "$VOLID" ] && VOLID="mkLive-Live-CD" # volid may not be empty
 
 # preparing temp dirs
 rm -rf /tmp/$0_tmp_*
+[ -z "$VOLID" ] && VOLID="mkLive-Live-CD" # default VOLID
 tmp_iso_root=$(mktemp -d /tmp/$(basename $0)_tmp_iso__XXXXXX)
 tmp_initrd=$(mktemp -d /tmp/$(basename $0)_tmp_initrd__XXXXXX)
+volid_file=$tmp_initrd/DEV_LABEL
 live_rootfs_archive=live_rootfs.sqsh
 kernel_rel=$(get_src_kernel_rel $1)
 [ $? -ne 0 ] && die "Kernel release not found: "$kernel_rel
@@ -240,24 +253,23 @@
 	[ ! "$anykey" = 'y' ] && die "Interrupted." || rm -f $dst_iso
 fi
 
-# creating temp live root
+# creating initrd: temp live root
 echo "Copying kernel and basic tools..."
 cp -r $mkroot/$templatesDir/isolinux $tmp_iso_root
-
 cp -r $mkroot/$templatesDir/boot $tmp_iso_root
 if [ -f $sys_source/boot/vmlinuz-desktop ]; then
        	cp $sys_source/boot/vmlinuz-desktop $tmp_iso_root/boot/vmlinuz
 elif [ -f $sys_source/boot/vmlinuz ]; then
        	cp $sys_source/boot/vmlinuz $tmp_iso_root/boot
 fi
-
-# create initrd
+make_cleanup $tmp_iso_root
+# create image
 create_initrd $tmp_iso_root/boot/initrd.img || die "Creating initrd image failed."
 
 # ceate live
 echo "Creating squashfs filesystem: $tmp_iso_root/$live_rootfs_archive..."
 mksquashfs  $sys_source $tmp_iso_root/$live_rootfs_archive -comp $squashfscompr > /dev/null || die "Creating live rootfs failed"
-echo "Creating ISO image: $dst_iso..."
+echo "Creating ISO image: $dst_iso ($VOLID)..."
 mkisofs -o $dst_iso --publisher "PLD Linux" -b isolinux/isolinux.bin -c isolinux/boot.cat \
 	-no-emul-boot -boot-load-size 4 -boot-info-table -l -R \
 	-A "$APPLICATION" -V "$VOLID" -p "$PREPARER" \


More information about the pld-cvs-commit mailing list