slitaz-tools annotate oldstuff/subox @ rev 585
Rename stuff to oldstuff and mv subox to it
author | Christophe Lincoln <pankso@slitaz.org> |
---|---|
date | Sat Apr 30 01:29:28 2011 +0200 (2011-04-30) |
parents | tinyutils/subox@9ccc4f26da15 |
children |
rev | line source |
---|---|
pankso@445 | 1 #!/bin/sh |
pankso@35 | 2 # |
pankso@35 | 3 # Gtkdialog to execute program as root from a WM menu. |
pankso@445 | 4 # (c) SliTaz GNU/Linux 2008-2010 - GNU gpl. |
pankso@35 | 5 # |
pankso@464 | 6 VERSION=20100324 |
pankso@35 | 7 |
pankso@35 | 8 # Usage. |
pankso@35 | 9 if [ -z "$1" ]; then |
pankso@35 | 10 echo "Slitaz subox version : $VERSION" |
pankso@35 | 11 echo -e "\nUsage : subox program\n" |
pankso@35 | 12 exit 0 |
pankso@35 | 13 fi |
pankso@35 | 14 |
pascal@206 | 15 # Nothing to do if we are root |
pankso@453 | 16 test $(id -u) = 0 && exec $1 |
pankso@445 | 17 |
pankso@445 | 18 # Include gettext helper script. |
pankso@445 | 19 . /usr/bin/gettext.sh |
pankso@445 | 20 |
pankso@445 | 21 # Export package name for gettext. |
pankso@445 | 22 TEXTDOMAIN='subox' |
pankso@445 | 23 export TEXTDOMAIN |
pascal@206 | 24 |
pankso@387 | 25 # Keep command in an exported variable to be used by SU_DIALOG. |
pankso@453 | 26 export SU_CMD=$1 |
pankso@35 | 27 |
fredericguilbault@505 | 28 # Error window if the pwd is wrong. |
fredericguilbault@505 | 29 export ERROR_DIALOG=' |
fredericguilbault@505 | 30 <window title="Subox"> |
fredericguilbault@505 | 31 <vbox> |
fredericguilbault@505 | 32 |
fredericguilbault@505 | 33 <text use-markup="true"> |
fredericguilbault@505 | 34 <label>" |
fredericguilbault@505 | 35 <b>SliTaz - Subox</b>" |
fredericguilbault@505 | 36 </label> |
fredericguilbault@505 | 37 </text> |
fredericguilbault@505 | 38 <text wrap="true" width-chars="48"> |
fredericguilbault@505 | 39 <label>"'`gettext "Error: wrong password!"`'"</label> |
fredericguilbault@505 | 40 </text> |
fredericguilbault@505 | 41 |
fredericguilbault@505 | 42 <hbox> |
fredericguilbault@505 | 43 <button ok></button> |
fredericguilbault@505 | 44 </hbox> |
fredericguilbault@505 | 45 </vbox> |
fredericguilbault@505 | 46 </window> |
fredericguilbault@505 | 47 ' |
fredericguilbault@505 | 48 |
MikeDSmith25@252 | 49 # Main window and root password default entry set to 'root'. |
pankso@464 | 50 SU_DIALOG=' |
pankso@445 | 51 <window title="Subox" skip_taskbar_hint="true"> |
pankso@445 | 52 <vbox> |
pankso@387 | 53 |
pankso@445 | 54 <text use-markup="true"> |
pankso@445 | 55 <label>" |
pankso@35 | 56 <b>SliTaz - Subox</b>" |
pankso@445 | 57 </label> |
pankso@445 | 58 </text> |
jozee@458 | 59 <text wrap="true" width-chars="50"> |
pankso@445 | 60 <label>"'`gettext " |
pankso@453 | 61 Please enter root password (default root) to execute :"`' |
pankso@453 | 62 '$@' |
pankso@445 | 63 " |
pankso@445 | 64 </label> |
pankso@445 | 65 </text> |
pankso@445 | 66 |
pankso@445 | 67 <hbox> |
pankso@445 | 68 <text use-markup="true"> |
jozee@458 | 69 <label>"'`gettext "<b>Admin password :</b>"`'"</label> |
pankso@445 | 70 </text> |
pankso@464 | 71 <entry visibility="false">' |
pankso@464 | 72 |
pankso@464 | 73 # Check if we have a saved passwd. |
pankso@464 | 74 if [ -s $HOME/.config/slitaz/subox.conf ]; then |
pankso@464 | 75 PASSWD=`cat $HOME/.config/slitaz/subox.conf` |
slaxemulator@533 | 76 [ -n "$PASSWD" ] && SU_DIALOG="$SU_DIALOG <default>$PASSWD</default>" && AUTO_SAVED_PASSWD=true |
slaxemulator@533 | 77 else |
slaxemulator@533 | 78 AUTO_SAVED_PASSWD=false |
pankso@464 | 79 fi |
pankso@464 | 80 |
pankso@464 | 81 export SU_DIALOG=''${SU_DIALOG}' |
pankso@445 | 82 <variable>PASSWD</variable> |
pankso@445 | 83 </entry> |
pankso@445 | 84 </hbox> |
pankso@445 | 85 |
pankso@445 | 86 <hbox> |
pankso@464 | 87 <checkbox> |
fredericguilbault@503 | 88 |
fredericguilbault@503 | 89 <label>"'`gettext "Autosave password"`'"</label> |
fredericguilbault@501 | 90 <variable>AUTOSAVE</variable>' |
fredericguilbault@501 | 91 if [ $AUTO_SAVED_PASSWD = "true" ] |
fredericguilbault@501 | 92 then SU_DIALOG="$SU_DIALOG <default>true</default>" |
fredericguilbault@501 | 93 else SU_DIALOG="$SU_DIALOG <default>false</default>" |
fredericguilbault@501 | 94 fi |
fredericguilbault@501 | 95 |
fredericguilbault@501 | 96 export SU_DIALOG=''${SU_DIALOG}' |
fredericguilbault@505 | 97 |
pankso@464 | 98 </checkbox> |
pankso@445 | 99 <button ok> |
fredericguilbault@505 | 100 <action> echo $PASSWD | su -c "$SU_CMD &" || gtkdialog --center --program=ERROR_DIALOG</action> |
pankso@464 | 101 <action>[ $AUTOSAVE == true ] && echo $PASSWD > '$HOME/.config/slitaz/subox.conf'</action> |
pankso@464 | 102 <action>[ $AUTOSAVE == true ] && chmod 0600 '$HOME/.config/slitaz/subox.conf'</action> |
fredericguilbault@502 | 103 <action>[ $AUTOSAVE == false ] && cat /dev/null > '$HOME/.config/slitaz/subox.conf'</action> |
pankso@445 | 104 <action type="closewindow">SU_DIALOG</action> |
pankso@445 | 105 </button> |
pankso@445 | 106 <button cancel></button> |
pankso@445 | 107 </hbox> |
pankso@387 | 108 |
pankso@445 | 109 </vbox> |
pankso@445 | 110 </window>' |
pankso@35 | 111 |
pankso@464 | 112 gtkdialog --center --program=SU_DIALOG > /dev/null |
pankso@445 | 113 |
pankso@387 | 114 exit 0 |