RE: [Refdb-users] Installing refdb
Status: Beta
Brought to you by:
mhoenicka
From: Markus H. <mar...@mh...> - 2003-09-15 21:21:11
|
[please cc the mailing list as this seems to be of general interest] Hi, Arthur Chtcherba writes: > Hello Marcus, > > Sorry for blunt message, but I think installation process is well beyond > the amount of time one would wish to spend on a software such as refdb. It > is not some application server which will serve millions of hits a day, that > one needs to configure it properly to last neety bitty detail. > Firs of all, I am not a perl programmer and hence was not sure what is > organization of perl modules is, so that I could go on and install them. I > am running Suse 8.2... So first I did suse update and installed all perl > modules it was offering. Unfortunately not all modules required for refdb > are standard at least with Suse. Then I went to CPAN and fished out > remaining modules, and installed like all perl modules get > installed. There's the refdb-starterkit for exactly this purpose. It contains the RefDB sources along with all non-standard library sources and the required Perl modules (except Text::Iconv which I regrettably forgot to throw in, but I'll fix that asap). While it doesn't auto-install, it gets you at least all sources you'll need to get things up and running. > Then I > had to figure out all these XSL stylesheet paths ... Fortunately these came > with Suse... > Unfortunately there's no really standard way for dealing with SGML and XML files that would allow to check a handful of default paths and be sure to find the stylesheets. Every OS and every distro tends to hide these files somewhere else. It won't work without some user intelligence. > After doing all that > > refdbd -s -e 0 -l 7 > > Gives me the following no matter what I try > ---------------------------------- > dbi_driver_dir went to: > > dbi is using default deriver dir > Unable to initialize libdbi! Make sure you specified a valid driver > directory. > ------------------------------------ > > I also installed C dbi library "libdbi.so", but that did not help. > Word has not spread everywhere that the former libdbi project was split into libdbi (the framework) and libdbi-drivers (the database drivers). Apparently you've got only the framework but no database driver. Look for that package or build it from the sources. When doing the latter, make sure to specify at least one driver for your database engine. > My question is why spend this effort writing inhalation instructions, etc. > and instead have a program which automatically checks for all necessary > components, and if not install them, at least directly point where one can > download them. Why it was not possible to detect this dbi problem during > install, why does it appear during starting the daemon ? It is fairly easy to test for the presence of libdbi.so as it has to be in one of the standard library directories. The drivers are loaded at runtime from either a compiled-in directory or from a directory that the application specifies. A standard configure test will have a hard time to cope with this. As for the download hints, the manual has all the pointers. This is certainly not as convenient as some auto-installer, but the information is available. > > Why is not possible to have for example some web-based configuration > utility. It is possible for sure but no one wrote a config utility yet. Free software does not write itself, it's always some warm body volunteering. > > Do you suggest a different installation procedure? > > Well I only speak from the user point of view. I find installation procedure > which amounts to > "make install" > not really sophisticated. All it does just copies files. You didn't watch closely enough. "make install" indeed simply shuffles files because the interesting part happens during "make". About a dozen files are sent though sed in order to configure stylesheet paths, config file paths, hostnames, database server prefs, paths to helper applications etc. > It could check for settings, install missing libs, How would you install missing libs? Build them from sources? Debian users would be rightfully upset if RefDB bypasses their elegant package system and messes around with the system. Use .debs? RPM-based Linuxes won't like them. Ever thought about Cygwin which uses tar.bz2 packages? What about Mac users that have the choice between Fink and DarwinPorts? Should we offer Free/Net/OpenBSD users a package or a port? Ever dealt with Solaris? Portability does not come for free, unfortunately. > packages > offer to install a script into "init.d", Not all supported systems use the SysV-style init.d stuff to start daemons. The BSDs (and some Linuxes) use the, well, BSD-style rc.d stuff, and on Cygwin you want refdbd to run as a native Windows service. > ask for other configuration settings instead of directing user to edit > plain files, As noted previously, the config files are preconfigured appropriately if you use the ./configure parameters wisely. Everything else should work except the database username/password settings that you'll have to provide. > One can write such app. With minimal effort ... > I think... But maybe I am wrong ... > This sounds very much like an offer. If you want to scratch an itch, please go ahead. But keep in mind that it won't suffice that such an installer runs on Suse. A shell script (sh, not bash) is probably the most advanced program that you can expect to be fully portable. Besides dealing with these end-user installation hassles, we should all keep in mind that most operating systems support some packaging mechanism. A package is way more desirable than an application-specific installer that will never catch every OS and distro out there. If your OS does not yet have packages for RefDB and the required libraries/Perl modules, why don't you try to lobby for these packages. Try to find someone who creates the required packages or at least helps you to do it. regards, Markus -- Markus Hoenicka mar...@ca... (Spam-protected email: replace the quadrupeds with "mhoenicka") http://www.mhoenicka.de |