tazusb annotate tazusb-box @ rev 194
Add Japanese translations (thanks Keiichi Shiga)
author | Aleksej Bobylev <al.bobylev@gmail.com> |
---|---|
date | Tue Jan 10 13:49:55 2017 +0200 (2017-01-10) |
parents | 8ddffadf56a6 |
children |
rev | line source |
---|---|
pankso@110 | 1 #!/bin/sh |
pankso@110 | 2 # |
pankso@110 | 3 # Tiny GTK interface to SliTaz Live USB tool aka TazUSB. |
pankso@110 | 4 # |
pankso@110 | 5 # Copyright (C) 2012 SliTaz GNU/Linux - GNU gpl v2 |
pankso@110 | 6 # |
pankso@110 | 7 # Authors : Christophe Lincoln <pankso@slitaz.org> |
pankso@110 | 8 # |
al@180 | 9 |
pankso@130 | 10 . /lib/libtaz.sh |
pankso@110 | 11 |
al@180 | 12 |
pankso@110 | 13 # TazUSBbox is only for root. |
al@180 | 14 |
al@180 | 15 if [ $(id -u) -ne 0 ]; then |
pankso@125 | 16 exec tazbox su tazusb-box |
pankso@110 | 17 exit 0 |
pankso@110 | 18 fi |
pankso@110 | 19 |
al@180 | 20 |
pankso@130 | 21 # We can specify an ISO on cmdline: tazusb-box --iso=/path/to/image.iso |
al@180 | 22 |
pankso@130 | 23 [ "$iso" ] || iso=" " |
pankso@130 | 24 |
al@180 | 25 title='TazUSB Box' |
al@180 | 26 icon='/usr/share/pixmaps/slitaz-icon.png' |
pankso@130 | 27 opts="--window-icon=$icon --height=220 --width=520 --center --on-top" |
pankso@125 | 28 |
al@180 | 29 |
al@181 | 30 # i18n |
al@180 | 31 |
al@180 | 32 export TEXTDOMAIN='tazusb-box' |
al@180 | 33 |
pankso@110 | 34 |
pankso@125 | 35 # Main text information |
al@180 | 36 |
al@180 | 37 info="<b>$(_ 'Generate SliTaz LiveUSB media and boot in RAM!')</b>\n\n \ |
al@180 | 38 $(_ "Insert a LiveCD into the CD-ROM drive or use a local ISO image, select \ |
pankso@110 | 39 the correct device and press OK.") |
pankso@110 | 40 " |
pankso@110 | 41 |
al@180 | 42 |
pankso@110 | 43 # |
pankso@110 | 44 # Functions |
pankso@110 | 45 # |
pankso@110 | 46 |
pankso@125 | 47 # Nice GTK output for commands. |
al@180 | 48 |
pankso@125 | 49 output() { |
pankso@130 | 50 yad --text-info $opts --title="$title" --tail --margins=4 \ |
al@180 | 51 --button="$(_n 'Reboot'):reboot" --button="gtk-close:0" |
pankso@110 | 52 } |
pankso@110 | 53 |
al@180 | 54 |
pankso@110 | 55 list_devices() { |
pankso@110 | 56 if [ -d /proc/scsi/usb-storage ]; then |
al@181 | 57 dev="$(blkid | cut -d: -f1)" |
pankso@110 | 58 echo $dev | sed s'/ /!/'g |
pankso@110 | 59 else |
al@180 | 60 _ 'No USB media found' |
pankso@110 | 61 fi |
pankso@110 | 62 } |
pankso@110 | 63 |
al@180 | 64 |
pankso@110 | 65 # Main GUI box function with pure Yad spec |
al@180 | 66 |
pankso@130 | 67 usbbox_main() { |
pankso@130 | 68 yad --form $opts --title="$title" --text="$info" \ |
pankso@130 | 69 --image=usb-creator --image-on-top \ |
al@180 | 70 --field="$(_n 'ISO Image:')":FL \ |
al@180 | 71 --field="$(_n 'USB Media:')":CB \ |
pankso@130 | 72 "$iso" "$(list_devices)" |
pankso@110 | 73 } |
pankso@110 | 74 |
al@180 | 75 |
pankso@110 | 76 # Handler |
al@180 | 77 |
pankso@130 | 78 usbbox() { |
pankso@110 | 79 # Store box results |
pankso@130 | 80 main=$(usbbox_main) |
pankso@130 | 81 |
pankso@110 | 82 # Deal with --button values |
pankso@130 | 83 case $? in |
pankso@110 | 84 1) exit 0 ;; |
pankso@110 | 85 *) continue ;; |
pankso@110 | 86 esac |
pankso@130 | 87 |
pankso@110 | 88 # Deal with $main values. Exit if any device. |
al@180 | 89 dev=$(echo $main | cut -d"|" -f2) |
pankso@110 | 90 if ! echo $dev | grep -q /dev; then |
al@180 | 91 _ 'No device: exit' |
al@180 | 92 exit 0 |
pankso@130 | 93 fi |
pankso@110 | 94 if echo "$main" | grep -q ".iso|"; then |
al@181 | 95 iso=$(echo $main | cut -d "|" -f1) |
al@180 | 96 yes '' | tazusb gen-iso2usb $iso $dev --output=raw | output |
pankso@110 | 97 else |
al@180 | 98 yes '' | tazusb gen-liveusb $dev --output=raw | output |
pankso@110 | 99 fi |
pankso@110 | 100 } |
pankso@110 | 101 |
al@180 | 102 |
pankso@110 | 103 # |
pankso@110 | 104 # Script commands |
pankso@110 | 105 # |
pankso@110 | 106 |
pankso@110 | 107 case "$1" in |
al@180 | 108 usage|--help|-h) |
al@180 | 109 echo "$(_ 'Usage:') $(basename $0) [list]" ;; |
pankso@130 | 110 list) |
pankso@130 | 111 list_devices ;; |
pankso@130 | 112 *) |
pankso@130 | 113 usbbox ;; |
pankso@110 | 114 esac |
pankso@110 | 115 |
pankso@110 | 116 exit 0 |
pankso@110 | 117 |