ssfs annotate ssfs-box @ rev 68
Some small improvment and typo
| author | Christophe Lincoln <pankso@slitaz.org> |
|---|---|
| date | Mon Jun 13 19:58:32 2011 +0200 (2011-06-13) |
| parents | 51160b20e291 |
| children | 3a2f682ce267 |
| rev | line source |
|---|---|
| pankso@7 | 1 #!/bin/sh |
| pankso@7 | 2 # |
| pankso@7 | 3 # SliTaz Secure File Storage GTK user interface using Yad. |
| pankso@7 | 4 # |
| pankso@7 | 5 # Copyright (C) SliTaz GNU/Linux - BSD License |
| pankso@7 | 6 # Author: Christophe Lincoln <pankso@slitaz.org> |
| pankso@7 | 7 # |
| pankso@7 | 8 |
| pankso@7 | 9 app=$(basename $0) |
| pankso@7 | 10 config=$HOME/.config/ssfs/client.lua |
| pankso@51 | 11 pixmap=/usr/share/pixmaps/ssfs.png |
| pankso@7 | 12 |
| pankso@7 | 13 # |
| pankso@7 | 14 # Functions |
| pankso@7 | 15 # |
| pankso@7 | 16 |
| pankso@7 | 17 info() { |
| pankso@7 | 18 size=$(du -sh $HOME/Sync | awk '{print $1}') |
| pankso@51 | 19 files=$(find $HOME/Sync | wc -l) |
| pankso@7 | 20 host=$(fgrep 'host' $config | cut -d '"' -f 2) |
| pankso@7 | 21 login=${host%@*} |
| pankso@7 | 22 host=${host#*@} |
| pankso@7 | 23 echo -e "Login\n$login |
| pankso@7 | 24 Host\n$host |
| pankso@7 | 25 Size\n$size |
| pankso@51 | 26 Files\n$files |
| pankso@7 | 27 RSA Key\n~/.ssh/id_rsa" |
| pankso@7 | 28 } |
| pankso@7 | 29 |
| pankso@7 | 30 # Default tools GUI box function. |
| pankso@7 | 31 tools_main() { |
| pankso@7 | 32 if [ ! -s "$config" ]; then |
| pankso@10 | 33 $0 setup && exit 0 |
| pankso@7 | 34 fi |
| pankso@51 | 35 [ "$opts" ] || opts="--width=460 --height=320" |
| pankso@68 | 36 text=$(gettext "<b>Welcome to the Ssfs Client user interface</b>") |
| pankso@51 | 37 info | yad $opts \ |
| pankso@51 | 38 --list --title="Ssfs Box" \ |
| pankso@51 | 39 --image-on-top --window-icon=$pixmap \ |
| pankso@51 | 40 --text="$text" --image=$pixmap \ |
| pankso@7 | 41 --column "Ssfs" --column "$(gettext "Value")" \ |
| pankso@51 | 42 --button="$(gettext "Setup client"):4" \ |
| pankso@7 | 43 --button="$(gettext "Edit config"):3" \ |
| pankso@7 | 44 --button="$(gettext "Browse files"):2" \ |
| pankso@7 | 45 --button="gtk-close:1" |
| pankso@7 | 46 } |
| pankso@7 | 47 |
| pankso@7 | 48 # Default tools functions. |
| pankso@7 | 49 tools() { |
| pankso@7 | 50 # Store box results |
| pankso@7 | 51 main=$(tools_main) |
| pankso@7 | 52 # Deal with --button values |
| pankso@7 | 53 case $? in |
| pankso@7 | 54 1) exit 0 ;; |
| pankso@7 | 55 2) file-manager $HOME/Sync ;; |
| pankso@7 | 56 3) editor $config ;; |
| pankso@51 | 57 4) $0 setup ;; |
| pankso@7 | 58 *) continue ;; |
| pankso@7 | 59 esac |
| pankso@7 | 60 case $main in |
| pankso@7 | 61 RSA*) |
| pankso@7 | 62 yad --text-info --title="RSA Key" \ |
| pankso@51 | 63 --width=560 --height=420 \ |
| pankso@7 | 64 --filename=$HOME/.ssh/id_rsa ;; |
| pankso@7 | 65 *) |
| pankso@51 | 66 continue ;; |
| pankso@7 | 67 esac |
| pankso@7 | 68 } |
| pankso@7 | 69 |
| pankso@7 | 70 # Setup GUI box function. |
| pankso@7 | 71 setup_main() { |
| pankso@7 | 72 text=$(gettext \ |
| paul@12 | 73 "<b>Welcome to the Ssfs Setup</b>\n |
| pankso@7 | 74 Any account on a server yet ? You can vist www.slitaz.org |
| pankso@7 | 75 services or setup your own server in a few minutes!\n") |
| pankso@7 | 76 yad --form --title="Ssfs GTK Setup" \ |
| pankso@51 | 77 --window-icon=$pixmap \ |
| pankso@7 | 78 --width=460 --height=200 --image-on-top \ |
| pankso@51 | 79 --text="$text" --image=$pixmap \ |
| pankso@7 | 80 --field="Login" --field="Server" |
| pankso@7 | 81 } |
| pankso@7 | 82 |
| pankso@7 | 83 # Default tools functions. |
| pankso@7 | 84 setup() { |
| pankso@7 | 85 # Store box results and setup. |
| pankso@7 | 86 main=$(setup_main) |
| pankso@7 | 87 [ $? == 1 ] && exit 0 |
| pankso@7 | 88 login=$(echo $main | cut -d '|' -f 1) |
| pankso@7 | 89 host=$(echo $main | cut -d '|' -f 2) |
| pankso@7 | 90 [ "$host" ] || exit 0 |
| pankso@49 | 91 rm -f $config |
| pankso@55 | 92 terminal -hold -geometry 76x16 -T "Ssfs" \ |
| pankso@7 | 93 -e "ssfs setup --login=$login --host=$host" |
| pankso@7 | 94 } |
| pankso@7 | 95 |
| pankso@51 | 96 # Notification mode. |
| pankso@51 | 97 notify() { |
| pankso@51 | 98 export opts="--geometry=460x320-40+40 --timeout=6 --skip-taskbar" |
| pankso@51 | 99 yad --notification --image=$pixmap --command=$0 \ |
| pankso@51 | 100 --text="$(gettext "Ssfs Live Sync storage")" |
| pankso@51 | 101 } |
| pankso@51 | 102 |
| pankso@7 | 103 # |
| pankso@7 | 104 # Commands |
| pankso@7 | 105 # |
| pankso@7 | 106 |
| pankso@7 | 107 case "$1" in |
| pankso@7 | 108 help) |
| pankso@7 | 109 echo "Usage: $app [command]" ;; |
| pankso@7 | 110 setup) |
| pankso@7 | 111 setup ;; |
| pankso@51 | 112 notify) |
| pankso@51 | 113 notify ;; |
| pankso@51 | 114 *) |
| pankso@7 | 115 tools ;; |
| pankso@7 | 116 esac |
| pankso@7 | 117 exit 0 |