tazpanel annotate tazpanel @ rev 524

tazpanel: can now open sub-pages like "$ tazpanel pkgs#list"
author Aleksej Bobylev <al.bobylev@gmail.com>
date Tue Aug 18 19:09:02 2015 +0300 (2015-08-18)
parents 23e7fb2932a2
children 5323427d34b9
rev   line source
pankso@4 1 #!/bin/sh
pankso@4 2 #
pankso@4 3 # Tiny Tazpanel cmdline interface
pankso@4 4 #
al@419 5 # Copyright (C) 2012-2015 SliTaz GNU/Linux - BSD License
pankso@49 6 #
al@398 7 VERSION=1.8.2
pankso@14 8
al@419 9
pankso@14 10 # Get the configuration file and functions
al@419 11
pankso@13 12 CONFIG="/etc/slitaz/tazpanel.conf"
pankso@384 13 [ -f "$CONFIG" ] && . $CONFIG
pankso@384 14 [ -f "data/tazpanel.conf" ] && . data/tazpanel.conf
pankso@384 15 [ ! "$PANEL" ] && echo "No config file found: $CONFIG" && exit 1
pankso@384 16
pankso@378 17 . /lib/libtaz.sh
pankso@13 18
al@419 19
pankso@109 20 # I18n
al@419 21
pankso@14 22 TEXTDOMAIN='tazpanel'
pankso@14 23 export TEXTDOMAIN
pankso@14 24
al@419 25
pankso@14 26 #
pankso@14 27 # Commands
pankso@14 28 #
pankso@4 29
pascal@173 30 NAME=tazpanel
pascal@173 31 DESC="SliTaz administration and configuration panel."
pascal@173 32 DAEMON=/usr/sbin/httpd
pascal@392 33 PIDFILE=/run/$NAME.pid
pascal@173 34
pankso@4 35 case "$1" in
pankso@384 36 -h|*help|*usage)
al@438 37 cat <<EOT
al@438 38 Usage: tazpanel [command]
al@438 39
al@438 40 Commands:
al@438 41 start Start tazpanel daemon
al@438 42 stop Stop tazpanel daemon
al@438 43 restart Restart tazpanel daemon
al@438 44 <app> Open TazPanel page in the browser, where <app> is one of:
al@438 45 boot, hardware, help, index, installer, live, network, settings, pkgs
al@438 46 If <app> is empty, index page will open in the browser.
al@524 47 You can also open sub-pages, so "pkgs#list" will open packages list.
al@438 48
al@438 49 EOT
al@438 50 ;;
al@419 51 start)
pankso@384 52 if [ -f $PIDFILE ]; then
al@443 53 _ 'TazPanel is already running.'
pankso@384 54 exit 1
pankso@384 55 fi
al@443 56 _n 'Starting TazPanel web server on port %d...' $HTTPD_PORT
pankso@14 57 httpd -p $HTTPD_PORT -u root -c $HTTPD_CONF \
al@443 58 -r "$(_ 'TazPanel Authentication - Default: root:root')" &
pascal@174 59 ps | grep "httpd -p $HTTPD_PORT " | grep -v grep | \
pascal@173 60 awk '{ print $1 }' > $PIDFILE
psychomaniak@424 61 [ ! -f /var/lib/tazpkg/installed.info ] && tazpkg -l>/dev/null&
pankso@14 62 status ;;
al@419 63 stop)
al@419 64 if [ ! -f $PIDFILE ]; then
al@443 65 _ 'TazPanel is not running.'
al@419 66 exit 1
al@419 67 fi
al@443 68 _n 'Stopping TazPanel web server...'
al@419 69 kill $(pgrep -f TazPanel)
mojo@361 70 rm -f $PIDFILE
mojo@361 71 status ;;
al@438 72 restart)
al@438 73 tazpanel stop; sleep 1; tazpanel start;;
pankso@4 74 *)
pankso@384 75 . /etc/slitaz/applications.conf
pankso@384 76 USER_CONFIG="$HOME/.config/slitaz/applications.conf"
al@419 77 [ -f "$USER_CONFIG" ] && . $USER_CONFIG
al@524 78
al@524 79 applet=${1:-index}
al@524 80 case $1 in
al@524 81 *#*) url="http://127.0.0.1:82/${applet%%#*}.cgi?${applet#*#}&guiuser=$(id -un)";;
al@524 82 *) url="http://127.0.0.1:82/$applet.cgi?guiuser=$(id -un)";;
al@524 83 esac
pascal@511 84 echo "$url"
al@524 85
pankso@384 86 case "$BROWSER" in
pascal@511 87 tazweb) tazweb --notoolbar "$url" & ;;
pascal@511 88 midori) midori "--app=$url" & ;;
pascal@511 89 *) $BROWSER "$url" & ;;
pankso@384 90 esac ;;
pankso@4 91 esac
pankso@14 92
pankso@14 93 exit 0