LedgerSMB for Debian
--------------------

 LedgerSMB is a full featured double-entry financial accounting and Enterprise
 Resource Planning system accessed via a web browser (Perl/SQL backend) which
 offers "Accounts Receivable", "Accounts Payable" and "General Ledger" tracking
 as well as inventory control and fixed assets handling. The LedgerSMB client
 can be a web browser or a programmed API call. The goal of the LedgerSMB
 project is to bring high quality ERP and accounting capabilities to Small and
 Midsize Businesses.

 A web server like Apache is no longer used to run LedgerSMB directly. With
 LedgerSMB 1.5.x, it is instead run locally by default using Starman up on port
 5762. (See the file /etc/defaults/ledgersmb for where that is set.) If other
 access is needed, a Web Reverse Proxy can be configured locally: for more
 details, see the section below regarding access via a Web Proxy. Example proxy
 configuration files are also available if you intend to set up the proxy on a
 server different from the one where the LedgerSMB application itself is
 installed.


LedgerSMB Configuration
=======================

    LedgerSMB 1.5 stores data for each company in a separate "database". A
    database is a PostgreSQL concept for grouping tables, indexes, etc. Each
    company database must be named.  This name is essentially the system
    identifier within PostgreSQL for the company's dataset.  The name for the
    company database can only contain letters, digits and underscores, and
    it must start with a letter.  Company database names are case insensitive,
    meaning you can't create two separate company databases called 'Ledgersmb'
    and 'ledgersmb'.

    One way that company databases can be created fairly easily is by directing
    your web browser to the setup.pl script, which by default can be accessed at
    http://localhost:5762/setup.pl. This is very different from approaches
    taken by LedgerSMB 1.2.x and SQL-Ledger, but rather forms a wizard to walk
    you through the process of creating company databases and initial users for
    those databases.

    The default database superuser used in the setup.pl script has the name
    'lsmb_dbadmin'. If it is not created and its password set during the package
    installation, that can be done and its password set by running the command
    'dpkg-reconfigure ledgersmb', answering the questions about it and setting
    its password.

    The PDF/Postscript support for the 'xedemo' LaTex templates is available as
    the package texlive-xetex if it is not already installed.


Manual addition of a company database
=====================================

    If you want to perform the installation of the company database completely
    manually, you should consult the 'prepare-company-database.sh' or the
    'dbsetup.pl' scripts which are available in the /usr/share/ledgersmb/tools/
    directory as the authoritative documentation of the steps to perform.


Company database removal
========================

    In the /usr/share/ledgersmb/tools/ directory, there's a script which will
    remove a company database and all the standard authorization data that had
    been created by the 'prepare-company-database.sh' script.  The script is
    named 'delete-company-database.sh'.


Optional Perl modules
=====================

    X12::Parser              [Support for X12 EDI support]
    OpenOffice::OODoc        [Support for OpenOffice output]
    Template::Plugin::Latex  [Support for Postscript and PDF output]
    Image::Size              [Support for image size detection in templates]

    The X12 EDI support is available as the package libx12-parser-perl if it is
    not already installed.

    The Open Office output support is available as libopenoffice-oodoc-perl if
    it is not already installed.

    The PDF/Postscript support is available as libtemplate-plugin-latex-perl
    if it is not already installed.

    The support for size detection for images for embedding in LaTex templates
    is available as libimage-size-perl if it is not already installed.


LedgerSMB Access via a Web Proxy
================================

    Remote access using Apache, Lighttpd, Nginx, or Varnish as a Web Proxy can
    be set up locally by installing the appropriate application package and then
    running 'dpkg-reconfigure ledgersmb' and making the appropriate selection
    in answer to the question regarding which web proxy to use. It defaults to
    'None' and you can change it any time afterwards.

    Configuration files are installed as necessary but will still need further
    editing to configure them for your use, including for the SSL related
    settings. Once installed, the new configuration file will still need to be
    enabled and the proxy application itself restarted in order to use the new
    set up. A symbolic link pointing to the proxy configuration file will be
    installed into the /etc/ledgersmb directory and with the exception of for
    Varnish, the appropriation configuration file will be installed with the
    name 'ledgersmb-1.5-proxy.conf'.

    For Apache; if upgrading from a pre 1.5.x series package it will attempt
    to configure it for that unless you do not chose to use it for a web
    proxy.

    For Nginx, you have a choice of which package to use: 'nginx-light' or
    'nginx-full' or 'nginx-extra'. You will need to install the one you want
    before running dpkg-reconfigure again.

    When using Varnish; once it has been installed it may be enough to set the
    backend port setting to 5762 instead of the default port 8080 in the file
    /etc/varnish/default.vcl. The you can run the following to load the new
    configuration: 'systemctl restart varnish'.




 -- Robert James Clay <jame@rocasa.us>  Thu, 16 Nov 2017 13:40:22 -0500
