tazpanel view tazpanel @ rev 419

Bunch of changes. Development in progress, please note it have few known bugs.
author Aleksej Bobylev <al.bobylev@gmail.com>
date Tue Mar 24 03:39:08 2015 +0200 (2015-03-24)
parents 1b1bbae4cb62
children 49a4b40f7d73
line source
1 #!/bin/sh
2 #
3 # Tiny Tazpanel cmdline interface
4 #
5 # Copyright (C) 2012-2015 SliTaz GNU/Linux - BSD License
6 #
7 VERSION=1.8.2
10 # Get the configuration file and functions
12 CONFIG="/etc/slitaz/tazpanel.conf"
13 [ -f "$CONFIG" ] && . $CONFIG
14 [ -f "data/tazpanel.conf" ] && . data/tazpanel.conf
15 [ ! "$PANEL" ] && echo "No config file found: $CONFIG" && exit 1
17 . /lib/libtaz.sh
20 # I18n
22 TEXTDOMAIN='tazpanel'
23 export TEXTDOMAIN
26 #
27 # Commands
28 #
30 NAME=tazpanel
31 DESC="SliTaz administration and configuration panel."
32 DAEMON=/usr/sbin/httpd
33 PIDFILE=/run/$NAME.pid
35 case "$1" in
36 -h|*help|*usage)
37 echo
38 gettext 'Usage: tazpanel [start|stop|passwd|app]'; echo
39 echo ;;
40 start)
41 if [ -f $PIDFILE ]; then
42 gettext 'TazPanel is already running.'; echo
43 exit 1
44 fi
45 eval_gettext 'Starting TazPanel web server on port $HTTPD_PORT...'
46 httpd -p $HTTPD_PORT -u root -c $HTTPD_CONF \
47 -r "$(gettext 'TazPanel Authentication - Default: root:root')" &
48 ps | grep "httpd -p $HTTPD_PORT " | grep -v grep | \
49 awk '{ print $1 }' > $PIDFILE
50 status ;;
51 stop)
52 if [ ! -f $PIDFILE ]; then
53 gettext 'TazPanel is not running.'; echo
54 exit 1
55 fi
56 gettext 'Stopping TazPanel web server...'
57 kill $(pgrep -f TazPanel)
58 rm -f $PIDFILE
59 status ;;
60 passwd|-p)
61 echo
62 gettext 'Changing password for TazPanel'; echo
63 gettext 'New password: ' && read pass
64 sed -i "s/\/:root:.*/\/:root:$pass/" $HTTPD_CONF
65 gettext 'Password changed successfully'; echo
66 echo ;;
67 *)
68 . /etc/slitaz/applications.conf
69 USER_CONFIG="$HOME/.config/slitaz/applications.conf"
70 [ -f "$USER_CONFIG" ] && . $USER_CONFIG
71 [ -n "$1" ] && app="/${1}.cgi"
72 echo http://localhost:82${app}
73 case "$BROWSER" in
74 tazweb) tazweb --notoolbar http://localhost:82${app} & ;;
75 midori) midori --app=http://localhost:82${app} & ;;
76 *) $BROWSER http://localhost:82${app} & ;;
77 esac ;;
78 esac
80 exit 0