Index: ipk/source.sh4/swapemus_mgcamd_1_35/CONTROL/postinst
===================================================================
--- ipk/source.sh4/swapemus_mgcamd_1_35/CONTROL/postinst	(revision 11789)
+++ ipk/source.sh4/swapemus_mgcamd_1_35/CONTROL/postinst	(revision 12781)
@@ -71,6 +71,12 @@
 
 echo "successfully installed"
-echo "syncing disk"
-
-sync
+link=`readlink /var/swap`
+if [ `df | grep /dev/mtdblock | grep mnt | sed 's/ \+/ /g' | cut -d ' ' -f4 | head -n1 | wc -l` -eq 1 ] && [ $link = "/mnt/swapextensions" ]; then
+	SPACE=`df | grep /dev/mtdblock | grep mnt | sed 's/ \+/ /g' | cut -d ' ' -f4 | head -n1`
+	FREE=`expr $SPACE - 100`
+	echo new freespace size $FREE kb
+else
+	echo "syncing disk"
+	sync
+fi
 exit 0
Index: ipk/source.sh4/swapemus_mgcamd_1_35/CONTROL/postrm
===================================================================
--- ipk/source.sh4/swapemus_mgcamd_1_35/CONTROL/postrm	(revision 11789)
+++ ipk/source.sh4/swapemus_mgcamd_1_35/CONTROL/postrm	(revision 12781)
@@ -5,5 +5,12 @@
 
 echo "successfully removed"
-echo "syncing disk"
-sync
+link=`readlink /var/swap`
+if [ `df | grep /dev/mtdblock | grep mnt | sed 's/ \+/ /g' | cut -d ' ' -f4 | head -n1 | wc -l` -eq 1 ] && [ $link = "/mnt/swapextensions" ]; then
+	SPACE=`df | grep /dev/mtdblock | grep mnt | sed 's/ \+/ /g' | cut -d ' ' -f4 | head -n1`
+	FREE=`expr $SPACE - 100`
+	echo new freespace size $FREE kb
+else
+	echo "syncing disk"
+	sync
+fi
 exit 0
Index: ipk/source.sh4/swapemus_mgcamd_1_35/CONTROL/preinst
===================================================================
--- ipk/source.sh4/swapemus_mgcamd_1_35/CONTROL/preinst	(revision 11789)
+++ ipk/source.sh4/swapemus_mgcamd_1_35/CONTROL/preinst	(revision 12781)
@@ -2,6 +2,4 @@
 #
 TMP=/tmp/.mgcamd
-echo "syncing disk"
-sync
 
 model=`cat /etc/model`
@@ -27,5 +25,22 @@
 echo "swapstick found...."
 echo "installing Mgcamd 1.35 to swapstick..."
-
+link=`readlink /var/swap`
+if [ `df | grep /dev/mtdblock | grep mnt | sed 's/ \+/ /g' | cut -d ' ' -f4 | head -n1 | wc -l` -eq 1 ] && [ $link = "/mnt/swapextensions" ]; then
+	SPACE=`df | grep /dev/mtdblock | grep mnt | sed 's/ \+/ /g' | cut -d ' ' -f4 | head -n1`
+	FREE=`expr $SPACE - 100`
+	SIZE=660
+	echo "checking freespace"
+	echo packege size $SIZE kb
+	echo freespace size $FREE kb
+	if  [ "$FREE" -lt "$SIZE" ]; then
+		echo "sorry no freespace left on device"
+		exit 1
+	else
+		echo ok		
+	fi
+else
+	echo "syncing disk"
+	sync
+fi
 buildgroup=`cat /etc/.buildgroup`
 echo "checking OS"	 
@@ -39,5 +54,3 @@
 fi
 
-sync
-
 exit 0
Index: ipk/source.sh4/swapemus_mgcamd_1_35/CONTROL/prerm
===================================================================
--- ipk/source.sh4/swapemus_mgcamd_1_35/CONTROL/prerm	(revision 11789)
+++ ipk/source.sh4/swapemus_mgcamd_1_35/CONTROL/prerm	(revision 12781)
@@ -1,5 +1,4 @@
 #!/bin/sh
 TMP=/tmp/.mgcamd
-echo "syncing disk"
 
 if [ ! -e /var/swap/keys/cccamd.list.mgcamd ]; then
@@ -37,6 +36,13 @@
 	rm /var/swap/keys/replace.list
 fi
-
-sync
+link=`readlink /var/swap`
+if [ `df | grep /dev/mtdblock | grep mnt | sed 's/ \+/ /g' | cut -d ' ' -f4 | head -n1 | wc -l` -eq 1 ] && [ $link = "/mnt/swapextensions" ]; then
+	SPACE=`df | grep /dev/mtdblock | grep mnt | sed 's/ \+/ /g' | cut -d ' ' -f4 | head -n1`
+	FREE=`expr $SPACE - 100`
+	echo new freespace size $FREE kb
+else
+	echo "syncing disk"
+	sync
+fi
 echo "Removing mgcamd 4736 from Swapstick"
 exit 0
