/etc/lx-office-erp/lx-office-erp.apache2.conf
/etc/lx-office-erp/lx-office-erp.cherokee
/etc/lx-office-erp/lx-office-erp.cherokee.handler
+/etc/lx-office-erp/lx-erp.conf.default
+/etc/lx-office-erp/console.conf.default
+/etc/lx-office-erp/authentication.pl.default
Priority: optional
Installed-Size: 0
Maintainer: Holger Lindemann <hli@lx-system.de>, Adrian Weibel <adrian_weibel@web.de>
-Depends: patch, apache2 | apache | lighttpd, postgresql | postgresql-7.4 | postgresql-8.0 | postgresql-8.1 | postgresql-8.2 | postgresql-8.3 | postgresql-8.4, libdbi-perl, libdbd-pg-perl, libpg-perl, libarchive-zip-perl, libyaml-perl, libio-stringy-perl, libtemplate-perl, libpdf-api2-perl, libcgi-ajax-perl, liblist-moreutils-perl, libxml-writer-perl, libtext-csv-xs-perl | libtext-csv-perl, liburi-perl, libdatetime-perl, libtext-iconv-perl, libclass-accessor-perl,libemail-address-perl,libparent-perl
-Suggests: tetex-base, tetex-bin, tetex-extra, xpdf | evince | okular, libfcgi-perl, libapache2-mod-fastcgi
+Depends: patch, apache2 | apache | lighttpd, postgresql-8.2 | postgresql-8.3 | postgresql-8.4, libdbi-perl, libdbd-pg-perl, libpg-perl, libarchive-zip-perl, libyaml-perl, libio-stringy-perl, libtemplate-perl, libpdf-api2-perl, libcgi-ajax-perl, liblist-moreutils-perl, libxml-writer-perl, libtext-csv-xs-perl | libtext-csv-perl, liburi-perl, libdatetime-perl, libtext-iconv-perl, libclass-accessor-perl,libemail-address-perl,libparent-perl, librose-object-perl, librose-db-perl, librose-db-object-perl
+Suggests: tetex-base | texlive-latex-base, tetex-bin | texlive-base-bin , tetex-extra | texlive-latex-extra, xpdf | evince | okular, libfcgi-perl, libapache2-mod-fastcgi
Homepage: http://www.lx-office.org
Description: Extended double entry accounting system for the german market.
Lx-Office is derived from sql-ledger and rewritten
data format to a tax consultant. Most of the documents are printable in
html or pdf format.
Further information about Lx-Office is available at http://www.lx-office.org .
- Revision:
+ Revision:
db_get lx-office-erp/admin-password
ADMINPASSWORD="$RET"
- #cat /usr/lib/lx-office-erp/config/authentication.pl.default | \
cat /etc/lx-office-erp/authentication.pl.default | \
sed --expression "s/\$self->{admin_password} = 'admin';/\$self->{admin_password} = '$ADMINPASSWORD';/g" \
> /tmp/1.txt
- #mv /tmp/1.txt /usr/lib/lx-office-erp/config/authentication.pl
mv /tmp/1.txt /etc/lx-office-erp/authentication.pl
- #chmod 0600 /usr/lib/lx-office-erp/config/authentication.pl
- #chown www-data:www-data /usr/lib/lx-office-erp/config/authentication.pl
-
}
db_get lx-office-erp/lx-office-erp-user-postgresql-password
PASSWORD="$RET"
- #cat /usr/lib/lx-office-erp/config/authentication.pl | \
cat /etc/lx-office-erp/authentication.pl | \
sed --expression "s/'password' => '',/'password' => '$PASSWORD',/g" \
> /tmp/1.txt
- #mv /tmp/1.txt /usr/lib/lx-office-erp/config/authentication.pl
mv /tmp/1.txt /etc/lx-office-erp/authentication.pl
}
set_lx_office_erp_authentication_db_user() {
USER="lxoffice"
- #cat /usr/lib/lx-office-erp/config/authentication.pl | \
cat /etc/lx-office-erp/authentication.pl | \
sed --expression "s/'user' => 'postgres',/'user' => '$USER',/g" \
> /tmp/1.txt
- #mv /tmp/1.txt /usr/lib/lx-office-erp/config/authentication.pl
mv /tmp/1.txt /etc/lx-office-erp/authentication.pl
}
set_user_rights() {
chown -R www-data:www-data /usr/lib/lx-office-erp/users
chown -R www-data:www-data /usr/lib/lx-office-erp/templates
- chown www-data:www-data /etc/lx-office-erp/lx_office.conf
- chown www-data:www-data /usr/lib/lx-office-erp/menu.ini
- chown www-data:www-data /etc/lx-office-erp/authentication.pl
- chmod 0600 /etc/lx-office-erp/lx_office.conf
- chmod 0600 /etc/lx-office-erp/authentication.pl
+ chown www-data:www-data /etc/lx-office-erp/lx_office.conf
+ chown www-data:www-data /usr/lib/lx-office-erp/menu.ini
+ chown www-data:www-data /etc/lx-office-erp/authentication.pl
+ chmod 0600 /etc/lx-office-erp/lx_office.conf
+ chmod 0600 /etc/lx-office-erp/authentication.pl
}
disable_ipv6_on_lo_interface() {
#!/bin/sh
#Nur für das Update von einer 2.6.0 nötig, da hier gnadenlos gelöscht wird
-set -e
+#set -x
+
+(
echo " ! "`date`" Preinst $1 !" >> /tmp/lxo-erp.log
+)
+
if [ "$1" = "upgrade" ]; then
- echo "#!/bin/sh" > /var/lib/dpkg/info/lx-office-erp.postrm
- echo "set -e" >> /var/lib/dpkg/info/lx-office-erp.postrm
- echo "echo ' ! '`date`' postrm2 $1 !'" >> /var/lib/dpkg/info/lx-office-erp.postrm
- chmod +x /var/lib/dpkg/info/lx-office-erp.postrm
+ echo " ! upgrade !" >> /tmp/lxo-erp.log
+ cnt=`grep -c '\-e /usr/lib/lx-office-erp' /var/lib/dpkg/info/lx-office-erp.postrm`
+ echo " ! $cnt !" >> /tmp/lxo-erp.log
+ if [ $cnt -gt 0 ]; then
+ echo "#!/bin/sh" > /var/lib/dpkg/info/lx-office-erp.postrm
+ echo "set -e" >> /var/lib/dpkg/info/lx-office-erp.postrm
+ echo "echo ' ! '`date`' postrm2 $1 !'" >> /var/lib/dpkg/info/lx-office-erp.postrm
+ chmod +x /var/lib/dpkg/info/lx-office-erp.postrm
+ else
+ echo " ! ok !" >> /tmp/lxo-erp.log
+ fi
fi
+++ /dev/null
-#!/bin/sh
-#
-## shell script for lx-office-erp to start the login manager in a browser
-
-set -e
-
-/usr/bin/sensible-browser http://localhost/lx-office-erp/login.pl
-
-
+++ /dev/null
-AddHandler cgi-script .pl
-Alias /lx-office /usr/lib/lx-office-erp/
-Alias /lx-office-erp /usr/lib/lx-office-erp/
-
-<Directory /usr/lib/lx-office-erp>
- Options ExecCGI Includes FollowSymlinks
- DirectoryIndex login.pl
- AddDefaultCharset UTF-8
-</Directory>
-
-<Directory /usr/lib/lx-office-erp/users>
- Order Deny,Allow
- Deny from All
-</Directory>
\ No newline at end of file
+++ /dev/null
-##
-## Virtual server for lx-office-erp
-##
-Directory /lx-office-erp {
- Handler common
- DocumentRoot /usr/lib/lx-office-erp/
-}
-Directory /lx-office-erp/image {
- DocumentRoot /usr/share/lx-office-erp/
-}
-Directory /lx-office-erp/css{
- DocumentRoot /var/lib/lx-office-erp/css
-}
-Directory /lx-office-erp/templates{
- DocumentRoot /var/lib/lx-office-erp/templates
-}
-Directory /lx-office-erp/users{
- DocumentRoot /var/lib/lx-office-erp/users
-}
-Directory /lx-office-erp/webdav{
- DocumentRoot /var/lib/lx-office-erp/webdav
-}
-Directory /lx-office-erp/spool{
- DocumentRoot /var/lib/lx-office-erp/spool
-}
+++ /dev/null
-Extension pl {
- Handler cgi
-}
NR="0"
#hier wurde das Git-Paket entpakt:
-SRC=/tmp/deb_test/unstable
+SRC=/tmp/lx-office-erp
#hier wird das Debian-Paket gebaut:
-DST=/tmp/deb_test/package
+DST=/tmp/package
################################################
VER=`cat VERSION`
DEST=$DST/lx-office-erp_$VER-$NR-all
-FILES='
-usr/lib/lx-office-erp/
-usr/share/lx-office-erp/
-usr/share/doc/lx-office-erp/
-var/lib/lx-office-erp/spool/
-var/lib/lx-office-erp/users/
-var/lib/lx-office-erp/css/
-var/lib/lx-office-erp/xslt/
-var/lib/lx-office-erp/templates/
-var/lib/lx-office-erp/webdav/lieferantenbestellungen/
-var/lib/lx-office-erp/webdav/anfragen/
-var/lib/lx-office-erp/webdav/gutschriften/
-var/lib/lx-office-erp/webdav/einkaufsrechnungen/
-var/lib/lx-office-erp/webdav/rechnungen/
-var/lib/lx-office-erp/webdav/bestellungen/
-var/lib/lx-office-erp/webdav/angebote/
-usr/lib/lx-office-erp/
-usr/share/lx-office-erp/
-usr/share/doc/lx-office-erp/
-usr/share/man/man1/:lx-office-erp.1.gz
-etc/lx-office-erp/:lx-office-erp.cherokee.handler
-etc/lx-office-erp/:lx-office-erp.apache2.conf
-etc/lx-office-erp/:lx-office-erp.cherokee
-usr/bin/:lx-office-erp
-'
-
-for filespec in $FILES; do
- set - `echo $filespec | sed -e 's/:/ /g'`
- dir=$1
- file=$2
- mkdir -p $SRC/DEBIAN/$dir
- if [ -f $SRC/DEBIAN/files/$file ]; then
- cp $SRC/DEBIAN/files/$file $SRC/DEBIAN/$dir/$file
- else
- echo '1' > $SRC/DEBIAN/$dir/.dummy
- fi
-done
-
-SYMLINKS='
-css:/var/lib/lx-office-erp/css
-doc:/usr/share/doc/lx-office-erp/
-image:/usr/share/lx-office-erp
-spool:/var/lib/lx-office-erp/spool
-templates:/var/lib/lx-office-erp/templates
-users:/var/lib/lx-office-erp/users/
-webdav:/var/lib/lx-office-erp/webdav
-xslt:/var/lib/lx-office-erp/xslt
-'
-
-for symspec in $SYMLINKS; do
- set - `echo $symspec | sed -e 's/:/ /g'`
- src=$1
- tar=$2
-
- ln -s $tar $SRC/DEBIAN/usr/lib/lx-office-erp/$src
-done
-#fertig
mkdir -p $DEST
cd $DEST
#Struktur anlegen:
-cp -a $SRC/DEBIAN/* .
-rm ./mk*.sh
+cp -a $SRC/DEBIAN/DEBIAN .
+tar xzf $SRC/DEBIAN/struktur.tgz
#Dateien kopieren:
#aber keine fertigen Konfigurationen, nur *.default
__END__
+=encoding utf8
+
=head1 NAME
SL::Auth::Constants - COnstants for Auth module
This module provides status constants for authentication handling
-=head1 FUNCTIONS
-
=head1 BUGS
+none yet.
+
=head1 AUTHOR
+Sven Schöling E<lt>s.schoeling@linet-services.deE<gt>
+
=cut
use strict;
-use Readonly;
use Rose::DB::Object;
use List::MoreUtils qw(any);
return $class->meta->convention_manager->auto_manager_class_name($class);
}
-Readonly my %text_column_types => (text => 1, char => 1, varchar => 1);
+my %text_column_types = (text => 1, char => 1, varchar => 1);
sub assign_attributes {
my $self = shift;
package SL::DB::Shipto;
use strict;
-use Readonly;
use SL::DB::MetaSetup::Shipto;
-Readonly our @SHIPTO_VARIABLES => qw(shiptoname shiptostreet shiptozipcode shiptocity shiptocountry shiptocontact
- shiptophone shiptofax shiptoemail shiptodepartment_1 shiptodepartment_2);
+our @SHIPTO_VARIABLES = qw(shiptoname shiptostreet shiptozipcode shiptocity shiptocountry shiptocontact
+ shiptophone shiptofax shiptoemail shiptodepartment_1 shiptodepartment_2);
__PACKAGE__->meta->make_manager_class;
BEGIN {
unshift @INC, "modules/override"; # Use our own versions of various modules (e.g. YAML).
push @INC, "modules/fallback"; # Only use our own versions of modules if there's no system version.
- push @INC, "SL"; # FCGI won't find modules that are not properly named. Help it by inclduging SL
}
use CGI qw( -no_xhtml);
use SL::LxOfficeConf;
use SL::Locale;
use SL::Common;
+use SL::Form;
use SL::Helper::DateTime;
-use Form;
use List::Util qw(first);
use File::Basename;
my $numbytes = (-s $self->{tmpfile});
open(IN, $self->{tmpfile})
or $self->error($self->cleanup . "$self->{tmpfile} : $!");
+ binmode IN;
$self->{copies} = 1 unless $self->{media} eq 'printer';
package DateTime;
+use strict;
+
sub now_local {
return shift->now(time_zone => $::locale->get_local_time_zone);
}
if ($pkr->{pricegroup_id} eq $selectedpricegroup_id) {
$pkr->{selected} = ' selected';
}
- } elsif (($price_new != $form->{"sellprice_$i"}) and ($price_new ne 0) and defined $price_new) {
+ } elsif ( ($form->parse_amount($myconfig, $price_new)
+ != $form->parse_amount($myconfig, $form->{"sellprice_$i"}))
+ and ($price_new ne 0) and defined $price_new) {
# sellprice has changed
# when loading existing invoices $price_new is NULL
if ($pkr->{pricegroup_id} == 0) {
BEGIN {
@required_modules = (
- { name => "parent", url => "http://search.cpan.org/~corion/" },
- { name => "Archive::Zip", version => '1.16', url => "http://search.cpan.org/~adamk/" },
- { name => "Class::Accessor", version => '0.30', url => "http://search.cpan.org/~kasei/" },
- { name => "CGI::Ajax", version => '0.697', url => "http://search.cpan.org/~bct/" },
- { name => "DateTime", url => "http://search.cpan.org/~drolsky/" },
- { name => "DBI", version => '1.50', url => "http://search.cpan.org/~timb/" },
- { name => "DBD::Pg", version => '1.49', url => "http://search.cpan.org/~dbdpg/" },
- { name => "Email::Address", url => "http://search.cpan.org/~rjbs/" },
- { name => "FCGI", url => "http://search.cpan.org/~mstrout/" },
- { name => "List::MoreUtils", version => '0.21', url => "http://search.cpan.org/~vparseval/" },
- { name => "PDF::API2", version => '2.000', url => "http://search.cpan.org/~areibens/" },
- { name => "Readonly", url => "http://search.cpan.org/~roode/" },
- { name => "Rose::Object", url => "http://search.cpan.org/~jsiracusa/" },
- { name => "Rose::DB", url => "http://search.cpan.org/~jsiracusa/" },
- { name => "Rose::DB::Object", url => "http://search.cpan.org/~jsiracusa/" },
- { name => "Template", version => '2.18', url => "http://search.cpan.org/~abw/" },
- { name => "Text::CSV_XS", version => '0.23', url => "http://search.cpan.org/~hmbrand/" },
- { name => "Text::Iconv", version => '1.2', url => "http://search.cpan.org/~mpiotr/" },
- { name => "URI", version => '1.35', url => "http://search.cpan.org/~gaas/" },
- { name => "XML::Writer", version => '0.602', url => "http://search.cpan.org/~josephw/" },
- { name => "YAML", version => '0.62', url => "http://search.cpan.org/~ingy/" },
+ { name => "parent", url => "http://search.cpan.org/~corion/", debian => 'libparent-perl' },
+ { name => "Archive::Zip", version => '1.16', url => "http://search.cpan.org/~adamk/", debian => 'libarchive-zip-perl' },
+ { name => "Class::Accessor", version => '0.30', url => "http://search.cpan.org/~kasei/", debian => 'libclass-accessor-perl' },
+ { name => "CGI::Ajax", version => '0.697', url => "http://search.cpan.org/~bct/" }, # no debian package, ours contains bugfixes
+ { name => "DateTime", url => "http://search.cpan.org/~drolsky/", debian => 'libdatetime-perl' },
+ { name => "DBI", version => '1.50', url => "http://search.cpan.org/~timb/", debian => 'libdbi-perl' },
+ { name => "DBD::Pg", version => '1.49', url => "http://search.cpan.org/~dbdpg/", debian => 'libdbd-pg' },
+ { name => "Email::Address", url => "http://search.cpan.org/~rjbs/", debian => 'libemail-address-perl' },
+ { name => "FCGI", url => "http://search.cpan.org/~mstrout/", debian => 'libfcgi-perl' },
+ { name => "List::MoreUtils", version => '0.21', url => "http://search.cpan.org/~vparseval/", debian => 'liblist-moreutils-perl' },
+ { name => "PDF::API2", version => '2.000', url => "http://search.cpan.org/~areibens/", debian => 'libpdf-api2-perl' },
+ { name => "Rose::Object", url => "http://search.cpan.org/~jsiracusa/", debian => 'librose-object-perl' },
+ { name => "Rose::DB", url => "http://search.cpan.org/~jsiracusa/", debian => 'librose-db-perl' },
+ { name => "Rose::DB::Object", url => "http://search.cpan.org/~jsiracusa/", debian => 'librose-db-object-perl' },
+ { name => "Template", version => '2.18', url => "http://search.cpan.org/~abw/", debian => 'libtemplate-perl' },
+ { name => "Text::CSV_XS", version => '0.23', url => "http://search.cpan.org/~hmbrand/", debian => 'libtext-csv-xs-perl' },
+ { name => "Text::Iconv", version => '1.2', url => "http://search.cpan.org/~mpiotr/", debian => 'libtext-iconv-perl' },
+ { name => "URI", version => '1.35', url => "http://search.cpan.org/~gaas/", debian => 'liburi-perl' },
+ { name => "XML::Writer", version => '0.602', url => "http://search.cpan.org/~josephw/", debian => 'libxml-writer-perl' },
+ { name => "YAML", version => '0.62', url => "http://search.cpan.org/~ingy/", debian => 'libyaml-perl' },
);
@optional_modules = ();
my $keyword_pos = $pos - 1 + $tag_start_len;
- if ((substr($text, $keyword_pos, 2) eq 'if') || (substr($text, $keyword_pos, 3) eq 'foreach')) {
+ if ((substr($text, $keyword_pos, 2) eq 'if') || (substr($text, $keyword_pos, 7) eq 'foreach')) {
$depth++;
} elsif ((substr($text, $keyword_pos, 4) eq 'else') && (1 == $depth)) {
use Carp;
use List::MoreUtils qw(any none);
-use Readonly;
use SL::DBUtils;
use Rose::Object::MakeMethods::Generic
scalar => [ qw(type id number save dbh dbh_provided business_id) ],
);
-Readonly my @SUPPORTED_TYPES => qw(invoice credit_note customer vendor sales_delivery_order purchase_delivery_order sales_order purchase_order sales_quotation request_quotation);
+my @SUPPORTED_TYPES = qw(invoice credit_note customer vendor sales_delivery_order purchase_delivery_order sales_order purchase_order sales_quotation request_quotation);
sub new {
my $class = shift;
-2.6.2-beta1
+2.6.2-beta2
=head1 NAME
-<<<<<<< HEAD:bin/mozilla/arap.pl
-bin/mozilla/arap.pl - helper routines for invoiceing frontend.
-
-=head1 SYNOPSIS
-
-nothing yet
-
-=head1 DESCRIPTION
-
-nothing yet
-=======
arap.pl - helper functions or customer/vendor retrieval
=head1 SYNOPSIS
Don't use anyting in this file without extreme care, and even then be prepared for massive headaches.
It's a collection of helper routines that wrap the customer/vendor dropdown/textfield duality into something even complexer.
->>>>>>> 88f5a78... check_name erweitert um ein no_select flag. siehe perldoc bin/mozilla/arap.pl:bin/mozilla/arap.pl
=head1 FUNCTIONS
=head2 check_name customer|vendor
-<<<<<<< HEAD:bin/mozilla/arap.pl
check_name was originally meant to update the selected customer or vendor. The
way it does that has generted more hate than almost any other part of this
software.
=over 4
-=item
+=item *
It checks if a vendor or customer is given. No failsafe, vendor fallback if
$_[0] is something fancy.
-=item
+=item *
It assumes, that there is a field named customer or vendor in $form.
-=item
+=item *
It assumes, that this field is filled with name--id, and tries to split that.
sql ledger uses that combination to get ids into the select keys.
-=item
+=item *
It looks for a field selectcustomer or selectvendor in $form. sql ledger used
to store a copy of the html select in there. (again, don't ask)
-=item
+=item *
If this field exists, it looks for a field called oldcustomer or oldvendor, in
which the old name--id string was stored in sql ledger, and compares those.
-=item
+=item *
if they don't match, it will set customer_id or vendor_id in $form, load the
entry (which will clobber everything in $form named like a column in customer
oder vendor) and return.
-=item
+=item *
If there was no select* entry, it assumes that vclimit was lower than the
number of entries, and that an input field was generated. In that case the
splitting is omitted (since users don't generally include ids in entered names)
-=item
+=item *
It looks for a *_id field, and combines it with the given input into a name--id
entry and compares it to the old* entry. (Missing any of these will instantly
break check_namea.
-=item
+=item *
If those do not match, $form->get_name is called to get matching results.
get_name only matches by *number and name, not by id, don't try to get it to do
so.
-=item
+=item *
The results are stored in $form>{name_list} but a count is returned, and
checked.
-=item
+=item *
If only one result was found, *_id, * and old* are copied into $form, the entry
is loaded (like above, clobbering)
-=item
+=item *
If there is more than one, a selection dialog is rendered
-=item
+=item *
If none is found, an error is generated.
Since get_customer and get_vendor clobber a lot of fields, make sure what
changes exactly.
-=======
-This function will take the contents of $form->{vendor} or $form->{customer}, try to guess if there was a selectbox or not, and search for matching customer/vendors.
-This mostly works great, except for the case when there is more than one match.
-In that case check_name will display a select form, that will redirect to the
-original C<nextsub>. Unfortunately any hidden vars or input fields will be lost
-in the process unless saved before in a callback.
+=head3 select- version works fine, but things go awry when I use a textbox, any idea?
+
+If there is more than one match, check_name will display a select form, that
+will redirect to the original C<nextsub>. Unfortunately any hidden vars or
+input fields will be lost in the process unless saved before in a callback.
If you still want to use it, you can disable this feature, like this:
In that case multiple matches will trigger an error.
-=head1 BUGS
-
-=head1 AUTHOR
->>>>>>> 88f5a78... check_name erweitert um ein no_select flag. siehe perldoc bin/mozilla/arap.pl:bin/mozilla/arap.pl
+Otherwise you'll have to care to include a complete state in callback.
=cut
my $currency = $form->{currency};
invoice_links();
+ if ($form->{ordnumber}) {
+ require SL::DB::Order;
+ if (my $order = SL::DB::Manager::Order->find_by(ordnumber => $form->{ordnumber})) {
+ $order->load;
+ $form->{orddate} = $order->transdate_as_date;
+ $form->{$_} = $order->$_ for qw(payment_id salesman_id taxzone_id quonumber);
+ }
+ }
+
$form->{currency} = $currency;
$form->{exchangerate} = "";
$form->{forex} = $form->check_exchangerate(\%myconfig, $form->{currency}, $form->{invdate}, $buysell);
"ean" => $form->{ean},
"description" => $form->{description});
- $form->show_generic_error($locale->text("The selected warehouse is empty.")) if (0 == scalar(@contents));
+ if (0 == scalar(@contents)) {
+ $form->show_generic_error($locale->text("The selected warehouse is empty, or no stocked items where found that match the filter settings."));
+ }
my $all_units = AM->retrieve_units(\%myconfig, $form);
ist sie deutlich leichter zu lesen.
+=encoding utf8
+
=head1 FastCGI für Lx-Office
=head2 Was ist FastCGI?
Folgende Kombinationen sind getestet:
+ * Apache 2.2.11 (Ubuntu) und mod_fcgid.
* Apache 2.2.11 (Ubuntu) und mod_fastcgi.
- * Apache 2.2.11 (Ubuntu) und mod_fcgid:
Als Perl Backend wird das Modul FCGI.pm verwendet. Vorsicht: FCGI 0.69 und
höher ist extrem strict in der Behandlung von Unicode, und verweigert bestimmte
Zuerst muss das FastCGI-Modul aktiviert werden. Dies kann unter
Debian/Ubuntu z.B. mit folgendem Befehl geschehen:
- a2enmod fastcgi
+ a2enmod fcgid
bzw.
- a2enmod fcgid
+ a2enmod fastcgi
Die Konfiguration für die Verwendung von Lx-Office mit FastCGI erfolgt
durch Anpassung der vorhandenen Alias- und Directory-Direktiven. Dabei
("/path/to/lx-office-erp") und der URL unterschieden, unter der
Lx-Office im Webbrowser erreichbar ist ("/web/path/to/lx-office-erp").
-Folgendes Template funktioniert mit mod_fastcgi:
+Folgendes Template funktioniert mit mod_fcgid:
- AliasMatch ^/web/path/to/lx-office-erp/[^/]+\.pl /path/to/lx-office-erp/dispatcher.fpl
+ AliasMatch ^/web/path/to/lx-office-erp/[^/]+\.pl /path/to/lx-office-erp/dispatcher.fcgi
Alias /web/path/to/lx-office-erp/ /path/to/lx-office-erp/
<Directory /path/to/lx-office-erp>
AllowOverride All
- AddHandler fastcgi-script .fpl
Options ExecCGI Includes FollowSymlinks
Order Allow,Deny
Allow from All
Deny from All
</DirectoryMatch>
-...und für mod_fcgid muss die erste Zeile geändert werden in:
+Für mod_fastcgi muss ein AddHandler ergänzt werden und die erste Zeile geändert werden:
- AliasMatch ^/web/path/to/lx-office-erp/[^/]+\.pl /path/to/lx-office-erp/dispatcher.fcgi
+ AddHandler fastcgi-script .fpl
+ AliasMatch ^/web/path/to/lx-office-erp/[^/]+\.pl /path/to/lx-office-erp/dispatcher.fpl
+
+Das ganze sollte dann so aussehen:
+ AddHandler fastcgi-script .fpl
+ AliasMatch ^/web/path/to/lx-office-erp/[^/]+\.pl /path/to/lx-office-erp/dispatcher.fpl
+ Alias /web/path/to/lx-office-erp/ /path/to/lx-office-erp/
+
+ <Directory /path/to/lx-office-erp>
+ AllowOverride All
+ Options ExecCGI Includes FollowSymlinks
+ Order Allow,Deny
+ Allow from All
+ </Directory>
+
+ <DirectoryMatch /path/to/lx-office-erp/users>
+ Order Deny,Allow
+ Deny from All
+ </DirectoryMatch>
Hierdurch wird nur ein zentraler Dispatcher gestartet. Alle Zugriffe
auf die einzelnen Scripte werden auf diesen umgeleitet. Dadurch, dass
Es ist möglich die gleiche Lx-Office Version parallel unter cgi und fastcgi zu
-betreiben. Dafür bleiben Directorydirektiven bleiben wie oben beschrieben, die
-URLs werden aber umgeleitet:
+betreiben. Dafür bleiben die Directorydirektiven wie oben beschrieben, die URLs
+werden aber umgeleitet:
- # Zugriff ohne FastCGI
+ # Zugriff über cgi
Alias /web/path/to/lx-office-erp /path/to/lx-office-erp
- # Zugriff mit FastCGI:
- AliasMatch ^/web/path/to/lx-office-erp-fcgi/[^/]+\.pl /path/to/lx-office-erp/dispatcher.fpl
- Alias /web/path/to/lx-office-erp-fcgi/ /path/to/lx-office-erp/
+ # Zugriff mit mod_fastcgi:
+ AliasMatch ^/web/path/to/lx-office-erp-fcgid/[^/]+\.pl /path/to/lx-office-erp/dispatcher.fcgi
+ Alias /web/path/to/lx-office-erp-fcgid/ /path/to/lx-office-erp/
+
+ # Zugriff mit mod_fastcgi:
+ AliasMatch ^/web/path/to/lx-office-erp-fastcgi/[^/]+\.pl /path/to/lx-office-erp/dispatcher.fpl
+ Alias /web/path/to/lx-office-erp-fastcgi/ /path/to/lx-office-erp/
Dann ist unter C</web/path/to/lx-office-erp/> die normale Version erreichbar,
-und unter C</web/opath/to/lx-office-erp-fcgi/> die FastCGI Version.
+und unter C</web/opath/to/lx-office-erp-fcgid/> bzw.
+C</web/opath/to/lx-office-erp-fastcgi/> die FastCGI Version.
Achtung:
\input texinfo @c -*-texinfo-*-
@c %**start of header
-@documentencoding UTF-8
@setfilename INSTALL.info
+@documentencoding UTF-8
@settitle Lx-Office Installationsanleitung
@c %**end of header
@menu
* Aktuelle Hinweise:: Andere Informationsquellen als diese Anleitung
* Benötigte Software und Pakete:: Vorraussetzungen zum Betrieb von Lx-Office
-* Installation des Programmpaketes:: Installationsort, Berechtigungen
+* Manuelle Installation des Programmpaketes:: Installationsort, Berechtigungen
* Anpassung der PostgreSQL-Konfiguration:: Verschiedene Aspekte der Datenbankkonfiguration
* Apache-Konfiguration:: Einrichtung eines Aliases und Optionen für das Ausführen von CGI-Scripten
* Benutzerauthentifizierung und Administratorpasswort:: Einrichtung der Authentifizierungsdatenbank und der Passwortüberprüfung
@node Benötigte Software und Pakete
@chapter Benötigte Software und Pakete
-Zum Betrieb von Lx-Office werden zwingend ein Webserver (meist Apache) und ein Datenbankserver (PostgreSQL) benötigt.
+@menu
+* Betriebssystem:: Unterstützte Betriebsysteme und Hinweise für ältere Systeme
+* Pakete:: Benötigte Software und Perlpakete sowie deren Quellen
+@end menu
+
+@node Betriebssystem
+@section Betriebssystem
-Zusätzlich benötigt Lx-Office die folgenden Perl-Pakete, die nicht Bestandteil einer Standard-Perl-Installation sind:
+Lx-Office ist für Linux konzipiert, und sollte auf jedem unixoiden
+Betriebssystem zum Laufen zu kriegen sein. Getestet ist diese Version im
+speziellen auf Debian und Ubuntu, grundsätzlich wurde bei der Auswahl der
+Pakete aber darauf Rücksicht genommen, dass es ohne große Probleme auf den
+derzeit aktuellen verbreiteten Distributionen läuft.
+
+Anfang 2011 sind das folgende Systeme:
@itemize
@item
+Ubuntu 8.04 LTS Hardy Heron
+@item
+Ubuntu 9.10 Karmic Koala
+@item
+Ubuntu 10.04 Lucid Lynx
+@item
+Ubuntu 10.10 Maverick Meerkat
+@item
+Debian 5.0 Lenny
+@item
+Debian 6.0 Squeeze
+@item
+openSUSE 11.2
+@item
+openSUSE 11.3
+@item
+SuSE Linux Enterprice Server 11
+@item
+Fedora 13
+@item
+Fedora 14
+@end itemize
+
+Für die debianoiden Betriebssysteme existiert ein .deb, das deutlich einfacher
+zu installieren ist.
+
+Ubuntu 8.04 LTS hat zusätzlich die Schwierigkeit, dass die Module im Archiv
+recht alt sind, und das viele der benötigten Module nicht einfach zu
+installieren sind. Dafür sollte es kurz nach dem Release ein eigenes .deb
+geben.
+
+Alternativ dazu kann die normale Installation durchgeführt werden
+(@pxref{Manuelle Installation des Programmpaketes}), wenn vorher ein
+Kompatibilitätspaket installiert wird, das die fehlenden Pakete bereitstellt.
+Das Paket ist auf @uref{https://sourceforge.net/projects/lx-office/files/Lx-Office%20ERP/2.6.2/, Sourceforge} unter dem Namen @code{lx-erp-perl-libs-compat-v2.tar.gz} hinterlegt.
+
+Zur Installation das Paket in das entpackte Lx-Office Verzeichnis entpacken:
+
+@code{tar xzf lx-erp-perl-libs-compat-v2.tar.gz /path/to/lx-office/}
+
+Danach sollte der Installationscheck (@pxref{Pakete}) die enthaltenen Pakete erkennen.
+
+@node Pakete
+@section Pakete
+
+Zum Betrieb von Lx-Office werden zwingend ein Webserver (meist Apache)
+und ein Datenbankserver (PostgreSQL, mindestens v8.2) benötigt.
+
+Zusätzlich benötigt Lx-Office die folgenden Perl-Pakete, die nicht Bestandteil
+einer Standard-Perl-Installation sind:
+
+@itemize
+@item
+parent
+@item
Archive::Zip
@item
Class::Accessor
@item
PDF::API2
@item
-Readonly (benötigt) und Readonly::XS (optional)
-@item
Rose::Object
@item
Rose::DB
Gegenüber Version 2.6.0 sind zu dieser Liste 2 Pakete hinzugekommen, @code{URI}
und @code{XML::Writer} sind notwendig. Ohne startet Lx-Office nicht.
+Gegenüber Version 2.6.1 sind @code{parent}, @code{DateTime},
+@code{Rose::Object}, @code{Rose::DB} und @code{Rose::DB::Object} neu
+hinzugekommen. @code{IO::Wrap} wurde entfernt.
+
@code{Email::Address} und @code{List::MoreUtils} sind schon länger feste
Abhängigkeiten, wurden aber bisher mit Lx-Office mitgeliefert. Beide sind auch
in 2.6.1 weiterhin mit ausgeliefert, wurden in einer zukünftigen Version aber
Für Debian oder Ubuntu benötigen Sie diese Pakete:
-@code{apache2 postgresql libarchive-zip-perl libclass-accessor-perl libdatetime-perl libdbi-perl libdbd-pg-perl libpg-perl libemail-address-perl libio-stringy-perl liblist-moreutils-perl libpdf-api2-perl libtemplate-perl libtext-csv-xs-perl libtext-iconv-perl liburi-perl libxml-writer-perl libyaml-perl}
+@code{apache2 postgresql libparent-perl libarchive-zip-perl libclass-accessor-perl libdatetime-perl libdbi-perl libdbd-pg-perl libpg-perl libemail-address-perl liblist-moreutils-perl libpdf-api2-perl librose-object-perl librose-db-perl librose-db-object-perl libtemplate-perl libtext-csv-xs-perl libtext-iconv-perl liburi-perl libxml-writer-perl libyaml-perl}
Für Fedora Core benötigen Sie diese Pakete:
-@code{httpd postgresql-server perl-Class-Accessor perl-DateTime perl-DBI perl-DBD-Pg perl-Email-Address perl-IO-stringy perl-List-MoreUtils perl-PDF-API2 perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv perl-URI perl-XML-Writer perl-YAML}
+@code{httpd postgresql-server perl-parent perl-Class-Accessor perl-DateTime perl-DBI perl-DBD-Pg perl-Email-Address perl-List-MoreUtils perl-PDF-API2 perl-Rose-Object perl-Rose-DB perl-Rose-DB-Object perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv perl-URI perl-XML-Writer perl-YAML}
Für OpenSuSE benötigen Sie diese Pakete:
-@code{apache2 postgresql-server perl-Archive-Zip perl-Class-Accessor perl-DateTime perl-DBI perl-DBD-Pg perl-MailTools perl-IO-stringy perl-List-MoreUtils perl-PDF-API2 perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv perl-URI perl-XML-Writer perl-YAML}
+@code{apache2 postgresql-server perl-Archive-Zip perl-Class-Accessor perl-DateTime perl-DBI perl-DBD-Pg perl-MailTools perl-List-MoreUtils perl-PDF-API2 perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv perl-URI perl-XML-Writer perl-YAML}
+
+Bei openSuSE 11 ist @code{parent} bereits enthalten, und braucht nicht nachinstalliert werden. Die @code{Rose::*} Pakete sind derzeit nicht für SuSE gepackt, und müssen anderweitig nachinstalliert werden.
Lx-Office enthält ein Script, mit dem überprüft werden kann, ob alle
benötigten Perl-Module installiert sind. Der Aufruf lautet wie folgt:
@c ---------------------------------------------------------------
-@node Installation des Programmpaketes
-@chapter Installation des Programmpaketes
+@node Manuelle Installation des Programmpaketes
+@chapter Manuelle Installation des Programmpaketes
-Die Lx-Office ERP Installationsdatei (lxoffice-erp-2.6.1.tgz) wird im
+Die Lx-Office ERP Installationsdatei (lxoffice-erp-2.6.2.tgz) wird im
Dokumentenverzeichnis des Webservers (z.B. @code{/var/www/html/},
@code{/srv/www/htdocs} oder @code{/var/www/}) entpackt:
@code{cd /var/www
@*
-tar xvzf lxoffice-erp-2.6.1.tgz}
+tar xvzf lxoffice-erp-2.6.2.tgz}
Verändern Sie evtl. noch den Namen des Verzeichnisses mit
In der Datei @code{postgresql.conf}, die je nach Distribution in
verschiedenen Verzeichnissen liegen kann
(z.B. @code{/var/lib/pgsql/data/} oder @code{/etc/postgresql/}, muss
-sichergestellt werden, dass TCP/IP-Verbindungen aktiviert sind. Für
-PostgreSQL vor Version v8.0 lautete dieser Parameter
-
-@code{TCPIP_SOCKET = 1}
-
-Ab v8.0 wird das Verhalten hingegen über den neuen Parameter
-@code{listen_address} gesteuert. Laufen PostgreSQL und Lx-Office auf
-demselben Rechner, so kann dort der Wert @code{localhost} verwendet
-werden. Andernfalls müssen Datenbankverbindungen auch von anderen
-Rechnern aus zugelassen werden, was mit dem Wert \@code{*} geschieht.
+sichergestellt werden, dass TCP/IP-Verbindungen aktiviert sind. Das
+Verhalten wird über den Parameter @code{listen_address}
+gesteuert. Laufen PostgreSQL und Lx-Office auf demselben Rechner, so
+kann dort der Wert @code{localhost} verwendet werden. Andernfalls
+müssen Datenbankverbindungen auch von anderen Rechnern aus zugelassen
+werden, was mit dem Wert \@code{*} geschieht.
In der Datei @code{pg_hba.conf}, die im gleichen Verzeichnis wie die
@code{postgresql.conf} zu finden sein sollte, müssen die
@node Erweiterung für servergespeicherte Prozeduren
@section Erweiterung für servergespeicherte Prozeduren
-In der Datenbank @code{template1} muss die Unterstützung für
-servergespeicherte Prozeduren eingerichet werden. Melden Sie sich
-dafür als Benutzer ``postgres'' an der Datenbank an, und führen Sie
-die folgenden Kommandos aus:
+In der Datenbank @code{template1} muss die Unterstützung für servergespeicherte
+Prozeduren eingerichet werden. Melden Sie sich dafür als Benutzer ``postgres''
+an der Datenbank an, und führen Sie die folgenden Kommandos aus:
+
+@code{create language 'plpgsql';}
+
+Achtung: In älteren Postgresversionen (vor 8.0) muss der Handler für die
+Sprache manuell anlelegt werden, diese Versionen werden aber nicht mehr
+offiziell von Lx-Office unterstützt. Dafür dann die folgenden Kommandos:
@code{create function plpgsql_call_handler () returns opaque as '/usr/lib/pgsql/plpgsql.so' language 'c';
@*
-create language 'plpgsql' handler plpgsql_call_handler
-lancompiler 'pl/pgsql';}
-
-Bitte beachten Sie, dass der Pfad zur Datei @code{plpgsql.so} von
-Distribution zu Distribution verschiedlich sein kann. Bei
-Debian/Ubuntu befindet sie sich unter
-@code{/usr/lib/postgresql/lib/plpgsql.so}, bei Ubuntu 9.10 unter @code{/usr/lib/postgresql/8.4/lib/plpgsql.so}.
+create language 'plpgsql' handler plpgsql_call_handler lancompiler 'pl/pgsql';}
+Bitte beachten Sie, dass der Pfad zur Datei @code{plpgsql.so} von Distribution
+zu Distribution verschiedlich sein kann. Bei Debian/Ubuntu befindet sie sich
+unter @code{/usr/lib/postgresql/lib/plpgsql.so}.
@c ---------------------------------------------------------------
@node Apache-Konfiguration
@chapter Apache-Konfiguration
+Hinweis: Für einen deutlichen Performanceschub sorgt die Ausführung
+mittels FCGI. Die Einrichtung wird ausführlich in der Datei
+@code{INSTALL.fcgi} beschrieben.
+
Der Zugriff auf das Programmverzeichnis muss in der Apache
Webserverkonfigurationsdatei @code{httpd.conf} eingestellt
werden. Fügen Sie den folgenden Abschnitt dieser Datei oder einer
@node Migration alter Installationen
@section Migration alter Installationen
-Wenn Lx-Office 2.6.1 über eine ältere Version installiert wird, in der
+Wenn Lx-Office 2.6.2 über eine ältere Version installiert wird, in der
die Benutzerdaten noch im Dateisystem im Verzeichnis @code{users}
verwaltet wurden, so bietet Lx-Office die Möglichkeit, diese
Benutzerdaten automatisch in die Authentifizierungsdatenbank zu
@code{mv users/.openoffice.org2 users/.openoffice}
-Dieses Verzeichnis, wie auch das komplette @code{users}-Verzeichnis,
-muss vom Webserver beschreibbar sein. Dieses wurde in Schritt
-@code{Installation des Programmpakets} oben bereits erledigt, kann
-aber erneut überprüft werden, wenn die Konvertierung nach PDF
-fehlschlägt.
+Dieses Verzeichnis, wie auch das komplette @code{users}-Verzeichnis, muss vom
+Webserver beschreibbar sein. Dieses wurde bereits erledigt
+(@pxref{Manuelle Installation des Programmpaketes}), kann aber erneut überprüft
+werden, wenn die Konvertierung nach PDF fehlschlägt.
@c ---------------------------------------------------------------
Inhalt der Anleitung
1 Aktuelle Hinweise
2 Benötigte Software und Pakete
-3 Installation des Programmpaketes
+ 2.1 Betriebssystem
+ 2.2 Pakete
+3 Manuelle Installation des Programmpaketes
4 Anpassung der PostgreSQL-Konfiguration
4.1 Zeichensätze/die Verwendung von UTF-8
4.2 Änderungen an Konfigurationsdateien
2 Benötigte Software und Pakete
********************************
+2.1 Betriebssystem
+==================
+
+Lx-Office ist für Linux konzipiert, und sollte auf jedem unixoiden
+Betriebssystem zum Laufen zu kriegen sein. Getestet ist diese Version im
+speziellen auf Debian und Ubuntu, grundsätzlich wurde bei der Auswahl
+der Pakete aber darauf Rücksicht genommen, dass es ohne große Probleme
+auf den derzeit aktuellen verbreiteten Distributionen läuft.
+
+ Anfang 2011 sind das folgende Systeme:
+
+ * Ubuntu 8.04 LTS Hardy Heron
+
+ * Ubuntu 9.10 Karmic Koala
+
+ * Ubuntu 10.04 Lucid Lynx
+
+ * Ubuntu 10.10 Maverick Meerkat
+
+ * Debian 5.0 Lenny
+
+ * Debian 6.0 Squeeze
+
+ * openSUSE 11.2
+
+ * openSUSE 11.3
+
+ * SuSE Linux Enterprice Server 11
+
+ * Fedora 13
+
+ * Fedora 14
+
+ Für die debianoiden Betriebssysteme existiert ein .deb, das deutlich
+einfacher zu installieren ist.
+
+ Ubuntu 8.04 LTS hat zusätzlich die Schwierigkeit, dass die Module im
+Archiv recht alt sind, und das viele der benötigten Module nicht
+einfach zu installieren sind. Dafür sollte es kurz nach dem Release ein
+eigenes .deb geben.
+
+ Alternativ dazu kann die normale Installation durchgeführt werden
+(*note Manuelle Installation des Programmpaketes::), wenn vorher ein
+Kompatibilitätspaket installiert wird, das die fehlenden Pakete
+bereitstellt. Das Paket ist auf Sourceforge
+(https://sourceforge.net/projects/lx-office/files/Lx-Office%20ERP/2.6.2/)
+unter dem Namen `lx-erp-perl-libs-compat-v2.tar.gz' hinterlegt.
+
+ Zur Installation das Paket in das entpackte Lx-Office Verzeichnis
+entpacken:
+
+ `tar xzf lx-erp-perl-libs-compat-v2.tar.gz /path/to/lx-office/'
+
+ Danach sollte der Installationscheck (*note Pakete::) die
+enthaltenen Pakete erkennen.
+
+2.2 Pakete
+==========
+
Zum Betrieb von Lx-Office werden zwingend ein Webserver (meist Apache)
-und ein Datenbankserver (PostgreSQL) benötigt.
+und ein Datenbankserver (PostgreSQL, mindestens v8.2) benötigt.
Zusätzlich benötigt Lx-Office die folgenden Perl-Pakete, die nicht
Bestandteil einer Standard-Perl-Installation sind:
+ * parent
+
* Archive::Zip
* Class::Accessor
* PDF::API2
- * Readonly (benötigt) und Readonly::XS (optional)
-
* Rose::Object
* Rose::DB
Gegenüber Version 2.6.0 sind zu dieser Liste 2 Pakete hinzugekommen,
`URI' und `XML::Writer' sind notwendig. Ohne startet Lx-Office nicht.
+ Gegenüber Version 2.6.1 sind `parent', `DateTime', `Rose::Object',
+`Rose::DB' und `Rose::DB::Object' neu hinzugekommen. `IO::Wrap' wurde
+entfernt.
+
`Email::Address' und `List::MoreUtils' sind schon länger feste
Abhängigkeiten, wurden aber bisher mit Lx-Office mitgeliefert. Beide
sind auch in 2.6.1 weiterhin mit ausgeliefert, wurden in einer
Für Debian oder Ubuntu benötigen Sie diese Pakete:
- `apache2 postgresql libarchive-zip-perl libclass-accessor-perl
-libdatetime-perl libdbi-perl libdbd-pg-perl libpg-perl
-libemail-address-perl libio-stringy-perl liblist-moreutils-perl
-libpdf-api2-perl libtemplate-perl libtext-csv-xs-perl
+ `apache2 postgresql libparent-perl libarchive-zip-perl
+libclass-accessor-perl libdatetime-perl libdbi-perl libdbd-pg-perl
+libpg-perl libemail-address-perl liblist-moreutils-perl
+libpdf-api2-perl librose-object-perl librose-db-perl
+librose-db-object-perl libtemplate-perl libtext-csv-xs-perl
libtext-iconv-perl liburi-perl libxml-writer-perl libyaml-perl'
Für Fedora Core benötigen Sie diese Pakete:
- `httpd postgresql-server perl-Class-Accessor perl-DateTime perl-DBI
-perl-DBD-Pg perl-Email-Address perl-IO-stringy perl-List-MoreUtils
-perl-PDF-API2 perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv
-perl-URI perl-XML-Writer perl-YAML'
+ `httpd postgresql-server perl-parent perl-Class-Accessor
+perl-DateTime perl-DBI perl-DBD-Pg perl-Email-Address
+perl-List-MoreUtils perl-PDF-API2 perl-Rose-Object perl-Rose-DB
+perl-Rose-DB-Object perl-Template-Toolkit perl-Text-CSV_XS
+perl-Text-Iconv perl-URI perl-XML-Writer perl-YAML'
Für OpenSuSE benötigen Sie diese Pakete:
`apache2 postgresql-server perl-Archive-Zip perl-Class-Accessor
-perl-DateTime perl-DBI perl-DBD-Pg perl-MailTools perl-IO-stringy
-perl-List-MoreUtils perl-PDF-API2 perl-Template-Toolkit
-perl-Text-CSV_XS perl-Text-Iconv perl-URI perl-XML-Writer perl-YAML'
+perl-DateTime perl-DBI perl-DBD-Pg perl-MailTools perl-List-MoreUtils
+perl-PDF-API2 perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv
+perl-URI perl-XML-Writer perl-YAML'
+
+ Bei openSuSE 11 ist `parent' bereits enthalten, und braucht nicht
+nachinstalliert werden. Die `Rose::*' Pakete sind derzeit nicht für
+SuSE gepackt, und müssen anderweitig nachinstalliert werden.
Lx-Office enthält ein Script, mit dem überprüft werden kann, ob alle
benötigten Perl-Module installiert sind. Der Aufruf lautet wie folgt:
`./scripts/installation_check.pl'
-3 Installation des Programmpaketes
-**********************************
+3 Manuelle Installation des Programmpaketes
+*******************************************
-Die Lx-Office ERP Installationsdatei (lxoffice-erp-2.6.1.tgz) wird im
+Die Lx-Office ERP Installationsdatei (lxoffice-erp-2.6.2.tgz) wird im
Dokumentenverzeichnis des Webservers (z.B. `/var/www/html/',
`/srv/www/htdocs' oder `/var/www/') entpackt:
`cd /var/www
-tar xvzf lxoffice-erp-2.6.1.tgz'
+tar xvzf lxoffice-erp-2.6.2.tgz'
Verändern Sie evtl. noch den Namen des Verzeichnisses mit
In der Datei `postgresql.conf', die je nach Distribution in
verschiedenen Verzeichnissen liegen kann (z.B. `/var/lib/pgsql/data/'
oder `/etc/postgresql/', muss sichergestellt werden, dass
-TCP/IP-Verbindungen aktiviert sind. Für PostgreSQL vor Version v8.0
-lautete dieser Parameter
-
- `TCPIP_SOCKET = 1'
-
- Ab v8.0 wird das Verhalten hingegen über den neuen Parameter
-`listen_address' gesteuert. Laufen PostgreSQL und Lx-Office auf
-demselben Rechner, so kann dort der Wert `localhost' verwendet werden.
-Andernfalls müssen Datenbankverbindungen auch von anderen Rechnern aus
-zugelassen werden, was mit dem Wert \`*' geschieht.
+TCP/IP-Verbindungen aktiviert sind. Das Verhalten wird über den
+Parameter `listen_address' gesteuert. Laufen PostgreSQL und Lx-Office
+auf demselben Rechner, so kann dort der Wert `localhost' verwendet
+werden. Andernfalls müssen Datenbankverbindungen auch von anderen
+Rechnern aus zugelassen werden, was mit dem Wert \`*' geschieht.
In der Datei `pg_hba.conf', die im gleichen Verzeichnis wie die
`postgresql.conf' zu finden sein sollte, müssen die Berichtigungen für
als Benutzer "postgres" an der Datenbank an, und führen Sie die
folgenden Kommandos aus:
+ `create language 'plpgsql';'
+
+ Achtung: In älteren Postgresversionen (vor 8.0) muss der Handler für
+die Sprache manuell anlelegt werden, diese Versionen werden aber nicht
+mehr offiziell von Lx-Office unterstützt. Dafür dann die folgenden
+Kommandos:
+
`create function plpgsql_call_handler () returns opaque as
'/usr/lib/pgsql/plpgsql.so' language 'c';
create language 'plpgsql' handler plpgsql_call_handler lancompiler
Bitte beachten Sie, dass der Pfad zur Datei `plpgsql.so' von
Distribution zu Distribution verschiedlich sein kann. Bei Debian/Ubuntu
-befindet sie sich unter `/usr/lib/postgresql/lib/plpgsql.so', bei
-Ubuntu 9.10 unter `/usr/lib/postgresql/8.4/lib/plpgsql.so'.
+befindet sie sich unter `/usr/lib/postgresql/lib/plpgsql.so'.
4.4 Datenbankbenutzer anlegen
=============================
5 Apache-Konfiguration
**********************
-Der Zugriff auf das Programmverzeichnis muss in der Apache
+Hinweis: Für einen deutlichen Performanceschub sorgt die Ausführung
+mittels FCGI. Die Einrichtung wird ausführlich in der Datei
+`INSTALL.fcgi' beschrieben.
+
+ Der Zugriff auf das Programmverzeichnis muss in der Apache
Webserverkonfigurationsdatei `httpd.conf' eingestellt werden. Fügen Sie
den folgenden Abschnitt dieser Datei oder einer anderen Datei hinzu,
die beim Starten des Webservers eingelesen wird:
7.6 Migration alter Installationen
==================================
-Wenn Lx-Office 2.6.1 über eine ältere Version installiert wird, in der
+Wenn Lx-Office 2.6.2 über eine ältere Version installiert wird, in der
die Benutzerdaten noch im Dateisystem im Verzeichnis `users' verwaltet
wurden, so bietet Lx-Office die Möglichkeit, diese Benutzerdaten
automatisch in die Authentifizierungsdatenbank zu übernehmen. Dies
`mv users/.openoffice.org2 users/.openoffice'
Dieses Verzeichnis, wie auch das komplette `users'-Verzeichnis, muss
-vom Webserver beschreibbar sein. Dieses wurde in Schritt `Installation
-des Programmpakets' oben bereits erledigt, kann aber erneut überprüft
+vom Webserver beschreibbar sein. Dieses wurde bereits erledigt (*note
+Manuelle Installation des Programmpaketes::), kann aber erneut überprüft
werden, wenn die Konvertierung nach PDF fehlschlägt.
9 Lx-Office ERP verwenden
`http://localhost/lx-office-erp/admin.pl'
+
+\1f
+Local Variables:
+coding: utf-8
+End:
<html lang="en">
<head>
<title>Administratorpasswort - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort" title="Benutzerauthentifizierung und Administratorpasswort">
<link rel="prev" href="Grundlagen-zur-Benutzerauthentifizierung.html#Grundlagen-zur-Benutzerauthentifizierung" title="Grundlagen zur Benutzerauthentifizierung">
</head>
<body>
<div class="node">
-<a name="Administratorpasswort"></a>
<p>
-Next: <a rel="next" accesskey="n" href="Authentifizierungsdatenbank.html#Authentifizierungsdatenbank">Authentifizierungsdatenbank</a>,
-Previous: <a rel="previous" accesskey="p" href="Grundlagen-zur-Benutzerauthentifizierung.html#Grundlagen-zur-Benutzerauthentifizierung">Grundlagen zur Benutzerauthentifizierung</a>,
-Up: <a rel="up" accesskey="u" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
+<a name="Administratorpasswort"></a>
+nächstes: <a rel="next" accesskey="n" href="Authentifizierungsdatenbank.html#Authentifizierungsdatenbank">Authentifizierungsdatenbank</a>,
+voriges: <a rel="previous" accesskey="p" href="Grundlagen-zur-Benutzerauthentifizierung.html#Grundlagen-zur-Benutzerauthentifizierung">Grundlagen zur Benutzerauthentifizierung</a>,
+aufwärts: <a rel="up" accesskey="u" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
<hr>
</div>
<html lang="en">
<head>
<title>Aktuelle Hinweise - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="prev" href="index.html#Top" title="Top">
<link rel="next" href="Ben_00c3_00b6tigte-Software-und-Pakete.html#Ben_00c3_00b6tigte-Software-und-Pakete" title="Benötigte Software und Pakete">
</head>
<body>
<div class="node">
-<a name="Aktuelle-Hinweise"></a>
<p>
-Next: <a rel="next" accesskey="n" href="Ben_00c3_00b6tigte-Software-und-Pakete.html#Ben_00c3_00b6tigte-Software-und-Pakete">Benötigte Software und Pakete</a>,
-Previous: <a rel="previous" accesskey="p" href="index.html#Top">Top</a>,
-Up: <a rel="up" accesskey="u" href="index.html#Top">Top</a>
+<a name="Aktuelle-Hinweise"></a>
+nächstes: <a rel="next" accesskey="n" href="Ben_00c3_00b6tigte-Software-und-Pakete.html#Ben_00c3_00b6tigte-Software-und-Pakete">Benötigte Software und Pakete</a>,
+voriges: <a rel="previous" accesskey="p" href="index.html#Top">Top</a>,
+aufwärts: <a rel="up" accesskey="u" href="index.html#Top">Top</a>
<hr>
</div>
<html lang="en">
<head>
<title>Anlegen der Authentifizierungsdatenbank - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort" title="Benutzerauthentifizierung und Administratorpasswort">
<link rel="prev" href="Name-des-Session_002dCookies.html#Name-des-Session_002dCookies" title="Name des Session-Cookies">
</head>
<body>
<div class="node">
-<a name="Anlegen-der-Authentifizierungsdatenbank"></a>
<p>
-Previous: <a rel="previous" accesskey="p" href="Name-des-Session_002dCookies.html#Name-des-Session_002dCookies">Name des Session-Cookies</a>,
-Up: <a rel="up" accesskey="u" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
+<a name="Anlegen-der-Authentifizierungsdatenbank"></a>
+voriges: <a rel="previous" accesskey="p" href="Name-des-Session_002dCookies.html#Name-des-Session_002dCookies">Name des Session-Cookies</a>,
+aufwärts: <a rel="up" accesskey="u" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
<hr>
</div>
<html lang="en">
<head>
<title>Anpassung der PostgreSQL-Konfiguration - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
-<link rel="prev" href="Installation-des-Programmpaketes.html#Installation-des-Programmpaketes" title="Installation des Programmpaketes">
+<link rel="prev" href="Manuelle-Installation-des-Programmpaketes.html#Manuelle-Installation-des-Programmpaketes" title="Manuelle Installation des Programmpaketes">
<link rel="next" href="Apache_002dKonfiguration.html#Apache_002dKonfiguration" title="Apache-Konfiguration">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<meta http-equiv="Content-Style-Type" content="text/css">
</head>
<body>
<div class="node">
+<p>
<a name="Anpassung-der-PostgreSQL-Konfiguration"></a>
<a name="Anpassung-der-PostgreSQL_002dKonfiguration"></a>
-<p>
-Next: <a rel="next" accesskey="n" href="Apache_002dKonfiguration.html#Apache_002dKonfiguration">Apache-Konfiguration</a>,
-Previous: <a rel="previous" accesskey="p" href="Installation-des-Programmpaketes.html#Installation-des-Programmpaketes">Installation des Programmpaketes</a>,
-Up: <a rel="up" accesskey="u" href="index.html#Top">Top</a>
+nächstes: <a rel="next" accesskey="n" href="Apache_002dKonfiguration.html#Apache_002dKonfiguration">Apache-Konfiguration</a>,
+voriges: <a rel="previous" accesskey="p" href="Manuelle-Installation-des-Programmpaketes.html#Manuelle-Installation-des-Programmpaketes">Manuelle Installation des Programmpaketes</a>,
+aufwärts: <a rel="up" accesskey="u" href="index.html#Top">Top</a>
<hr>
</div>
<html lang="en">
<head>
<title>Apache-Konfiguration - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="prev" href="Anpassung-der-PostgreSQL_002dKonfiguration.html#Anpassung-der-PostgreSQL_002dKonfiguration" title="Anpassung der PostgreSQL-Konfiguration">
<link rel="next" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort" title="Benutzerauthentifizierung und Administratorpasswort">
</head>
<body>
<div class="node">
+<p>
<a name="Apache-Konfiguration"></a>
<a name="Apache_002dKonfiguration"></a>
-<p>
-Next: <a rel="next" accesskey="n" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>,
-Previous: <a rel="previous" accesskey="p" href="Anpassung-der-PostgreSQL_002dKonfiguration.html#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>,
-Up: <a rel="up" accesskey="u" href="index.html#Top">Top</a>
+nächstes: <a rel="next" accesskey="n" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>,
+voriges: <a rel="previous" accesskey="p" href="Anpassung-der-PostgreSQL_002dKonfiguration.html#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>,
+aufwärts: <a rel="up" accesskey="u" href="index.html#Top">Top</a>
<hr>
</div>
<h2 class="chapter">5 Apache-Konfiguration</h2>
-<p>Der Zugriff auf das Programmverzeichnis muss in der Apache
+<p>Hinweis: Für einen deutlichen Performanceschub sorgt die Ausführung
+mittels FCGI. Die Einrichtung wird ausführlich in der Datei
+<code>INSTALL.fcgi</code> beschrieben.
+
+ <p>Der Zugriff auf das Programmverzeichnis muss in der Apache
Webserverkonfigurationsdatei <code>httpd.conf</code> eingestellt
werden. Fügen Sie den folgenden Abschnitt dieser Datei oder einer
anderen Datei hinzu, die beim Starten des Webservers eingelesen wird:
<html lang="en">
<head>
<title>Authentifizierungsdatenbank - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort" title="Benutzerauthentifizierung und Administratorpasswort">
<link rel="prev" href="Administratorpasswort.html#Administratorpasswort" title="Administratorpasswort">
</head>
<body>
<div class="node">
-<a name="Authentifizierungsdatenbank"></a>
<p>
-Next: <a rel="next" accesskey="n" href="Passwort_00c3_00bcberpr_00c3_00bcfung.html#Passwort_00c3_00bcberpr_00c3_00bcfung">Passwortüberprüfung</a>,
-Previous: <a rel="previous" accesskey="p" href="Administratorpasswort.html#Administratorpasswort">Administratorpasswort</a>,
-Up: <a rel="up" accesskey="u" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
+<a name="Authentifizierungsdatenbank"></a>
+nächstes: <a rel="next" accesskey="n" href="Passwort_00c3_00bcberpr_00c3_00bcfung.html#Passwort_00c3_00bcberpr_00c3_00bcfung">Passwortüberprüfung</a>,
+voriges: <a rel="previous" accesskey="p" href="Administratorpasswort.html#Administratorpasswort">Administratorpasswort</a>,
+aufwärts: <a rel="up" accesskey="u" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
<hr>
</div>
<html lang="en">
<head>
<title>Benötigte Software und Pakete - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="prev" href="Aktuelle-Hinweise.html#Aktuelle-Hinweise" title="Aktuelle Hinweise">
-<link rel="next" href="Installation-des-Programmpaketes.html#Installation-des-Programmpaketes" title="Installation des Programmpaketes">
+<link rel="next" href="Manuelle-Installation-des-Programmpaketes.html#Manuelle-Installation-des-Programmpaketes" title="Manuelle Installation des Programmpaketes">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
</head>
<body>
<div class="node">
+<p>
<a name="Ben%c3%b6tigte-Software-und-Pakete"></a>
<a name="Ben_00c3_00b6tigte-Software-und-Pakete"></a>
-<p>
-Next: <a rel="next" accesskey="n" href="Installation-des-Programmpaketes.html#Installation-des-Programmpaketes">Installation des Programmpaketes</a>,
-Previous: <a rel="previous" accesskey="p" href="Aktuelle-Hinweise.html#Aktuelle-Hinweise">Aktuelle Hinweise</a>,
-Up: <a rel="up" accesskey="u" href="index.html#Top">Top</a>
+nächstes: <a rel="next" accesskey="n" href="Manuelle-Installation-des-Programmpaketes.html#Manuelle-Installation-des-Programmpaketes">Manuelle Installation des Programmpaketes</a>,
+voriges: <a rel="previous" accesskey="p" href="Aktuelle-Hinweise.html#Aktuelle-Hinweise">Aktuelle Hinweise</a>,
+aufwärts: <a rel="up" accesskey="u" href="index.html#Top">Top</a>
<hr>
</div>
<h2 class="chapter">2 Benötigte Software und Pakete</h2>
-<p>Zum Betrieb von Lx-Office werden zwingend ein Webserver (meist Apache) und ein Datenbankserver (PostgreSQL) benötigt.
-
- <p>Zusätzlich benötigt Lx-Office die folgenden Perl-Pakete, die nicht Bestandteil einer Standard-Perl-Installation sind:
-
- <ul>
-<li>Archive::Zip
-<li>Class::Accessor
-<li>CGI::Ajax
-<li>DateTime
-<li>DBI
-<li>DBD::Pg
-<li>Email::Address
-<li>List::MoreUtils
-<li>PDF::API2
-<li>Readonly (benötigt) und Readonly::XS (optional)
-<li>Rose::Object
-<li>Rose::DB
-<li>Rose::DB::Object
-<li>Template
-<li>Text::CSV_XS
-<li>Text::Iconv
-<li>URI
-<li>XML::Writer
-<li>YAML
+<ul class="menu">
+<li><a accesskey="1" href="Betriebssystem.html#Betriebssystem">Betriebssystem</a>: Unterstützte Betriebsysteme und Hinweise für ältere Systeme
+<li><a accesskey="2" href="Pakete.html#Pakete">Pakete</a>: Benötigte Software und Perlpakete sowie deren Quellen
</ul>
- <p>Gegenüber Version 2.6.0 sind zu dieser Liste 2 Pakete hinzugekommen, <code>URI</code>
-und <code>XML::Writer</code> sind notwendig. Ohne startet Lx-Office nicht.
-
- <p><code>Email::Address</code> und <code>List::MoreUtils</code> sind schon länger feste
-Abhängigkeiten, wurden aber bisher mit Lx-Office mitgeliefert. Beide sind auch
-in 2.6.1 weiterhin mit ausgeliefert, wurden in einer zukünftigen Version aber
-aus dem Paket entfernt werden. Es wird empfohlen diese Module zusammen mit den
-anderen als Bibliotheken zu installieren.
-
- <p><code>CGI::Ajax</code> ist nach wie vor in einer modifizierten Version mitgeliefert
-und braucht nicht nachinstalliert werden.
-
- <p>Die zu installierenden Pakete können in den verschiedenen Distributionen unterschiedlich heißen.
-
- <p>Für Debian oder Ubuntu benötigen Sie diese Pakete:
-
- <p><code>apache2 postgresql libarchive-zip-perl libclass-accessor-perl libdatetime-perl libdbi-perl libdbd-pg-perl libpg-perl libemail-address-perl libio-stringy-perl liblist-moreutils-perl libpdf-api2-perl libtemplate-perl libtext-csv-xs-perl libtext-iconv-perl liburi-perl libxml-writer-perl libyaml-perl</code>
-
- <p>Für Fedora Core benötigen Sie diese Pakete:
-
- <p><code>httpd postgresql-server perl-Class-Accessor perl-DateTime perl-DBI perl-DBD-Pg perl-Email-Address perl-IO-stringy perl-List-MoreUtils perl-PDF-API2 perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv perl-URI perl-XML-Writer perl-YAML</code>
-
- <p>Für OpenSuSE benötigen Sie diese Pakete:
-
- <p><code>apache2 postgresql-server perl-Archive-Zip perl-Class-Accessor perl-DateTime perl-DBI perl-DBD-Pg perl-MailTools perl-IO-stringy perl-List-MoreUtils perl-PDF-API2 perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv perl-URI perl-XML-Writer perl-YAML</code>
-
- <p>Lx-Office enthält ein Script, mit dem überprüft werden kann, ob alle
-benötigten Perl-Module installiert sind. Der Aufruf lautet wie folgt:
-
- <p><code>./scripts/installation_check.pl</code>
-
-<!-- -->
- </body></html>
+</body></html>
<html lang="en">
<head>
<title>Benutzer anlegen - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung" title="Benutzer- und Gruppenverwaltung">
<link rel="prev" href="Gruppen-anlegen.html#Gruppen-anlegen" title="Gruppen anlegen">
</head>
<body>
<div class="node">
-<a name="Benutzer-anlegen"></a>
<p>
-Next: <a rel="next" accesskey="n" href="Gruppenmitgliedschaften-verwalten.html#Gruppenmitgliedschaften-verwalten">Gruppenmitgliedschaften verwalten</a>,
-Previous: <a rel="previous" accesskey="p" href="Gruppen-anlegen.html#Gruppen-anlegen">Gruppen anlegen</a>,
-Up: <a rel="up" accesskey="u" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
+<a name="Benutzer-anlegen"></a>
+nächstes: <a rel="next" accesskey="n" href="Gruppenmitgliedschaften-verwalten.html#Gruppenmitgliedschaften-verwalten">Gruppenmitgliedschaften verwalten</a>,
+voriges: <a rel="previous" accesskey="p" href="Gruppen-anlegen.html#Gruppen-anlegen">Gruppen anlegen</a>,
+aufwärts: <a rel="up" accesskey="u" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
<hr>
</div>
<html lang="en">
<head>
<title>Benutzer- und Gruppenverwaltung - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="prev" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort" title="Benutzerauthentifizierung und Administratorpasswort">
<link rel="next" href="OpenDocument_002dVorlagen.html#OpenDocument_002dVorlagen" title="OpenDocument-Vorlagen">
</head>
<body>
<div class="node">
+<p>
<a name="Benutzer--und-Gruppenverwaltung"></a>
<a name="Benutzer_002d-und-Gruppenverwaltung"></a>
-<p>
-Next: <a rel="next" accesskey="n" href="OpenDocument_002dVorlagen.html#OpenDocument_002dVorlagen">OpenDocument-Vorlagen</a>,
-Previous: <a rel="previous" accesskey="p" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>,
-Up: <a rel="up" accesskey="u" href="index.html#Top">Top</a>
+nächstes: <a rel="next" accesskey="n" href="OpenDocument_002dVorlagen.html#OpenDocument_002dVorlagen">OpenDocument-Vorlagen</a>,
+voriges: <a rel="previous" accesskey="p" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>,
+aufwärts: <a rel="up" accesskey="u" href="index.html#Top">Top</a>
<hr>
</div>
<html lang="en">
<head>
<title>Benutzerauthentifizierung und Administratorpasswort - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="prev" href="Apache_002dKonfiguration.html#Apache_002dKonfiguration" title="Apache-Konfiguration">
<link rel="next" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung" title="Benutzer- und Gruppenverwaltung">
</head>
<body>
<div class="node">
-<a name="Benutzerauthentifizierung-und-Administratorpasswort"></a>
<p>
-Next: <a rel="next" accesskey="n" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>,
-Previous: <a rel="previous" accesskey="p" href="Apache_002dKonfiguration.html#Apache_002dKonfiguration">Apache-Konfiguration</a>,
-Up: <a rel="up" accesskey="u" href="index.html#Top">Top</a>
+<a name="Benutzerauthentifizierung-und-Administratorpasswort"></a>
+nächstes: <a rel="next" accesskey="n" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>,
+voriges: <a rel="previous" accesskey="p" href="Apache_002dKonfiguration.html#Apache_002dKonfiguration">Apache-Konfiguration</a>,
+aufwärts: <a rel="up" accesskey="u" href="index.html#Top">Top</a>
<hr>
</div>
--- /dev/null
+<html lang="en">
+<head>
+<title>Betriebssystem - Lx-Office Installationsanleitung</title>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<meta name="description" content="Lx-Office Installationsanleitung">
+<meta name="generator" content="makeinfo 4.11">
+<link title="Top" rel="start" href="index.html#Top">
+<link rel="up" href="Ben_00c3_00b6tigte-Software-und-Pakete.html#Ben_00c3_00b6tigte-Software-und-Pakete" title="Benötigte Software und Pakete">
+<link rel="next" href="Pakete.html#Pakete" title="Pakete">
+<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
+<meta http-equiv="Content-Style-Type" content="text/css">
+<style type="text/css"><!--
+ pre.display { font-family:inherit }
+ pre.format { font-family:inherit }
+ pre.smalldisplay { font-family:inherit; font-size:smaller }
+ pre.smallformat { font-family:inherit; font-size:smaller }
+ pre.smallexample { font-size:smaller }
+ pre.smalllisp { font-size:smaller }
+ span.sc { font-variant:small-caps }
+ span.roman { font-family:serif; font-weight:normal; }
+ span.sansserif { font-family:sans-serif; font-weight:normal; }
+--></style>
+</head>
+<body>
+<div class="node">
+<p>
+<a name="Betriebssystem"></a>
+nächstes: <a rel="next" accesskey="n" href="Pakete.html#Pakete">Pakete</a>,
+aufwärts: <a rel="up" accesskey="u" href="Ben_00c3_00b6tigte-Software-und-Pakete.html#Ben_00c3_00b6tigte-Software-und-Pakete">Benötigte Software und Pakete</a>
+<hr>
+</div>
+
+<h3 class="section">2.1 Betriebssystem</h3>
+
+<p>Lx-Office ist für Linux konzipiert, und sollte auf jedem unixoiden
+Betriebssystem zum Laufen zu kriegen sein. Getestet ist diese Version im
+speziellen auf Debian und Ubuntu, grundsätzlich wurde bei der Auswahl der
+Pakete aber darauf Rücksicht genommen, dass es ohne große Probleme auf den
+derzeit aktuellen verbreiteten Distributionen läuft.
+
+ <p>Anfang 2011 sind das folgende Systeme:
+
+ <ul>
+<li>Ubuntu 8.04 LTS Hardy Heron
+<li>Ubuntu 9.10 Karmic Koala
+<li>Ubuntu 10.04 Lucid Lynx
+<li>Ubuntu 10.10 Maverick Meerkat
+<li>Debian 5.0 Lenny
+<li>Debian 6.0 Squeeze
+<li>openSUSE 11.2
+<li>openSUSE 11.3
+<li>SuSE Linux Enterprice Server 11
+<li>Fedora 13
+<li>Fedora 14
+</ul>
+
+ <p>Für die debianoiden Betriebssysteme existiert ein .deb, das deutlich einfacher
+zu installieren ist.
+
+ <p>Ubuntu 8.04 LTS hat zusätzlich die Schwierigkeit, dass die Module im Archiv
+recht alt sind, und das viele der benötigten Module nicht einfach zu
+installieren sind. Dafür sollte es kurz nach dem Release ein eigenes .deb
+geben.
+
+ <p>Alternativ dazu kann die normale Installation durchgeführt werden
+(siehe <a href="Manuelle-Installation-des-Programmpaketes.html#Manuelle-Installation-des-Programmpaketes">Manuelle Installation des Programmpaketes</a>), wenn vorher ein
+Kompatibilitätspaket installiert wird, das die fehlenden Pakete bereitstellt.
+Das Paket ist auf <a href="https://sourceforge.net/projects/lx-office/files/Lx-Office%20ERP/2.6.2/">Sourceforge</a> unter dem Namen <code>lx-erp-perl-libs-compat-v2.tar.gz</code> hinterlegt.
+
+ <p>Zur Installation das Paket in das entpackte Lx-Office Verzeichnis entpacken:
+
+ <p><code>tar xzf lx-erp-perl-libs-compat-v2.tar.gz /path/to/lx-office/</code>
+
+ <p>Danach sollte der Installationscheck (siehe <a href="Pakete.html#Pakete">Pakete</a>) die enthaltenen Pakete erkennen.
+
+ </body></html>
+
<html lang="en">
<head>
<title>Datenbankbenutzer anlegen - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Anpassung-der-PostgreSQL_002dKonfiguration.html#Anpassung-der-PostgreSQL_002dKonfiguration" title="Anpassung der PostgreSQL-Konfiguration">
<link rel="prev" href="Erweiterung-f_00c3_00bcr-servergespeicherte-Prozeduren.html#Erweiterung-f_00c3_00bcr-servergespeicherte-Prozeduren" title="Erweiterung für servergespeicherte Prozeduren">
</head>
<body>
<div class="node">
-<a name="Datenbankbenutzer-anlegen"></a>
<p>
-Previous: <a rel="previous" accesskey="p" href="Erweiterung-f_00c3_00bcr-servergespeicherte-Prozeduren.html#Erweiterung-f_00c3_00bcr-servergespeicherte-Prozeduren">Erweiterung für servergespeicherte Prozeduren</a>,
-Up: <a rel="up" accesskey="u" href="Anpassung-der-PostgreSQL_002dKonfiguration.html#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>
+<a name="Datenbankbenutzer-anlegen"></a>
+voriges: <a rel="previous" accesskey="p" href="Erweiterung-f_00c3_00bcr-servergespeicherte-Prozeduren.html#Erweiterung-f_00c3_00bcr-servergespeicherte-Prozeduren">Erweiterung für servergespeicherte Prozeduren</a>,
+aufwärts: <a rel="up" accesskey="u" href="Anpassung-der-PostgreSQL_002dKonfiguration.html#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>
<hr>
</div>
<html lang="en">
<head>
<title>Datenbanken anlegen - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung" title="Benutzer- und Gruppenverwaltung">
<link rel="prev" href="Zusammenh_00c3_00a4nge.html#Zusammenh_00c3_00a4nge" title="Zusammenhänge">
</head>
<body>
<div class="node">
-<a name="Datenbanken-anlegen"></a>
<p>
-Next: <a rel="next" accesskey="n" href="Gruppen-anlegen.html#Gruppen-anlegen">Gruppen anlegen</a>,
-Previous: <a rel="previous" accesskey="p" href="Zusammenh_00c3_00a4nge.html#Zusammenh_00c3_00a4nge">Zusammenhänge</a>,
-Up: <a rel="up" accesskey="u" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
+<a name="Datenbanken-anlegen"></a>
+nächstes: <a rel="next" accesskey="n" href="Gruppen-anlegen.html#Gruppen-anlegen">Gruppen anlegen</a>,
+voriges: <a rel="previous" accesskey="p" href="Zusammenh_00c3_00a4nge.html#Zusammenh_00c3_00a4nge">Zusammenhänge</a>,
+aufwärts: <a rel="up" accesskey="u" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
<hr>
</div>
<html lang="en">
<head>
<title>Erweiterung für servergespeicherte Prozeduren - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Anpassung-der-PostgreSQL_002dKonfiguration.html#Anpassung-der-PostgreSQL_002dKonfiguration" title="Anpassung der PostgreSQL-Konfiguration">
<link rel="prev" href="_00c3_0084nderungen-an-Konfigurationsdateien.html#g_t_00c3_0084nderungen-an-Konfigurationsdateien" title="Änderungen an Konfigurationsdateien">
</head>
<body>
<div class="node">
+<p>
<a name="Erweiterung-f%c3%bcr-servergespeicherte-Prozeduren"></a>
<a name="Erweiterung-f_00c3_00bcr-servergespeicherte-Prozeduren"></a>
-<p>
-Next: <a rel="next" accesskey="n" href="Datenbankbenutzer-anlegen.html#Datenbankbenutzer-anlegen">Datenbankbenutzer anlegen</a>,
-Previous: <a rel="previous" accesskey="p" href="_00c3_0084nderungen-an-Konfigurationsdateien.html#g_t_00c3_0084nderungen-an-Konfigurationsdateien">Änderungen an Konfigurationsdateien</a>,
-Up: <a rel="up" accesskey="u" href="Anpassung-der-PostgreSQL_002dKonfiguration.html#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>
+nächstes: <a rel="next" accesskey="n" href="Datenbankbenutzer-anlegen.html#Datenbankbenutzer-anlegen">Datenbankbenutzer anlegen</a>,
+voriges: <a rel="previous" accesskey="p" href="_00c3_0084nderungen-an-Konfigurationsdateien.html#g_t_00c3_0084nderungen-an-Konfigurationsdateien">Änderungen an Konfigurationsdateien</a>,
+aufwärts: <a rel="up" accesskey="u" href="Anpassung-der-PostgreSQL_002dKonfiguration.html#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>
<hr>
</div>
<h3 class="section">4.3 Erweiterung für servergespeicherte Prozeduren</h3>
-<p>In der Datenbank <code>template1</code> muss die Unterstützung für
-servergespeicherte Prozeduren eingerichet werden. Melden Sie sich
-dafür als Benutzer “postgres” an der Datenbank an, und führen Sie
-die folgenden Kommandos aus:
+<p>In der Datenbank <code>template1</code> muss die Unterstützung für servergespeicherte
+Prozeduren eingerichet werden. Melden Sie sich dafür als Benutzer “postgres”
+an der Datenbank an, und führen Sie die folgenden Kommandos aus:
+
+ <p><code>create language 'plpgsql';</code>
+
+ <p>Achtung: In älteren Postgresversionen (vor 8.0) muss der Handler für die
+Sprache manuell anlelegt werden, diese Versionen werden aber nicht mehr
+offiziell von Lx-Office unterstützt. Dafür dann die folgenden Kommandos:
<p><code>create function plpgsql_call_handler () returns opaque as '/usr/lib/pgsql/plpgsql.so' language 'c';
<br>
-create language 'plpgsql' handler plpgsql_call_handler
-lancompiler 'pl/pgsql';</code>
+create language 'plpgsql' handler plpgsql_call_handler lancompiler 'pl/pgsql';</code>
- <p>Bitte beachten Sie, dass der Pfad zur Datei <code>plpgsql.so</code> von
-Distribution zu Distribution verschiedlich sein kann. Bei
-Debian/Ubuntu befindet sie sich unter
-<code>/usr/lib/postgresql/lib/plpgsql.so</code>, bei Ubuntu 9.10 unter <code>/usr/lib/postgresql/8.4/lib/plpgsql.so</code>.
+ <p>Bitte beachten Sie, dass der Pfad zur Datei <code>plpgsql.so</code> von Distribution
+zu Distribution verschiedlich sein kann. Bei Debian/Ubuntu befindet sie sich
+unter <code>/usr/lib/postgresql/lib/plpgsql.so</code>.
<!-- -->
</body></html>
<html lang="en">
<head>
<title>Grundlagen zur Benutzerauthentifizierung - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort" title="Benutzerauthentifizierung und Administratorpasswort">
<link rel="next" href="Administratorpasswort.html#Administratorpasswort" title="Administratorpasswort">
</head>
<body>
<div class="node">
-<a name="Grundlagen-zur-Benutzerauthentifizierung"></a>
<p>
-Next: <a rel="next" accesskey="n" href="Administratorpasswort.html#Administratorpasswort">Administratorpasswort</a>,
-Up: <a rel="up" accesskey="u" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
+<a name="Grundlagen-zur-Benutzerauthentifizierung"></a>
+nächstes: <a rel="next" accesskey="n" href="Administratorpasswort.html#Administratorpasswort">Administratorpasswort</a>,
+aufwärts: <a rel="up" accesskey="u" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
<hr>
</div>
<html lang="en">
<head>
<title>Gruppen anlegen - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung" title="Benutzer- und Gruppenverwaltung">
<link rel="prev" href="Datenbanken-anlegen.html#Datenbanken-anlegen" title="Datenbanken anlegen">
</head>
<body>
<div class="node">
-<a name="Gruppen-anlegen"></a>
<p>
-Next: <a rel="next" accesskey="n" href="Benutzer-anlegen.html#Benutzer-anlegen">Benutzer anlegen</a>,
-Previous: <a rel="previous" accesskey="p" href="Datenbanken-anlegen.html#Datenbanken-anlegen">Datenbanken anlegen</a>,
-Up: <a rel="up" accesskey="u" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
+<a name="Gruppen-anlegen"></a>
+nächstes: <a rel="next" accesskey="n" href="Benutzer-anlegen.html#Benutzer-anlegen">Benutzer anlegen</a>,
+voriges: <a rel="previous" accesskey="p" href="Datenbanken-anlegen.html#Datenbanken-anlegen">Datenbanken anlegen</a>,
+aufwärts: <a rel="up" accesskey="u" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
<hr>
</div>
<html lang="en">
<head>
<title>Gruppenmitgliedschaften verwalten - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung" title="Benutzer- und Gruppenverwaltung">
<link rel="prev" href="Benutzer-anlegen.html#Benutzer-anlegen" title="Benutzer anlegen">
</head>
<body>
<div class="node">
-<a name="Gruppenmitgliedschaften-verwalten"></a>
<p>
-Next: <a rel="next" accesskey="n" href="Migration-alter-Installationen.html#Migration-alter-Installationen">Migration alter Installationen</a>,
-Previous: <a rel="previous" accesskey="p" href="Benutzer-anlegen.html#Benutzer-anlegen">Benutzer anlegen</a>,
-Up: <a rel="up" accesskey="u" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
+<a name="Gruppenmitgliedschaften-verwalten"></a>
+nächstes: <a rel="next" accesskey="n" href="Migration-alter-Installationen.html#Migration-alter-Installationen">Migration alter Installationen</a>,
+voriges: <a rel="previous" accesskey="p" href="Benutzer-anlegen.html#Benutzer-anlegen">Benutzer anlegen</a>,
+aufwärts: <a rel="up" accesskey="u" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
<hr>
</div>
+++ /dev/null
-<html lang="en">
-<head>
-<title>Installation des Programmpaketes - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
-<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
-<link title="Top" rel="start" href="index.html#Top">
-<link rel="prev" href="Ben_00c3_00b6tigte-Software-und-Pakete.html#Ben_00c3_00b6tigte-Software-und-Pakete" title="Benötigte Software und Pakete">
-<link rel="next" href="Anpassung-der-PostgreSQL_002dKonfiguration.html#Anpassung-der-PostgreSQL_002dKonfiguration" title="Anpassung der PostgreSQL-Konfiguration">
-<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
-<meta http-equiv="Content-Style-Type" content="text/css">
-<style type="text/css"><!--
- pre.display { font-family:inherit }
- pre.format { font-family:inherit }
- pre.smalldisplay { font-family:inherit; font-size:smaller }
- pre.smallformat { font-family:inherit; font-size:smaller }
- pre.smallexample { font-size:smaller }
- pre.smalllisp { font-size:smaller }
- span.sc { font-variant:small-caps }
- span.roman { font-family:serif; font-weight:normal; }
- span.sansserif { font-family:sans-serif; font-weight:normal; }
---></style>
-</head>
-<body>
-<div class="node">
-<a name="Installation-des-Programmpaketes"></a>
-<p>
-Next: <a rel="next" accesskey="n" href="Anpassung-der-PostgreSQL_002dKonfiguration.html#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>,
-Previous: <a rel="previous" accesskey="p" href="Ben_00c3_00b6tigte-Software-und-Pakete.html#Ben_00c3_00b6tigte-Software-und-Pakete">Benötigte Software und Pakete</a>,
-Up: <a rel="up" accesskey="u" href="index.html#Top">Top</a>
-<hr>
-</div>
-
-<h2 class="chapter">3 Installation des Programmpaketes</h2>
-
-<p>Die Lx-Office ERP Installationsdatei (lxoffice-erp-2.6.1.tgz) wird im
-Dokumentenverzeichnis des Webservers (z.B. <code>/var/www/html/</code>,
-<code>/srv/www/htdocs</code> oder <code>/var/www/</code>) entpackt:
-
- <p><code>cd /var/www
-<br>
-tar xvzf lxoffice-erp-2.6.1.tgz</code>
-
- <p>Verändern Sie evtl. noch den Namen des Verzeichnisses mit
-
- <p><code>mv lxoffice-erp/ lx-erp/</code>
-
- <p>Alternativ können Sie auch einen Alias in der Webserverkonfiguration
-benutzen, um auf das tatsächliche Installationsverzeichnis zu
-verweisen.
-
- <p>Die Verzeichnisse <code>users</code>, <code>spool</code> und <code>webdav</code> müssen
-für den Benutzer beschreibbar sein, unter dem der Webserver läuft. Die
-restlichen Dateien müssen für diesen Benutzer lesbar sein. Der
-Benutzername ist bei verschiedenen Distributionen unterschiedlich
-(z.B. bei Debian/Ubuntu <code>www-data</code>, bei Fedora core <code>apache</code>
-oder bei OpenSuSE <code>wwwrun</code>).
-
- <p>Der folgende Befehl ändert den Besitzer für die oben genannten
-Verzeichnisse auf einem Debian/Ubuntu-System:
-
- <p><code>chown -R www-data lx-office-erp/users lx-office-erp/spool lx-office-erp/webdav</code>
-
- <p>Weiterhin muss der Webserver-Benutzer im Verzeichnis <code>templates</code> Verzeichnisse für
-jeden neuen Benutzer, der in lx-office angelegt wird, anlegen dürfen:
-
- <p><code>chgrp www-data lx-office-erp/templates; chmod g+w lx-office-erp/templates</code>
-
-<!-- -->
- </body></html>
-
<html lang="en">
<head>
<title>Lx-Office ERP verwenden - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="prev" href="OpenDocument_002dVorlagen.html#OpenDocument_002dVorlagen" title="OpenDocument-Vorlagen">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
</head>
<body>
<div class="node">
+<p>
<a name="Lx-Office-ERP-verwenden"></a>
<a name="Lx_002dOffice-ERP-verwenden"></a>
-<p>
-Previous: <a rel="previous" accesskey="p" href="OpenDocument_002dVorlagen.html#OpenDocument_002dVorlagen">OpenDocument-Vorlagen</a>,
-Up: <a rel="up" accesskey="u" href="index.html#Top">Top</a>
+voriges: <a rel="previous" accesskey="p" href="OpenDocument_002dVorlagen.html#OpenDocument_002dVorlagen">OpenDocument-Vorlagen</a>,
+aufwärts: <a rel="up" accesskey="u" href="index.html#Top">Top</a>
<hr>
</div>
--- /dev/null
+<html lang="en">
+<head>
+<title>Manuelle Installation des Programmpaketes - Lx-Office Installationsanleitung</title>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<meta name="description" content="Lx-Office Installationsanleitung">
+<meta name="generator" content="makeinfo 4.11">
+<link title="Top" rel="start" href="index.html#Top">
+<link rel="prev" href="Ben_00c3_00b6tigte-Software-und-Pakete.html#Ben_00c3_00b6tigte-Software-und-Pakete" title="Benötigte Software und Pakete">
+<link rel="next" href="Anpassung-der-PostgreSQL_002dKonfiguration.html#Anpassung-der-PostgreSQL_002dKonfiguration" title="Anpassung der PostgreSQL-Konfiguration">
+<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
+<meta http-equiv="Content-Style-Type" content="text/css">
+<style type="text/css"><!--
+ pre.display { font-family:inherit }
+ pre.format { font-family:inherit }
+ pre.smalldisplay { font-family:inherit; font-size:smaller }
+ pre.smallformat { font-family:inherit; font-size:smaller }
+ pre.smallexample { font-size:smaller }
+ pre.smalllisp { font-size:smaller }
+ span.sc { font-variant:small-caps }
+ span.roman { font-family:serif; font-weight:normal; }
+ span.sansserif { font-family:sans-serif; font-weight:normal; }
+--></style>
+</head>
+<body>
+<div class="node">
+<p>
+<a name="Manuelle-Installation-des-Programmpaketes"></a>
+nächstes: <a rel="next" accesskey="n" href="Anpassung-der-PostgreSQL_002dKonfiguration.html#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>,
+voriges: <a rel="previous" accesskey="p" href="Ben_00c3_00b6tigte-Software-und-Pakete.html#Ben_00c3_00b6tigte-Software-und-Pakete">Benötigte Software und Pakete</a>,
+aufwärts: <a rel="up" accesskey="u" href="index.html#Top">Top</a>
+<hr>
+</div>
+
+<h2 class="chapter">3 Manuelle Installation des Programmpaketes</h2>
+
+<p>Die Lx-Office ERP Installationsdatei (lxoffice-erp-2.6.2.tgz) wird im
+Dokumentenverzeichnis des Webservers (z.B. <code>/var/www/html/</code>,
+<code>/srv/www/htdocs</code> oder <code>/var/www/</code>) entpackt:
+
+ <p><code>cd /var/www
+<br>
+tar xvzf lxoffice-erp-2.6.2.tgz</code>
+
+ <p>Verändern Sie evtl. noch den Namen des Verzeichnisses mit
+
+ <p><code>mv lxoffice-erp/ lx-erp/</code>
+
+ <p>Alternativ können Sie auch einen Alias in der Webserverkonfiguration
+benutzen, um auf das tatsächliche Installationsverzeichnis zu
+verweisen.
+
+ <p>Die Verzeichnisse <code>users</code>, <code>spool</code> und <code>webdav</code> müssen
+für den Benutzer beschreibbar sein, unter dem der Webserver läuft. Die
+restlichen Dateien müssen für diesen Benutzer lesbar sein. Der
+Benutzername ist bei verschiedenen Distributionen unterschiedlich
+(z.B. bei Debian/Ubuntu <code>www-data</code>, bei Fedora core <code>apache</code>
+oder bei OpenSuSE <code>wwwrun</code>).
+
+ <p>Der folgende Befehl ändert den Besitzer für die oben genannten
+Verzeichnisse auf einem Debian/Ubuntu-System:
+
+ <p><code>chown -R www-data lx-office-erp/users lx-office-erp/spool lx-office-erp/webdav</code>
+
+ <p>Weiterhin muss der Webserver-Benutzer im Verzeichnis <code>templates</code> Verzeichnisse für
+jeden neuen Benutzer, der in lx-office angelegt wird, anlegen dürfen:
+
+ <p><code>chgrp www-data lx-office-erp/templates; chmod g+w lx-office-erp/templates</code>
+
+<!-- -->
+ </body></html>
+
<html lang="en">
<head>
<title>Migration alter Installationen - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung" title="Benutzer- und Gruppenverwaltung">
<link rel="prev" href="Gruppenmitgliedschaften-verwalten.html#Gruppenmitgliedschaften-verwalten" title="Gruppenmitgliedschaften verwalten">
</head>
<body>
<div class="node">
-<a name="Migration-alter-Installationen"></a>
<p>
-Previous: <a rel="previous" accesskey="p" href="Gruppenmitgliedschaften-verwalten.html#Gruppenmitgliedschaften-verwalten">Gruppenmitgliedschaften verwalten</a>,
-Up: <a rel="up" accesskey="u" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
+<a name="Migration-alter-Installationen"></a>
+voriges: <a rel="previous" accesskey="p" href="Gruppenmitgliedschaften-verwalten.html#Gruppenmitgliedschaften-verwalten">Gruppenmitgliedschaften verwalten</a>,
+aufwärts: <a rel="up" accesskey="u" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
<hr>
</div>
<h3 class="section">7.6 Migration alter Installationen</h3>
-<p>Wenn Lx-Office 2.6.1 über eine ältere Version installiert wird, in der
+<p>Wenn Lx-Office 2.6.2 über eine ältere Version installiert wird, in der
die Benutzerdaten noch im Dateisystem im Verzeichnis <code>users</code>
verwaltet wurden, so bietet Lx-Office die Möglichkeit, diese
Benutzerdaten automatisch in die Authentifizierungsdatenbank zu
<html lang="en">
<head>
<title>Name des Session-Cookies - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort" title="Benutzerauthentifizierung und Administratorpasswort">
<link rel="prev" href="Passwort_00c3_00bcberpr_00c3_00bcfung.html#Passwort_00c3_00bcberpr_00c3_00bcfung" title="Passwortüberprüfung">
</head>
<body>
<div class="node">
+<p>
<a name="Name-des-Session-Cookies"></a>
<a name="Name-des-Session_002dCookies"></a>
-<p>
-Next: <a rel="next" accesskey="n" href="Anlegen-der-Authentifizierungsdatenbank.html#Anlegen-der-Authentifizierungsdatenbank">Anlegen der Authentifizierungsdatenbank</a>,
-Previous: <a rel="previous" accesskey="p" href="Passwort_00c3_00bcberpr_00c3_00bcfung.html#Passwort_00c3_00bcberpr_00c3_00bcfung">Passwortüberprüfung</a>,
-Up: <a rel="up" accesskey="u" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
+nächstes: <a rel="next" accesskey="n" href="Anlegen-der-Authentifizierungsdatenbank.html#Anlegen-der-Authentifizierungsdatenbank">Anlegen der Authentifizierungsdatenbank</a>,
+voriges: <a rel="previous" accesskey="p" href="Passwort_00c3_00bcberpr_00c3_00bcfung.html#Passwort_00c3_00bcberpr_00c3_00bcfung">Passwortüberprüfung</a>,
+aufwärts: <a rel="up" accesskey="u" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
<hr>
</div>
<html lang="en">
<head>
<title>OpenDocument-Vorlagen - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="prev" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung" title="Benutzer- und Gruppenverwaltung">
<link rel="next" href="Lx_002dOffice-ERP-verwenden.html#Lx_002dOffice-ERP-verwenden" title="Lx-Office ERP verwenden">
</head>
<body>
<div class="node">
+<p>
<a name="OpenDocument-Vorlagen"></a>
<a name="OpenDocument_002dVorlagen"></a>
-<p>
-Next: <a rel="next" accesskey="n" href="Lx_002dOffice-ERP-verwenden.html#Lx_002dOffice-ERP-verwenden">Lx-Office ERP verwenden</a>,
-Previous: <a rel="previous" accesskey="p" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>,
-Up: <a rel="up" accesskey="u" href="index.html#Top">Top</a>
+nächstes: <a rel="next" accesskey="n" href="Lx_002dOffice-ERP-verwenden.html#Lx_002dOffice-ERP-verwenden">Lx-Office ERP verwenden</a>,
+voriges: <a rel="previous" accesskey="p" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>,
+aufwärts: <a rel="up" accesskey="u" href="index.html#Top">Top</a>
<hr>
</div>
<p><code>mv users/.openoffice.org2 users/.openoffice</code>
- <p>Dieses Verzeichnis, wie auch das komplette <code>users</code>-Verzeichnis,
-muss vom Webserver beschreibbar sein. Dieses wurde in Schritt
-<code>Installation des Programmpakets</code> oben bereits erledigt, kann
-aber erneut überprüft werden, wenn die Konvertierung nach PDF
-fehlschlägt.
+ <p>Dieses Verzeichnis, wie auch das komplette <code>users</code>-Verzeichnis, muss vom
+Webserver beschreibbar sein. Dieses wurde bereits erledigt
+(siehe <a href="Manuelle-Installation-des-Programmpaketes.html#Manuelle-Installation-des-Programmpaketes">Manuelle Installation des Programmpaketes</a>), kann aber erneut überprüft
+werden, wenn die Konvertierung nach PDF fehlschlägt.
<!-- -->
</body></html>
--- /dev/null
+<html lang="en">
+<head>
+<title>Pakete - Lx-Office Installationsanleitung</title>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
+<meta name="description" content="Lx-Office Installationsanleitung">
+<meta name="generator" content="makeinfo 4.11">
+<link title="Top" rel="start" href="index.html#Top">
+<link rel="up" href="Ben_00c3_00b6tigte-Software-und-Pakete.html#Ben_00c3_00b6tigte-Software-und-Pakete" title="Benötigte Software und Pakete">
+<link rel="prev" href="Betriebssystem.html#Betriebssystem" title="Betriebssystem">
+<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
+<meta http-equiv="Content-Style-Type" content="text/css">
+<style type="text/css"><!--
+ pre.display { font-family:inherit }
+ pre.format { font-family:inherit }
+ pre.smalldisplay { font-family:inherit; font-size:smaller }
+ pre.smallformat { font-family:inherit; font-size:smaller }
+ pre.smallexample { font-size:smaller }
+ pre.smalllisp { font-size:smaller }
+ span.sc { font-variant:small-caps }
+ span.roman { font-family:serif; font-weight:normal; }
+ span.sansserif { font-family:sans-serif; font-weight:normal; }
+--></style>
+</head>
+<body>
+<div class="node">
+<p>
+<a name="Pakete"></a>
+voriges: <a rel="previous" accesskey="p" href="Betriebssystem.html#Betriebssystem">Betriebssystem</a>,
+aufwärts: <a rel="up" accesskey="u" href="Ben_00c3_00b6tigte-Software-und-Pakete.html#Ben_00c3_00b6tigte-Software-und-Pakete">Benötigte Software und Pakete</a>
+<hr>
+</div>
+
+<h3 class="section">2.2 Pakete</h3>
+
+<p>Zum Betrieb von Lx-Office werden zwingend ein Webserver (meist Apache)
+und ein Datenbankserver (PostgreSQL, mindestens v8.2) benötigt.
+
+ <p>Zusätzlich benötigt Lx-Office die folgenden Perl-Pakete, die nicht Bestandteil
+einer Standard-Perl-Installation sind:
+
+ <ul>
+<li>parent
+<li>Archive::Zip
+<li>Class::Accessor
+<li>CGI::Ajax
+<li>DateTime
+<li>DBI
+<li>DBD::Pg
+<li>Email::Address
+<li>List::MoreUtils
+<li>PDF::API2
+<li>Rose::Object
+<li>Rose::DB
+<li>Rose::DB::Object
+<li>Template
+<li>Text::CSV_XS
+<li>Text::Iconv
+<li>URI
+<li>XML::Writer
+<li>YAML
+</ul>
+
+ <p>Gegenüber Version 2.6.0 sind zu dieser Liste 2 Pakete hinzugekommen, <code>URI</code>
+und <code>XML::Writer</code> sind notwendig. Ohne startet Lx-Office nicht.
+
+ <p>Gegenüber Version 2.6.1 sind <code>parent</code>, <code>DateTime</code>,
+<code>Rose::Object</code>, <code>Rose::DB</code> und <code>Rose::DB::Object</code> neu
+hinzugekommen. <code>IO::Wrap</code> wurde entfernt.
+
+ <p><code>Email::Address</code> und <code>List::MoreUtils</code> sind schon länger feste
+Abhängigkeiten, wurden aber bisher mit Lx-Office mitgeliefert. Beide sind auch
+in 2.6.1 weiterhin mit ausgeliefert, wurden in einer zukünftigen Version aber
+aus dem Paket entfernt werden. Es wird empfohlen diese Module zusammen mit den
+anderen als Bibliotheken zu installieren.
+
+ <p><code>CGI::Ajax</code> ist nach wie vor in einer modifizierten Version mitgeliefert
+und braucht nicht nachinstalliert werden.
+
+ <p>Die zu installierenden Pakete können in den verschiedenen Distributionen unterschiedlich heißen.
+
+ <p>Für Debian oder Ubuntu benötigen Sie diese Pakete:
+
+ <p><code>apache2 postgresql libparent-perl libarchive-zip-perl libclass-accessor-perl libdatetime-perl libdbi-perl libdbd-pg-perl libpg-perl libemail-address-perl liblist-moreutils-perl libpdf-api2-perl librose-object-perl librose-db-perl librose-db-object-perl libtemplate-perl libtext-csv-xs-perl libtext-iconv-perl liburi-perl libxml-writer-perl libyaml-perl</code>
+
+ <p>Für Fedora Core benötigen Sie diese Pakete:
+
+ <p><code>httpd postgresql-server perl-parent perl-Class-Accessor perl-DateTime perl-DBI perl-DBD-Pg perl-Email-Address perl-List-MoreUtils perl-PDF-API2 perl-Rose-Object perl-Rose-DB perl-Rose-DB-Object perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv perl-URI perl-XML-Writer perl-YAML</code>
+
+ <p>Für OpenSuSE benötigen Sie diese Pakete:
+
+ <p><code>apache2 postgresql-server perl-Archive-Zip perl-Class-Accessor perl-DateTime perl-DBI perl-DBD-Pg perl-MailTools perl-List-MoreUtils perl-PDF-API2 perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv perl-URI perl-XML-Writer perl-YAML</code>
+
+ <p>Bei openSuSE 11 ist <code>parent</code> bereits enthalten, und braucht nicht nachinstalliert werden. Die <code>Rose::*</code> Pakete sind derzeit nicht für SuSE gepackt, und müssen anderweitig nachinstalliert werden.
+
+ <p>Lx-Office enthält ein Script, mit dem überprüft werden kann, ob alle
+benötigten Perl-Module installiert sind. Der Aufruf lautet wie folgt:
+
+ <p><code>./scripts/installation_check.pl</code>
+
+<!-- -->
+ </body></html>
+
<html lang="en">
<head>
<title>Passwortüberprüfung - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort" title="Benutzerauthentifizierung und Administratorpasswort">
<link rel="prev" href="Authentifizierungsdatenbank.html#Authentifizierungsdatenbank" title="Authentifizierungsdatenbank">
</head>
<body>
<div class="node">
+<p>
<a name="Passwort%c3%bcberpr%c3%bcfung"></a>
<a name="Passwort_00c3_00bcberpr_00c3_00bcfung"></a>
-<p>
-Next: <a rel="next" accesskey="n" href="Name-des-Session_002dCookies.html#Name-des-Session_002dCookies">Name des Session-Cookies</a>,
-Previous: <a rel="previous" accesskey="p" href="Authentifizierungsdatenbank.html#Authentifizierungsdatenbank">Authentifizierungsdatenbank</a>,
-Up: <a rel="up" accesskey="u" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
+nächstes: <a rel="next" accesskey="n" href="Name-des-Session_002dCookies.html#Name-des-Session_002dCookies">Name des Session-Cookies</a>,
+voriges: <a rel="previous" accesskey="p" href="Authentifizierungsdatenbank.html#Authentifizierungsdatenbank">Authentifizierungsdatenbank</a>,
+aufwärts: <a rel="up" accesskey="u" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>
<hr>
</div>
<html lang="en">
<head>
<title>Zeichensätze/die Verwendung von UTF-8 - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Anpassung-der-PostgreSQL_002dKonfiguration.html#Anpassung-der-PostgreSQL_002dKonfiguration" title="Anpassung der PostgreSQL-Konfiguration">
<link rel="next" href="_00c3_0084nderungen-an-Konfigurationsdateien.html#g_t_00c3_0084nderungen-an-Konfigurationsdateien" title="Änderungen an Konfigurationsdateien">
</head>
<body>
<div class="node">
+<p>
<a name="Zeichens%c3%a4tze%2fdie-Verwendung-von-UTF-8"></a>
<a name="Zeichens_00c3_00a4tze_002fdie-Verwendung-von-UTF_002d8"></a>
-<p>
-Next: <a rel="next" accesskey="n" href="_00c3_0084nderungen-an-Konfigurationsdateien.html#g_t_00c3_0084nderungen-an-Konfigurationsdateien">Änderungen an Konfigurationsdateien</a>,
-Up: <a rel="up" accesskey="u" href="Anpassung-der-PostgreSQL_002dKonfiguration.html#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>
+nächstes: <a rel="next" accesskey="n" href="_00c3_0084nderungen-an-Konfigurationsdateien.html#g_t_00c3_0084nderungen-an-Konfigurationsdateien">Änderungen an Konfigurationsdateien</a>,
+aufwärts: <a rel="up" accesskey="u" href="Anpassung-der-PostgreSQL_002dKonfiguration.html#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>
<hr>
</div>
<html lang="en">
<head>
<title>Zusammenhänge - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung" title="Benutzer- und Gruppenverwaltung">
<link rel="next" href="Datenbanken-anlegen.html#Datenbanken-anlegen" title="Datenbanken anlegen">
</head>
<body>
<div class="node">
+<p>
<a name="Zusammenh%c3%a4nge"></a>
<a name="Zusammenh_00c3_00a4nge"></a>
-<p>
-Next: <a rel="next" accesskey="n" href="Datenbanken-anlegen.html#Datenbanken-anlegen">Datenbanken anlegen</a>,
-Up: <a rel="up" accesskey="u" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
+nächstes: <a rel="next" accesskey="n" href="Datenbanken-anlegen.html#Datenbanken-anlegen">Datenbanken anlegen</a>,
+aufwärts: <a rel="up" accesskey="u" href="Benutzer_002d-und-Gruppenverwaltung.html#Benutzer_002d-und-Gruppenverwaltung">Benutzer- und Gruppenverwaltung</a>
<hr>
</div>
<html lang="en">
<head>
<title>Änderungen an Konfigurationsdateien - Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Anpassung-der-PostgreSQL_002dKonfiguration.html#Anpassung-der-PostgreSQL_002dKonfiguration" title="Anpassung der PostgreSQL-Konfiguration">
<link rel="prev" href="Zeichens_00c3_00a4tze_002fdie-Verwendung-von-UTF_002d8.html#Zeichens_00c3_00a4tze_002fdie-Verwendung-von-UTF_002d8" title="Zeichensätze/die Verwendung von UTF-8">
</head>
<body>
<div class="node">
+<p>
<a name="%c3%84nderungen-an-Konfigurationsdateien"></a>
<a name="g_t_00c3_0084nderungen-an-Konfigurationsdateien"></a>
-<p>
-Next: <a rel="next" accesskey="n" href="Erweiterung-f_00c3_00bcr-servergespeicherte-Prozeduren.html#Erweiterung-f_00c3_00bcr-servergespeicherte-Prozeduren">Erweiterung für servergespeicherte Prozeduren</a>,
-Previous: <a rel="previous" accesskey="p" href="Zeichens_00c3_00a4tze_002fdie-Verwendung-von-UTF_002d8.html#Zeichens_00c3_00a4tze_002fdie-Verwendung-von-UTF_002d8">Zeichensätze/die Verwendung von UTF-8</a>,
-Up: <a rel="up" accesskey="u" href="Anpassung-der-PostgreSQL_002dKonfiguration.html#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>
+nächstes: <a rel="next" accesskey="n" href="Erweiterung-f_00c3_00bcr-servergespeicherte-Prozeduren.html#Erweiterung-f_00c3_00bcr-servergespeicherte-Prozeduren">Erweiterung für servergespeicherte Prozeduren</a>,
+voriges: <a rel="previous" accesskey="p" href="Zeichens_00c3_00a4tze_002fdie-Verwendung-von-UTF_002d8.html#Zeichens_00c3_00a4tze_002fdie-Verwendung-von-UTF_002d8">Zeichensätze/die Verwendung von UTF-8</a>,
+aufwärts: <a rel="up" accesskey="u" href="Anpassung-der-PostgreSQL_002dKonfiguration.html#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>
<hr>
</div>
<p>In der Datei <code>postgresql.conf</code>, die je nach Distribution in
verschiedenen Verzeichnissen liegen kann
(z.B. <code>/var/lib/pgsql/data/</code> oder <code>/etc/postgresql/</code>, muss
-sichergestellt werden, dass TCP/IP-Verbindungen aktiviert sind. Für
-PostgreSQL vor Version v8.0 lautete dieser Parameter
-
- <p><code>TCPIP_SOCKET = 1</code>
-
- <p>Ab v8.0 wird das Verhalten hingegen über den neuen Parameter
-<code>listen_address</code> gesteuert. Laufen PostgreSQL und Lx-Office auf
-demselben Rechner, so kann dort der Wert <code>localhost</code> verwendet
-werden. Andernfalls müssen Datenbankverbindungen auch von anderen
-Rechnern aus zugelassen werden, was mit dem Wert \<code>*</code> geschieht.
+sichergestellt werden, dass TCP/IP-Verbindungen aktiviert sind. Das
+Verhalten wird über den Parameter <code>listen_address</code>
+gesteuert. Laufen PostgreSQL und Lx-Office auf demselben Rechner, so
+kann dort der Wert <code>localhost</code> verwendet werden. Andernfalls
+müssen Datenbankverbindungen auch von anderen Rechnern aus zugelassen
+werden, was mit dem Wert \<code>*</code> geschieht.
<p>In der Datei <code>pg_hba.conf</code>, die im gleichen Verzeichnis wie die
<code>postgresql.conf</code> zu finden sein sollte, müssen die
<html lang="en">
<head>
<title>Lx-Office Installationsanleitung</title>
-<meta http-equiv="Content-Type" content="text/html">
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="description" content="Lx-Office Installationsanleitung">
-<meta name="generator" content="makeinfo 4.13">
+<meta name="generator" content="makeinfo 4.11">
<link title="Top" rel="start" href="#Top">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<meta http-equiv="Content-Style-Type" content="text/css">
<li><a name="toc_Top" href="index.html#Top">Inhalt der Anleitung</a>
<li><a name="toc_Aktuelle-Hinweise" href="Aktuelle-Hinweise.html#Aktuelle-Hinweise">1 Aktuelle Hinweise</a>
<li><a name="toc_Ben_00c3_00b6tigte-Software-und-Pakete" href="Ben_00c3_00b6tigte-Software-und-Pakete.html#Ben_00c3_00b6tigte-Software-und-Pakete">2 Benötigte Software und Pakete</a>
-<li><a name="toc_Installation-des-Programmpaketes" href="Installation-des-Programmpaketes.html#Installation-des-Programmpaketes">3 Installation des Programmpaketes</a>
+<ul>
+<li><a href="Betriebssystem.html#Betriebssystem">2.1 Betriebssystem</a>
+<li><a href="Pakete.html#Pakete">2.2 Pakete</a>
+</li></ul>
+<li><a name="toc_Manuelle-Installation-des-Programmpaketes" href="Manuelle-Installation-des-Programmpaketes.html#Manuelle-Installation-des-Programmpaketes">3 Manuelle Installation des Programmpaketes</a>
<li><a name="toc_Anpassung-der-PostgreSQL_002dKonfiguration" href="Anpassung-der-PostgreSQL_002dKonfiguration.html#Anpassung-der-PostgreSQL_002dKonfiguration">4 Anpassung der PostgreSQL-Konfiguration</a>
<ul>
<li><a href="Zeichens_00c3_00a4tze_002fdie-Verwendung-von-UTF_002d8.html#Zeichens_00c3_00a4tze_002fdie-Verwendung-von-UTF_002d8">4.1 Zeichensätze/die Verwendung von UTF-8</a>
<div class="node">
-<a name="Top"></a>
<p>
-Next: <a rel="next" accesskey="n" href="Aktuelle-Hinweise.html#Aktuelle-Hinweise">Aktuelle Hinweise</a>,
-Up: <a rel="up" accesskey="u" href="../index.html#dir">(dir)</a>
+<a name="Top"></a>
+nächstes: <a rel="next" accesskey="n" href="Aktuelle-Hinweise.html#Aktuelle-Hinweise">Aktuelle Hinweise</a>,
+aufwärts: <a rel="up" accesskey="u" href="../index.html#dir">(dir)</a>
<hr>
</div>
<ul class="menu">
<li><a accesskey="1" href="Aktuelle-Hinweise.html#Aktuelle-Hinweise">Aktuelle Hinweise</a>: Andere Informationsquellen als diese Anleitung
<li><a accesskey="2" href="Ben_00c3_00b6tigte-Software-und-Pakete.html#Ben_00c3_00b6tigte-Software-und-Pakete">Benötigte Software und Pakete</a>: Vorraussetzungen zum Betrieb von Lx-Office
-<li><a accesskey="3" href="Installation-des-Programmpaketes.html#Installation-des-Programmpaketes">Installation des Programmpaketes</a>: Installationsort, Berechtigungen
+<li><a accesskey="3" href="Manuelle-Installation-des-Programmpaketes.html#Manuelle-Installation-des-Programmpaketes">Manuelle Installation des Programmpaketes</a>: Installationsort, Berechtigungen
<li><a accesskey="4" href="Anpassung-der-PostgreSQL_002dKonfiguration.html#Anpassung-der-PostgreSQL_002dKonfiguration">Anpassung der PostgreSQL-Konfiguration</a>: Verschiedene Aspekte der Datenbankkonfiguration
<li><a accesskey="5" href="Apache_002dKonfiguration.html#Apache_002dKonfiguration">Apache-Konfiguration</a>: Einrichtung eines Aliases und Optionen für das Ausführen von CGI-Scripten
<li><a accesskey="6" href="Benutzerauthentifizierung-und-Administratorpasswort.html#Benutzerauthentifizierung-und-Administratorpasswort">Benutzerauthentifizierung und Administratorpasswort</a>: Einrichtung der Authentifizierungsdatenbank und der Passwortüberprüfung
<!-- -->
</body></html>
+<!--
+\1f
+Local Variables:
+coding: utf-8
+End:
+
+-->
all:
rm -f INSTALL/*.html
- makeinfo --html --document-language=de_DE INSTALL.texi
- makeinfo --plaintext --document-language=de_DE -o INSTALL.txt INSTALL.texi
+ makeinfo --html --document-language=de_DE.UTF-8 INSTALL.texi
+ makeinfo --plaintext --document-language=de_DE.UTF-8 -o INSTALL.txt INSTALL.texi
- Bugfix 1131: Einkaufslieferscheine: Mengen muessen beim Auslagern manuell in die maske eingetragen werden
- Bugfix 1154: Debitoren und Kreditoren werden nicht korrekt gebucht
- Bugfix 1185: Preis überschreiben bei Preisgruppe
+ - Bugfix 1206: Kein Preis bei Preisgruppen
- Bugfix 1220: Zahlungsverkehr - Zahlungseingang: Aufteilung des Rechnungsbetrages
- Bugfix 1277: Fehler in der BWA Zuordnung in den SKR03 und dem daraus generierten skr04
- Bugfix 1298: SKR04 überarbeitet
- Bugfix 1502: Bücherkontrolle prüft auch ALTE Zahlungseingänge
- Bugfix 1504: UStVa Modul SQL Fehler: ""text >= integer"" nicht erlaubt
- Bugfix 1506: Email-Formular: Mailadresse der Firma anstelle des Ansprechpartners
+ - Bugfix 1513: Berichte - Projektbuchungen. Gibt es keine Datensaetze zu einer Projektnummer wird eine unschoene Fehlermeldung geworfen statt einer Erklaerung was gerade schief lief
- Bugfix 1517: Kreditorrechnung: Wechselkurs bei gleichem Re.-Datum nicht vorhanden
- Bugfix 1520: Division-by-Zero-Fehler bei einigen Rechnungsbuchungen
- Bugfix 1521: Fix von Bug 1521 bringt neuen Fehler bei Login und Verkaufsmasken
- Bugfix 1541: Preisgruppeneintrag in Einkaufsrechungen ??
- Bugfix 1547: Kreditorenbuchung in Fremdwährung: Steuerfehler
- Bugfix 1550: Sortieren einer Kundenauflistung ""vergisst"" gewählte Filterkriterien
+ - Bugfix 1551: MWst Buchung wird bei neu angelegten SKR04 ""vergessen""
- Bugfix 1552: Diverse Probleme mit der Sortierfunktion bei Stammdaten
- Bugfix 1553: Diese Kundennummer wird bereits verwendet. - Obwohl keine eingetragen ist
- Bugfix 1554: Kein Wechselkurs bei Debitotenbuchung in Fremdwährung unter 1 bei gleichem Datum
- Bugfix 1555: Sonderzeichen nicht korrekt escaped (Stückliste beim Erstellen eines Erzeugnisses)
- Bugfix 1561: benutzerdefinierte Variable wird unabsichtlich deaktiviert
- Bugfix 1562: Fehlender Hinweis im changelog zu gaenderten Rechten Beim Druck
+ - Bugfix 1564: Vorlagen: TEX - Vorlagen bearbeiten -> Anzeigen -> Bearbeiten -> Steuer erfassen??
+ - Bugfix 1571: INSTALL.texi
+ - Bugfix 1573: Irrefuehrende Fehlermeldung ""das ausgewaehlte Lager ist leer""
+ - Bugfix 1574: OpenOffice (ODT) document may be corrupted
+ - Bugfix 1576: Änderung der Datenbank bei einem Benutzer führt zu Fehler
+ - Bugfix 1577: oberer Zurück-Knopf in 'Gruppe bearbeiten' im Admin-Interface bewirkt nichts
+ - Bugfix 1580: /doc/INSTALL/*.html in UTF-8 kein Coding im HTML Header
2010-03-24 - Release 2.6.1
'BOM' => 'Stückliste',
'BWA' => 'BWA',
'Back' => 'Zurück',
+ 'Back to the login page' => 'Zurück zur Loginseite',
'Backup Dataset' => 'Datenbank sichern',
'Backup file' => 'Sicherungsdatei',
'Backup of dataset' => 'Sicherung der Datenbank',
'List Price' => 'Listenpreis',
'List Price Factors' => 'Preisfaktoren anzeigen',
'List Pricegroups' => 'Preisgruppen anzeigen',
- 'List Tax' => 'Bearbeiten',
'List Transactions' => 'Buchungsliste',
'List Warehouses' => 'Lager anzeigen',
'List bank accounts' => 'Bankkonten anzeigen',
'Not done yet' => 'Noch nicht fertig',
'Not obsolete' => 'Gültig',
'Note' => 'Hinweis',
- 'Note: Taxkeys must have a "valid from" date, and will not behave correctly without.' => 'Hinweis: Steuerschlüssel sind fehlerhaft ohne gültiges "von Datum"',
+ 'Note: Taxkeys must have a "valid from" date, and will not behave correctly without.' => 'Hinweis: Steuerschlüssel sind fehlerhaft ohne "Gültig ab" Datum',
'Notes' => 'Bemerkungen',
'Notes (will appear on hard copy)' => 'Bemerkungen',
'Nothing has been selected for removal.' => 'Es wurde nichts für eine Entnahme ausgewählt.',
'The selected bin does not exist.' => 'Der ausgewählte Lagerplatz existiert nicht.',
'The selected exports have been closed.' => 'Die ausgewählten Exporte wurden abgeschlossen.',
'The selected warehouse does not exist.' => 'Das ausgewählte Lager existiert nicht.',
- 'The selected warehouse is empty.' => 'Das ausgewählte Lager ist leer.',
+ 'The selected warehouse is empty, or no stocked items where found that match the filter settings.' => 'Das ausgewählte Lager ist leer, oder in ihm wurden keine zu den Sucheinstellungen passenden eingelagerten Artikel gefunden.',
'The session is invalid or has expired.' => 'Sie sind von Lx-Office abgemeldet.',
'The settings were saved, but the password was not changed.' => 'Die Einstellungen wurden gespeichert, aber das Passwort wurde nicht geändert.',
'The source warehouse does not contain any bins.' => 'Das Quelllager enthält keine Lagerplätze.',
'List Price' => 'Listenpreis',
'List Price Factors' => 'Preisfaktoren anzeigen',
'List Pricegroups' => 'Preisgruppen anzeigen',
- 'List Tax' => 'Bearbeiten',
'List Transactions' => 'Buchungsliste',
'List Warehouses' => 'Lager anzeigen',
'List bank accounts' => 'Bankkonten anzeigen',
'Not done yet' => 'Noch nicht fertig',
'Not obsolete' => 'Gültig',
'Note' => 'Hinweis',
- 'Note: Taxkeys must have a "valid from" date, and will not behave correctly without.' => 'Hinweis: Steuerschlüssel sind fehlerhaft ohne gültiges "von Datum"',
+ 'Note: Taxkeys must have a "valid from" date, and will not behave correctly without.' => 'Hinweis: Steuerschlüssel sind fehlerhaft ohne "Gültig ab" Datum',
'Notes' => 'Notizen',
'Notes (will appear on hard copy)' => 'Hinweise (erscheinen auf Ausdruck)',
'Nothing has been selected for removal.' => 'Es wurde nichts für eine Entnahme ausgewählt.',
'Warehouse management' => 'Lagerverwaltung/Bestandsveränderung',
'Warehouse saved.' => 'Lager gespeichert.',
'Warehouses' => 'Lager',
- 'Warning' => '',
+ 'Warning' => 'Warnung',
'Warnings during template upgrade' => 'Warnungen bei Aktualisierung der Dokumentenvorlagen',
'WebDAV link' => 'WebDAV-Link',
'Weight' => 'Gewicht',
'List Price' => '',
'List Price Factors' => '',
'List Pricegroups' => '',
- 'List Tax' => '',
'List Transactions' => '',
'List Warehouses' => '',
'List bank accounts' => '',
'Warehouse management' => '',
'Warehouse saved.' => '',
'Warehouses' => '',
+ 'Warning' => '',
'Warnings during template upgrade' => '',
'WebDAV link' => '',
'Weight' => '',
target=acc_menu
submenu=1
-[System--Taxes--List Tax]
+[System--Taxes--Edit]
module=am.pl
action=list_tax
PLPGSQL=""
#Datei plpgsql.so suchen
-#Mit Paketmanager (RPM oder APT) suchen
-#PLPGSQL=`dpkg -L postgresql | grep plpgsql.so`
+POSTGRESQL=`dpkg -l | grep -E "postgresql-[0-9]" | cut -d" " -f3 | sort -r | head -1 -`
+
+#Mit Paketmanager (Apt) suchen
+if [ "$POSTGRESQL#" == "#" ]; then
+ writeln 1 1 $FEHLER
+ writeln 2 1 Keine PostgreSQL mit Paketmanager installiert
+ writeln 3 1 Datenbank bitte manuell einrichten.
+ exit 0
+else
+ PLPGSQL=`dpkg -L postgresql-8.3 | grep plpgsql.so`
+fi
+
+#Mit Paketmanager (RPM) suchen ?
#PLPGSQL=`rpm -q --list postgres | grep plpgsql.so`
if [ "$PLPGSQL#" == "#" ]; then
#Probleme mit Paketmanager, dann zunaechst mit locate, geht schneller
+ updatedb
writeln 3 3 --locate
tmp=`locate plpgsql.so 2>/dev/null`
PLPGSQL=`echo $tmp | cut -d " " -f 1`
tput rmso
exit 1
fi
-v7=`su postgres -c "echo 'select version()' | psql template1 2>/dev/null | grep -E "[Ss][Qq][Ll][[:space:]]+7\.[0-9]\.[0-9]" | wc -l"`
-v8=`su postgres -c "echo 'select version()' | psql template1 2>/dev/null | grep -E "[Ss][Qq][Ll][[:space:]]+8\.[0-9]\.[0-9]" | wc -l"`
-#cnt=`echo $v7 + $v8 | bc -l`
+v8=`su postgres -c "echo 'select version()' | psql template1 2>/dev/null | grep -E "[Ss][Qq][Ll][[:space:]]+8\.[2-9]\.[0-9]" | wc -l"`
if [ $v8 -eq 0 ]; then
- if [ $v7 -eq 0 ]; then
- tput bel
- tput bold
- echo User postgres konnte die Datenbank nicht ansprechen
- tput rmso
- exit 1;
- else
- tput clear
- writeln 1 1 Datenbank Version 7x konnte erreicht werden.
- fi
+ tput bel
+ tput bold
+ echo User postgres konnte die Datenbank 8.2.x - 8.9.x nicht ansprechen
+ tput rmso
+ exit 1;
else
tput clear
- writeln 1 1 Datenbank Version 8x konnte erreicht werden.
+ writeln 1 1 Datenbank Version 8.2.x - 8.9.x konnte erreicht werden.
fi
echo "CREATE FUNCTION plpgsql_call_handler() RETURNS language_handler" > lxdbinst.sql
writeln 12 1 Datenbankberechtigung einrichten
#wo ist die pg_hba.conf
writeln 13 3 --find erst /etc dann /var/lib
-tmp=`find /etc -name pg_hba.conf -type f`
+tmp=`find /etc/postgresql -name pg_hba.conf -type f`
[ "$tmp#" == "#" ] && tmp=`find /var/lib -name pg_hba.conf -type f`
PGHBA=`echo $tmp | cut -d " " -f 1`
fi
mv $CONFDIR/postgresql.conf $CONFDIR/postgresql.conf.org
-if ! [ $v7 -eq 0 ]; then
- #Nur bei der V7.x: tcpip_socket = true
- sed 's/^.*tcpip_socket.*/tcpip_socket = true/i' $CONFDIR/postgresql.conf.org > $CONFDIR/postgresql.conf
- cnt=`grep tcpip_socket $CONFDIR/postgresql.conf | wc -l`
- if [ $cnt -eq 0 ]; then
- cp $CONFDIR/postgresql.conf.org $CONFDIR/postgresql.conf
- echo "tcpip_socket = true" >> $CONFDIR/postgresql.conf
- fi
-else
- #Bei der V8.x OID einschalten.
- sed 's/^.*default_with_oids.*/default_with_oids = true/i' $CONFDIR/postgresql.conf.org > $CONFDIR/postgresql.conf
- cnt=`grep default_with_oids $CONFDIR/postgresql.conf | wc -l`
- if [ $cnt -eq 0 ]; then
- cp $CONFDIR/postgresql.conf.org $CONFDIR/postgresql.conf
- echo "default_with_oids = true" >> $CONFDIR/postgresql.conf
- fi
+#Bei der V8.x OID einschalten.
+sed 's/^.*default_with_oids.*/default_with_oids = true/i' $CONFDIR/postgresql.conf.org > $CONFDIR/postgresql.conf
+cnt=`grep default_with_oids $CONFDIR/postgresql.conf | wc -l`
+if [ $cnt -eq 0 ]; then
+ cp $CONFDIR/postgresql.conf.org $CONFDIR/postgresql.conf
+ echo "default_with_oids = true" >> $CONFDIR/postgresql.conf
fi
-tmp=`ls /etc/init.d/postgres*`
+tmp=`ls -r1 /etc/init.d/postgres*`
PGSQL=`echo $tmp | cut -d " " -f 1`
writeln 18 1 Datenbank neu starten
#!/bin/bash
-#set -x
-
# e = exit on error
set -e
# x = xtrace
#set -x
+FEHLER="Achtung!! Es hat ein Problem gegeben"
+ERRCNT=0
source /usr/share/debconf/confmodule
-
-function writeln()
-{
- tput cup $1 $2 # Cursor positionieren
- tput el # Rest der Zeile löschen
- shift 2 # Parameter für die Koordinaten entfernen
- echo -n $*" " # Rest der Parameterliste ausgeben
-}
-
-#tput clear
-
#Als root anmelden
if [ `id -u` -gt 0 ]; then echo "Bitte als root anmelden"; exit 1; fi
+POSTGRESQL=`dpkg -l | grep -E "postgresql-[0-9]" | cut -d" " -f3 | sort -r | head -1 -`
-#writeln 1 1 PostgreSQL fuer Lx-Office vorbereiten
-#writeln 2 1 1. plpgsql.so suchen
-PLPGSQL=""
#Datei plpgsql.so suchen
-
-#Mit Paketmanager (RPM oder APT) suchen
-#PLPGSQL=`dpkg -L postgresql | grep plpgsql.so`
-#PLPGSQL=`rpm -q --list postgres | grep plpgsql.so`
+#Mit Paketmanager suchen
+if [ "$POSTGRESQL#" == "#" ]; then
+ echo $FEHLER
+ echo Keine PostgreSQL mit Paketmanager installiert
+ echo Datenbank bitte manuell einrichten.
+ exit 0
+else
+ PLPGSQL=`dpkg -L postgresql-8.3 | grep plpgsql.so`
+fi
if [ "$PLPGSQL#" == "#" ]; then
- #Probleme mit Paketmanager, dann zunaechst mit locate, geht schneller
-# writeln 3 3 --locate
- tmp=`locate plpgsql.so 2>/dev/null`
- PLPGSQL=`echo $tmp | cut -d " " -f 1`
+ #Probleme mit Paketmanager, dann zunaechst mit locate, geht schneller
+ updatedb
+ tmp=`locate plpgsql.so 2>/dev/null`
+ PLPGSQL=`echo $tmp | cut -d " " -f 1`
fi
if [ "$PLPGSQL#" == "#" ]; then
- #noch nicht gefunden, also mit find suchen
-# writeln 3 15 --find /usr/lib
- tmp=`find /usr/lib -name plpgsql.so -type f`
- PLPGSQL=`echo $tmp | cut -d " " -f 1`
+ #noch nicht gefunden, also mit find suchen
+ tmp=`find /usr/lib -name plpgsql.so -type f`
+ PLPGSQL=`echo $tmp | cut -d " " -f 1`
fi
if [ "$PLPGSQL#" == "#" ]; then
- while :; do
-# writeln 4 1 'plpgsql.so' nicht gefunden.
-# tput bold
-# writeln 5 1 "Bitte den Pfad eingeben: "
-# tput rmso
-# read PLPGSQL
- [ "$PLPGSQL#" != "#" ] && [ -f $PLPGSQL ] && break
- # tput bel
- done
+ echo $FEHLER
+ echo 'plpgsql.so' nicht gefunden.
+ echo Datenbank manuell einrichten.
+ exit 0
fi
-#writeln 6 1 ok. 'plpgsql.so' gefunden
#Kann der User postgres die db erreichen
cnt=`ps aux | grep postgres | wc -l`
if [ $cnt -eq 0 ]; then
-# tput bel
-# tput bold
- echo Die postgreSQL-Datebbank ist nicht gestartet!
-# tput rmso
- exit 1
+ echo $FEHLER
+ echo Die postgreSQL-Datebbank ist nicht gestartet!
+ echo Datenbank manuell einrichten.
+ exit 0
fi
-v7=`su postgres -c "echo 'select version()' | psql template1 2>/dev/null | grep -E "[Ss][Qq][Ll][[:space:]]+7\.[0-9]\.[0-9]" | wc -l"`
-v8=`su postgres -c "echo 'select version()' | psql template1 2>/dev/null | grep -E "[Ss][Qq][Ll][[:space:]]+8\.[0-9]\.[0-9]" | wc -l"`
-#cnt=`echo $v7 + $v8 | bc -l`
+
+v8=`su postgres -c "echo 'select version()' | psql template1 2>/dev/null | grep -E "[Ss][Qq][Ll][[:space:]]+8\.[2-9]\.[0-9]" | wc -l"`
if [ $v8 -eq 0 ]; then
- if [ $v7 -eq 0 ]; then
-# tput bel
-# tput bold
- echo User postgres konnte die Datenbank nicht ansprechen
-# tput rmso
- exit 1;
- else
- # do nothing
- echo ""
-
-# tput clear
-# writeln 1 1 Datenbank Version 7x konnte erreicht werden.
- fi
-else
- # do nothing
- echo ""
-# tput clear
-# writeln 1 1 Datenbank Version 8x konnte erreicht werden.
+ echo $FEHLER
+ echo Datenbank Version 8x konnte erreicht werden.
+ exit 0
fi
echo "CREATE FUNCTION plpgsql_call_handler() RETURNS language_handler" > lxdbinst.sql
echo "CREATE PROCEDURAL LANGUAGE plpgsql HANDLER plpgsql_call_handler;" >> lxdbinst.sql
#writeln 2 1 Datenbankbenutzer einrichten
-#tput bold
-#writeln 3 1 "Bitte den Datenbank-Benutzernamen (Kleinbuchstaben) eingeben [lxoffice]: "
-#tput rmso
-#read LXOUSER
-#if [ "$LXOUSER#" == "#" ]; then LXOUSER="lxoffice"; fi
-#while :; do
-# tput bold
-# writeln 4 1 "Bitte ein Kennwort eingeben : "
-# tput rmso
-# read USRPWD
- if ! [ "$USRPWD#" == "#" ]; then break; fi
-# tput bel
-#done;
-
LXOUSER="lxoffice"
-
db_get lx-office-erp/lx-office-erp-user-postgresql-password
USRPWD="$RET"
-
echo "CREATE USER $LXOUSER with CREATEDB ;" >> lxdbinst.sql
echo "ALTER USER $LXOUSER PASSWORD '$USRPWD';" >> lxdbinst.sql
echo "UPDATE pg_language SET lanpltrusted = true WHERE lanname = 'plpgsql';" >> lxdbinst.sql
echo "Fehlermeldungen die 'already exists' enthalten koennen ignoriert werden"
-#writeln 11 1 Datenbank fuer Lx-Office vorbereitet
-
#writeln 12 1 Datenbankberechtigung einrichten
-#wo ist die pg_hba.conf
-#writeln 13 3 --find erst /etc dann /var/lib
-tmp=`find /etc -name pg_hba.conf -type f`
-[ "$tmp#" == "#" ] && tmp=`find /var/lib -name pg_hba.conf -type f`
-PGHBA=`echo $tmp | cut -d " " -f 1`
+PGHBA=`find /etc/postgresql -name pg_hba.conf -type f | sort -r | head -1 -`
+if [ "$PGHBA#" == "#" ] ; then
+ PGHBA=`find /var/lib -name pg_hba.conf -type f | sort -r | head -1 -`
+fi
if [ "$PGHBA#" == "#" ]; then
- while :; do
-# writeln 14 1 'pg_hba.conf' nicht gefunden.
-# tput bold
-# writeln 15 1 "Bitte den Pfad eingeben: "
-# tput rmso
-# read PGHBA
- [ "$PGHBA#" != "#" ] && [ -f $PGHBA ] && break
- # tput bel
- done
+ echo $FEHLER
+ echo 'pg_hba.conf' nicht gefunden.
+ echo "Berechtigungen bitte selber einrichten"
+ ERRCNT=1
fi
-#writeln 16 1 ok. 'pg_hba.conf' gefunden
cnt=`grep $LXOUSER $PGHBA | wc -l `
if [ $cnt -eq 0 ]; then
- mv $PGHBA $PGHBA.org
- echo "local all $LXOUSER password" > $PGHBA
- echo "host all $LXOUSER 127.0.0.1 255.255.255.255 password" >> $PGHBA
- cat $PGHBA.org >> $PGHBA
+ mv $PGHBA $PGHBA.org
+ echo "local all $LXOUSER password" > $PGHBA
+ echo "host all $LXOUSER 127.0.0.1 255.255.255.255 password" >> $PGHBA
+ cat $PGHBA.org >> $PGHBA
fi
CONFDIR=`dirname $PGHBA`
#postgresql.conf anpassen, liegt vermutlich im gleichen Verzeichnis wie pg_hba.conf
if ! [ -f $CONFDIR/postgresql.conf ]; then
- #doch nicht da, dann fragen
- while :; do
-# writeln 13 1 'postgresql.conf' nicht gefunden.
-# tput bold
-# writeln 14 1 "Bitte den Pfad eingeben: "
-# tput rmso
-# read PGCONF
- [ "$PGCONF#" != "#" ] && [ -f $PGCONF ] && break
- # tput bel
- done
- CONFDIR=`dirname $PGCONF`
+ echo $FEHLER
+ echo 'postgresql.conf' nicht gefunden.
+ echo PostgreSQL selber konfigurieren
+ ERRCNT=1
fi
mv $CONFDIR/postgresql.conf $CONFDIR/postgresql.conf.org
-if ! [ $v7 -eq 0 ]; then
- #Nur bei der V7.x: tcpip_socket = true
- sed 's/^.*tcpip_socket.*/tcpip_socket = true/i' $CONFDIR/postgresql.conf.org > $CONFDIR/postgresql.conf
- cnt=`grep tcpip_socket $CONFDIR/postgresql.conf | wc -l`
- if [ $cnt -eq 0 ]; then
- cp $CONFDIR/postgresql.conf.org $CONFDIR/postgresql.conf
- echo "tcpip_socket = true" >> $CONFDIR/postgresql.conf
- fi
-else
- #Bei der V8.x OID einschalten.
- sed 's/^.*default_with_oids.*/default_with_oids = true/i' $CONFDIR/postgresql.conf.org > $CONFDIR/postgresql.conf
- cnt=`grep default_with_oids $CONFDIR/postgresql.conf | wc -l`
- if [ $cnt -eq 0 ]; then
- cp $CONFDIR/postgresql.conf.org $CONFDIR/postgresql.conf
- echo "default_with_oids = true" >> $CONFDIR/postgresql.conf
- fi
+#Bei der V8.x OID einschalten.
+sed 's/^.*default_with_oids.*/default_with_oids = true/i' $CONFDIR/postgresql.conf.org > $CONFDIR/postgresql.conf
+cnt=`grep default_with_oids $CONFDIR/postgresql.conf | wc -l`
+if [ $cnt -eq 0 ]; then
+ cp $CONFDIR/postgresql.conf.org $CONFDIR/postgresql.conf
+ echo "default_with_oids = true" >> $CONFDIR/postgresql.conf
fi
-tmp=`ls /etc/init.d/postgres*`
-PGSQL=`echo $tmp | cut -d " " -f 1`
+PGSQL=`ls -r1 /etc/init.d/postgres* | head -1 -`
#writeln 18 1 Datenbank neu starten
$PGSQL reload
-#tput bold
-#tput smso
-#writeln 20 12 ok. Das sollte es gewesen sein.
-#tput rmso
-#tput rmso
-echo
+if [ $ERRCNT -gt 0 ]; then
+ echo $FEHLER
+ echo Das betrifft aber nicht die Lx-Office Installation
+ echo sondern die Konfiguration der Datenbank.
+ echo $POSTGRESQL , $PGHBA , $CONFDIR/postgresql.conf ??
+ sleep 10
+fi
push @texts, <<EOL if $module->{debian};
- On Debian, Ubuntu and other distros you can install it with apt-get:
sudo apt-get install $module->{debian}
- Note these may be out of date as well if you system is old.
+ Note: These may be out of date as well if your system is old.
EOL
# TODO: SuSE and Fedora packaging. Windows packaging.
-- Ergaenzungen fuer 19% UmSt. ab 1.01.2007
+INSERT INTO tax (chart_id, rate, taxnumber, taxkey, taxdescription) VALUES ((SELECT id from CHART WHERE accno='3806'), 0.19, '3806', 3, 'Umsatzsteuer 19%');
+INSERT INTO tax (chart_id, rate, taxnumber, taxkey, taxdescription) VALUES ((SELECT id from CHART WHERE accno='1406'), 0.19, '1406', 9, 'Vorsteuer 19%');
insert into taxkeys (chart_id, tax_id, taxkey_id, pos_ustva, startdate) select chart.id, tax.id, taxkey_id, pos_ustva, '1970-01-01' from chart LEFT JOIN tax on (tax.taxkey=chart.taxkey_id) WHERE taxkey_id is not null;
insert into taxkeys (chart_id, tax_id, taxkey_id,startdate) SELECT 0, id, taxkey, '1970-01-01' FROM tax;
insert into taxkeys (chart_id, tax_id, taxkey_id, pos_ustva, startdate) select chart.id, (SELECT id from tax where taxdescription='Umsatzsteuer 19%'), 3, pos_ustva, '2007-01-01' from chart WHERE taxkey_id=3;
--- /dev/null
+#!/usr/bin/perl
+
+# adapted from Michael Stevens' test script posted in p5p
+# in the thread "broken links in blead" from 01/19/2011
+#
+# caveats: wikipedia seems to have crawler protection and
+# will give 403 forbidden unless the user agent is faked.
+
+use strict;
+use File::Find;
+use LWP::Simple;
+use Test::More tests => 1;
+use URI::Find;
+
+my @fails;
+
+my $finder = URI::Find->new(sub {
+ my ($uri_obj, $uri_text) = @_;
+ $uri_text =~ s/^\<//;
+ $uri_text =~ s/\>$//;
+
+ push @fails, "$uri_text in file $File::Find::name"
+ if !defined get($uri_text);
+
+ return $_[1];
+});
+
+find(sub {
+ open(FH, $File::Find::name) or return;
+ my $text;
+ { local $/; $text = <FH>; }
+
+ $finder->find(\$text);
+
+ }, "."
+);
+
+if (@fails) {
+ ok(0, join "\n", @fails);
+} else {
+ ok(1, "no broken links found");
+}
[%- USE T8 %]
-[% USE HTML %]<body class="admin" onload="document.getElementById('rpw').focus()">
- <p><input type="button" class="submit" onclick="history.back()" value="[% 'Back' | $T8 %]"></p>
+[% USE HTML %]
+[% USE LxERP%]
+<body class="admin" onload="document.getElementById('rpw').focus()">
<div align="center">
<a href="http://www.lx-office.org"><img src="image/lx-office-erp.png" border="0"></a>
<p>[% 'Lx-Office Homepage' | $T8 %]: <a href="http://lx-office.org" target="_blank" title="[% 'Lx-Office Homepage' | $T8 %]">http://lx-office.org</a></p>
+ <p><a href="login.pl">[%- LxERP.t8('Back to the login page') %]</a></p>
+
</div>
</body>
<br>
<input type="submit" class="submit" name="action" value="[% 'Continue' | $T8 %]">
- <input type="submit" class="submit" name="action" value="[% 'Back' | $T8 %]">
+ <a href="admin.pl?action=pg_database_administration">[% 'Back' | $T8 %]</a>
</form>
<h2>[% title %]</h2>
<form method="post" action="admin.pl">
- <p><input type="button" class="submit" onclick="history.back()" value="[% 'Back' | $T8 %]"></p>
+ <p><a href="admin.pl?action=pg_database_administration">[% 'Back' | $T8 %]</a></p>
<p>
[% 'You can either create a new database or chose an existing database.' | $T8 %]
[% 'In the latter case the tables needed by Lx-Office will be created in that database.' | $T8 %]
<h2>[% title %]</h2>
<form method="post" action="admin.pl">
- <input type="hidden" name="back_nextsub" value="list_users">
- <input type="submit" class="submit" name="action" value="[% 'Back' | $T8 %]">
+ <a href="admin.pl?action=list_users">[% 'Back' | $T8 %]</a>
<table>
<tr>
[% USE HTML %]<body class="admin">
<h2>[% title %]</h2>
- <p><input type="button" class="submit" onclick="history.back()" value="[% 'Back' | $T8 %]"></p>
+ <p><a href="admin.pl?action=pg_database_administration">[% 'Back' | $T8 %]</a></p>
<form method="post" action="admin.pl">
<p>[% 'You can only delete datasets that are not in use.' | $T8 %]
<p class="message_hint">[ [% name %] ] - [% 'Do you really want to delete this group?' | $T8 %]</p>
<form name="Form" method="post" action="admin.pl">
- <input type="hidden" name="back_nextsub" value="edit_groups">
- <input type="submit" class="submit" name="action" value="[% 'Back' | $T8 %]">
-
+ <a href="admin.pl?action=edit_groups">[% 'Back' | $T8 %]</a>
<input type="hidden" name="group_id" value="[% HTML.escape(id) %]">
<input type="hidden" name="confirmed" value="1">
<div class="listtop">[% 'Edit group ' | $T8 %]: [% HTML.escape(name) %]</div>
- <p><input type="submit" class="submit" name="action" value="[% 'Back' | $T8 %]"></p>
+ <p><a href="admin.pl?action=edit_groups">[% 'Back' | $T8 %]</a></p>
<hr>
<div class="listtop">[% 'Edit group membership' | $T8 %]</div>
- <p><input type="button" class="submit" onclick="history.back()" value="[% 'Back' | $T8 %]"></p>
+ <p><a href="admin.pl?action=edit_groups">[% 'Back' | $T8 %]</a></p>
<p>[% 'Select the checkboxes that match users to the groups they should belong to.' | $T8 %]</p>
<form action="admin.pl">
<form name="Form" id="Form" method="post" action="admin.pl">
<div class="listtop" width="100%">[% title %]</div>
- <p><input type="button" class="submit" onclick="history.back()" value="[% 'Back' | $T8 %]"></p>
+ <p><a href="admin.pl?action=list_users">[% 'Back' | $T8 %]</a></p>
<table width="100%">
<tr valign="top">
<input name="callback" type="hidden" value="admin.pl?action=list_users">
- <input type="button" class="submit" onclick="history.back()" value="[% 'Back' | $T8 %]">
+ <a href="admin.pl?action=list_users">[% 'Back' | $T8 %]</a>
<input type="hidden" name="action" value="dispatcher">
<input type="submit" class="submit" name="action_save_user" value="[% 'Save' | $T8 %]">
[% USE HTML %]<body class="admin">
<h2>[% title %]</h2>
- <p><input type="button" class="submit" onclick="history.back()" value="[% 'Back' | $T8 %]"></p>
+ <p><a href="admin.pl?action=pg_database_administration">[% 'Back' | $T8 %]</a></p>
[% IF ALL_UPDATED %]
[% 'All Datasets up to date!' | $T8 %]