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 |