If you want to install WebGUI on a Debian GNU/Linux you can use the readily available packages from Debian's repository. Bear in mind that Debian carries the latest stable WebGUI releases, usually available a day or two after Plainblack's release.
Installation is done using either aptitude from the command line or synaptic from your preferred desktop environment.
If you are running an up to date Debian Sid (unstable) or Wheezy (testing) system, you only need to
# aptitude install --without-recommends webgui
in order to get the latest available package installed, including all its dependencies. If you want to have MySQL in the same server, you will need to
# aptitude install mysql-server
in order to get it installed (or drop the --without-recommends option in the first command). This behaviour is intended for those who want to have separate machines for WebGUI and MySQL; it would be very rude to force installation of MySQL in order to have WebGUI on a machine.
At times Wheezy will carry the next-to-last stable WebGUI released package until the last stable package is promoted from Sid (it takes at least 10 days).
If you are running an up to date Debian Squeeze (stable) sytem, you need to do a few extra things in order to use the WebGUI and needed packages from Sid, while keeping the rest of your system in Squeeze.
Start by adding a proper line to your /etc/apt/sources.list pointing to Sid packages. Keep the lines pointing to Squeeze, Debian Security and possibly Debian Updates unchanged. You should have at least
deb http://http.us.debian.org/debian/ squeeze main contrib non-free
deb http://security.debian.org/ squeeze/updates main contrib non-free
deb http://http.us.debian.org/debian/ sid main contrib non-free
Note the use of squeeze and sid instead of stable and unstable; this prevents unwanted upgrades when newer Debian releases appear.
Then, you will need to configure APT Pinning so your Debian Squeeze installation prefers Squeeze packages instead of Sid packages, except for the extra packages needed for WebGUI. This is done by creating or editing /etc/apt/preferences and adding the following stanza
Package: *
Pin: release n=squeeze
Pin-Priority: 1000
Package: *
Pin: release n=sid
Pin-Priority: 100
Next, update the package lists with the usual
# aptitude update
and make sure both Squeeze and Sid lists are downloaded.
Finally, install the WebGUI packages doing
# aptitude install webgui
This will pull webgui and several dependencies from Sid, but the rest of the packages will be pulled from Squeeze. At the time of this writing, the following packages will be taken from Sid:
libchi-perl
libhash-moreutils-perl
liblog-any-adapter-perl
liblog-dispatch-perl
libmonkey-patch-perl
libsub-delete-perl
libtest-log-dispatch-perl
webgui
There are newer versions for several Perl modules available in Sid, so you might want to change your pinning configuration if you're interested in using them, but YMMV.
For instance, at the time of this writing there was a newer version of libwww-perl (LWP) in Sid. However, the pinning configuration prevented it from being installed, as shown by running
# apt-cache policy libwww-perl
libwww-perl:
Installed: 5.836-1
Candidate: 5.836-1
Version table:
5.837-1 0
100 http://http.us.debian.org/debian/ sid/main amd64 Packages
*** 5.836-1 0
1000 http://http.us.debian.org/debian/ squeeze/main amd64 Packages
that's interpreted as 5.836-1 being installed, 5.837-1 being available in Sid, but leaving things as they are since the pinning rules say so. Read the fabulous manual on APT Pinning if you want to make things different.
This instructions have been tested up to Debian's 7.8.21 version of WebGUI's
Check /usr/share/doc/webgui/README.Debian.gz for instructions on database and Apache setup.
Assisted database creation is a work in progress for the Debian package, so in the mean time you'll have to do it manually. The appropiate commands are spelled out for you in README.Debian.
The Debian package cannot assume WebGUI to be the only Apache application, so it provides a couple of sample config files for you to use, and also a couple of Apache modules need to be enabled. Again, the appropiate commands a configuration suggestions are spelled out for you.
The default configuration will have WebGUI running under http://localhost/webgui. If you want to change the root location or have WebGUI take control of the webserver, you'll need to use the alternate configuration file.
Debian's WebGUI package strictly follows the FHS, so instead of a /data with everything inside, things are spread out. This means:
It also means you cannot start with a Debian package install and then upgrade to a non-Debian package install (WRE or source) unless you know exactly what you are doing.
The Debian package sample WebGUI configuration already has support for PostScript and PDF indexing, so you do not need to do anything special. Just upload PostScript and PDF files and WebGUI will be able to index them out of the box.
If you want to enable the spell checker, just install as many aspell dictionaries as you want (aspell-en, aspell-es, aspell-de, etc.) and follow the instructions in /usr/share/doc/webgui/README.Debian.gz to enable them.
Debian packaging is not done by Plainblack, so if the Debian package is not working for you, something is missing, or you have suggestions in order to improve the packaging, please file a Bug in the Debian BTS or contact the package maintainer (look at /usr/share/doc/webgui/changelog or for SquOnk on IRC).
Keywords: debian install
Also to get Apache2::SizeLimit working, you may need to apt-get install build-essential, mkdir /usr/include/apache2, followed by cpan Apache::SizeLimit::Core.
Then create a modperl.pl script in /etc/webgui and include from apache.conf.
Also need to apt-get install libjson-pp-perl"