SliTaz Web Control Panel

Tazpanel is the SliTaz Control Panel, a web interface which lets you manage the full system in a radically simple way. The output xHTML code is valid xHTML 5 and all theming is done with standard CSS 3. TazPanel is published under a BSD License.

Use it!

You can clone the tazpanel repo into /var/www/tazpanel and work on this copy or clone it somewhere else and 'make install'. After, add tazpanel to your /etc/hosts, type './tazpanel start' to start the server and go to the URL: http://tazpanel:82. Panel user and password are defined in the httpd.conf and default is root:root

i18n

TazPanel has been coded from the beginning with gettext support. Please forget 'echo' and use gettext, but remember that gettext "" is equivalent to echo -n. All scripts use the same TEXTDOMAIN and the same pot files, and all translations go in the po/ folder. To start a new translation please use msginit from the pot file directory. Example for French/France locale (fr_FR):

$ msginit -l fr_FR -o fr.po -i tazpanel.pot

To update all translations from a newly updated pot file:

$ make msgmerge

User interface

If you develop an official SliTaz GUI for TazPanel, please follow the default style. If you need more CSS markup and you are not a coder, please ask an official developer for the best way to implement your idea. TazPanel is fully themable and more than one theme can be installed, this will allow us to make packages in a TazPanel style! All the GUI is done with xHTML 5 and CSS 3, some javascript can be used, but with precautions... one more time, it's better to check with a main contributor before adding too much stuff, the goal is, as for all the SliTaz projects: KISS

CGI template and files

To start or test a new function with TazPanel you will find a file in utils/template.cgi that needs to be in the $PANEL root to work, all TazPanel CGI scripts are in that location. If you think your code is too big to fit in another script you can eventually create a new CGI page and update all links, but please to talk to the AUTHORS beforehand.

index.cgi
Main Tazpanel CGI script
boot.cgi
All what happens before login
network.cgi
All related stuff to networking (eth, wifi, services)
pkgs.cgi
Tazpkg packages CGI interface
settings.cgi
System settings and services such as time, users accounts, locales or daemons management
live.cgi
All tools related to Live systems (CD, USB, Frugal)
hardware.cgi
Devices drivers, firmware, printing
help.cgi
Cat the html doc and this README file

For common functions have a look to lib/libtazpanel, you may found functions you need already coded such as a xhtml_header to get the style header.html in your CGI script. For the loading message you can use loading_msg. When cat is used: `gettext "Text to translate"`

Web server

Tazpanel can run with the Busybox httpd applet or LightTPD and probably Apache. Start the webserver with a custom config to listen only on a local port for security reasons since we run as root to perform system actions, example:

# httpd -p 82 u root -c /etc/slitaz/httpd.conf

Or use a tazpanel cmdline:

# ./tazpanel start