slitaz-tools annotate tinyutils/mountbox @ rev 226

netbox: simplify wifi tab, add firmware install
author Pascal Bellard <pascal.bellard@slitaz.org>
date Thu Jul 10 21:15:09 2008 +0000 (2008-07-10)
parents dbaa9c4f319c
children 5de884166be4
rev   line source
pankso@183 1 #!/bin/sh
pankso@6 2 #
pankso@183 3 # Gtkdialog box for the mount/umount commands. Part of SliTaz tools.
pankso@183 4 # libmountbox: /usr/lib/slitaz/libmountbox
pankso@6 5 #
pankso@183 6 # (C) 2008 - SliTaz GNU/Linux project.
pankso@183 7 #
pankso@183 8 VERSION=20080510
pankso@6 9
pankso@183 10 # Mountbox is only for root.
pankso@183 11 if test $(id -u) != 0 ; then
pankso@183 12 exec subox mountbox
pankso@183 13 exit 0
pankso@183 14 fi
pankso@6 15
pankso@183 16 # Commom mount point in /mnt
pankso@183 17 mkdir -p /mnt/harddisk
pankso@32 18
pankso@183 19 # Just basic help.
pankso@183 20 export HELP='
pankso@183 21 <window title="Mountbox - Help" icon-name="help">
pankso@183 22 <vbox>
pankso@183 23 <text use-markup="true" width-chars="56">
pankso@183 24 <label>"
pankso@183 25 <b>SliTaz Mountbox - Help</b>"
pankso@183 26 </label>
pankso@183 27 </text>
pankso@183 28
pankso@183 29 <frame English>
pankso@183 30 <text wrap="true" use-markup="true">
pankso@183 31 <label>
pankso@183 32 "Mountbox let you mount devices on mount points. Device
pankso@183 33 can be cdrom, flash key, USB disk or local HD partitions.
pankso@183 34 Mount points are generated from /media and /mnt.
pankso@183 35 "
pankso@183 36 </label>
pankso@183 37 </text>
pankso@183 38 </frame>
pankso@183 39 <frame Français>
pankso@183 40 <text wrap="true" use-markup="true">
pankso@183 41 <label>
pankso@183 42 "Mountbox permet de monter des périphériques (devices)
pankso@183 43 sur des points de montage. Un device peut être un cdrom,
pankso@183 44 une clé USB ou un disque dur local. La liste des points
pankso@183 45 de montage est généré depuis /media te /mnt.
pankso@183 46 "
pankso@183 47 </label>
pankso@183 48 </text>
pankso@183 49 </frame>
pankso@183 50
pankso@183 51 <hbox>
pankso@183 52 <button ok>
pankso@183 53 <action type="closewindow">HELP</action>
pankso@183 54 </button>
pankso@183 55 </hbox>
pankso@183 56 </vbox>
pankso@183 57 </window>'
pankso@79 58
pankso@6 59 # Mount and umount buttons with fiel for devive and mount point.
pankso@183 60 MAIN_DIALOG='
pankso@38 61 <window title="Mountbox" icon-name="media-flash">
pankso@183 62 <vbox>
pankso@183 63
pankso@183 64 <tree>
pankso@183 65 <width>520</width><height>120</height>
pankso@183 66 <variable>MOUNTED</variable>
pankso@183 67 <label>Mounted fs|Size|Used|Available|Use%|Mounted on</label>'
pankso@183 68
pankso@183 69 # /dev/root
pankso@183 70 RES=`df -h / | grep rootfs`
pankso@183 71 dev="/dev/root"
pankso@183 72 SIZE=`echo $RES | cut -d " " -f 2`
pankso@183 73 USED=`echo $RES | cut -d " " -f 3`
pankso@183 74 AVAILABLE=`echo $RES | cut -d " " -f 4`
pankso@183 75 PCT=`echo $RES | cut -d " " -f 5`
pankso@183 76 MOUNTED_ON=`echo $RES | cut -d " " -f 6`
pankso@184 77 if [ $SIZE != 0 ]; then
pankso@184 78 ROOT_ITEM="
pankso@184 79 <item icon=\"drive-harddisk\">$dev | $SIZE | $USED | $AVAILABLE | $PCT | $MOUNTED_ON</item>"
pankso@184 80 fi
pankso@183 81 MAIN_DIALOG=${MAIN_DIALOG}${ROOT_ITEM}
pankso@183 82
pankso@183 83 # Now we have rootfs and icons, list all mounted fs.
pankso@183 84 DEVICE='<input>/usr/lib/slitaz/libmountbox list-mounted</input>
pankso@183 85 <action>/usr/lib/slitaz/libmountbox mounted-fs-infos</action>
pankso@183 86 <action>refresh:MOUNTED</action>
pankso@183 87 <action>refresh:DEVICE</action>
pankso@183 88 </tree>
pankso@183 89
pankso@183 90 <tree>
pankso@183 91 <width>500</width><height>120</height>
pankso@183 92 <variable>DEVICE</variable>
pankso@183 93 <label>Umounted dev|Boot|Start|End|Blocks|Id|System</label>
pankso@183 94 <item icon="drive-harddisk">/dev/cdrom | - | - | - | CD/DVD | - | iso9660</item>
pankso@183 95 <input>/usr/lib/slitaz/libmountbox list-umounted</input>
pankso@183 96 <action>/usr/lib/slitaz/libmountbox umounted-fs-infos</action>
pankso@183 97 <action>refresh:MOUNTED</action>
pankso@183 98 <action>refresh:DEVICE</action>
pankso@183 99 </tree>
pankso@184 100 <hbox>
pankso@183 101 <text use-markup="true">
pankso@183 102 <label>"<b>Mount selected device on:</b>"</label>
pankso@183 103 </text>
pankso@184 104 <combobox>
pankso@183 105 <variable>MOUNT_POINT</variable>'
pankso@183 106
pankso@183 107 # Get the mount points list.
pankso@183 108 MAIN_DIALOG=${MAIN_DIALOG}${DEVICE}
pankso@183 109 for dir in $(ls -d /media/* /mnt/*)
pascal@182 110 do
pankso@183 111 MOUNT_POINTS_ITEMS="<item>$dir</item>"
pankso@183 112 MAIN_DIALOG=${MAIN_DIALOG}${MOUNT_POINTS_ITEMS}
pascal@182 113 done
pankso@6 114
pankso@183 115 # Actions buttons (moun, umount, eject, etc).
pankso@183 116 ACTIONS='
pankso@184 117 </combobox>
pankso@183 118 <button>
pankso@183 119 <label>Browse</label>
pankso@183 120 <input file icon="folder-open"></input>
pankso@183 121 <action>pcmanfm $MOUNT_POINT &</action>
pankso@183 122 </button>
pankso@183 123 </hbox>
pankso@183 124
pankso@183 125 <hbox>
pankso@183 126 <button>
pankso@183 127 <label>Mount</label>
pankso@183 128 <input file icon="edit-redo"></input>
pankso@183 129 <action>mkdir -p $MOUNT_POINT</action>
pankso@183 130 <action>mount $DEVICE $MOUNT_POINT</action>
pankso@183 131 <action>refresh:MOUNTED</action>
pankso@183 132 <action>refresh:DEVICE</action>
pankso@183 133 </button>
pankso@183 134 <button>
pankso@183 135 <label>Umount</label>
pankso@183 136 <input file icon="undo"></input>
pankso@183 137 <action>umount $MOUNT_POINT; sleep 1</action>
pankso@183 138 <action>refresh:MOUNTED</action>
pankso@183 139 <action>refresh:DEVICE</action>
pankso@183 140 </button>
pankso@183 141 <button>
pankso@183 142 <label>Device list</label>
pankso@183 143 <input file icon="reload"></input>
pankso@183 144 <action>refresh:DEVICE</action>
pankso@183 145 </button>
pankso@183 146 <button>
pankso@183 147 <label>Eject</label>
pankso@183 148 <input file icon="media-cdrom"></input>
pankso@183 149 <action>eject</action>
pankso@183 150 </button>
pankso@183 151 <button help>
pankso@183 152 <input file icon="help"></input>
pankso@183 153 <action type="launch">HELP</action>
pankso@183 154 </button>
pankso@183 155 <button>
pankso@183 156 <label>Quit</label>
pankso@183 157 <input file icon="exit"></input>
pankso@183 158 <action type="exit">Exit</action>
pankso@183 159 </button>
pankso@183 160
pankso@183 161 </hbox>
pankso@183 162
pankso@183 163 </vbox>
pankso@183 164 </window>'
pankso@183 165
pankso@183 166 export MAIN_DIALOG=${MAIN_DIALOG}${ACTIONS}
pankso@183 167 gtkdialog --center --program=MAIN_DIALOG >/dev/null
pankso@6 168
pankso@6 169 exit 0