¡Esta es una revisión vieja del documento!
Para ayudar a un amigo que deseaba instalar LedgerSMB sobre un Debian Wheezy sin resultado, decidí escribir este instructivo de instalación.
Parto de la base que se tiene instalado y configurado Apache usando la configuración de dynamic virtual hosting. Este tutorial en particular explica cómo crear un virtual host para SQL Ledger, configuración que no debe ser usada en este caso.
Para todo el proceso, se necesita conexión a Internet.
aptitude install cpp cpp-4.7 dbconfig-common dbus ed fontconfig-config fonts-droid ghostscript gsfonts latex-beamer latex-xcolor libalgorithm-c3-perl libappconfig-perl libaprutil1-dbd-pgsql libarchive-zip-perl libavahi-client3 libavahi-common-data libavahi-common3 libb-hooks-endofscope-perl libcgi-simple-perl libclass-accessor-perl libclass-c3-perl libclass-c3-xs-perl libclass-data-inheritable-perl libclass-load-perl libclass-load-xs-perl libclass-singleton-perl libclass-std-perl libcommon-sense-perl libconfig-any-perl libconfig-general-perl libconfig-std-perl libconfig-tiny-perl libcups2 libcupsimage2 libdata-optlist-perl libdatetime-locale-perl libdatetime-perl libdatetime-timezone-perl libdbd-pg-perl libdbi-perl libdbus-1-3 libdevel-globaldestruction-perl libdevel-partialdump-perl libdevel-stacktrace-perl libdrm-intel1 libdrm-nouveau1a libdrm-radeon1 libdrm2 libemail-date-format-perl libencode-locale-perl liberror-perl libeval-closure-perl libexception-class-perl libfile-basedir-perl libfile-desktopentry-perl libfile-listing-perl libfile-mimeinfo-perl libfile-slurp-perl libfont-afm-perl libfontconfig1 libfontenc1 libgl1-mesa-dri libgl1-mesa-glx libglapi-mesa libgmp10 libgraphite3 libgs9 libgs9-common libhtml-form-perl libhtml-format-perl libhtml-parser-perl libhtml-tagset-perl libhtml-tree-perl libhttp-cookies-perl libhttp-daemon-perl libhttp-date-perl libhttp-message-perl libhttp-negotiate-perl libice6 libijs-0.35 libio-socket-ip-perl libio-socket-ssl-perl libio-stringy-perl libipc-shareable-perl libjasper1 libjbig0 libjbig2dec0 libjpeg8 libjson-perl libjson-xs-perl libkpathsea6 liblatex-driver-perl liblatex-encode-perl liblatex-table-perl liblcms1 liblcms2-2 liblist-moreutils-perl liblocale-maketext-lexicon-perl liblog-dispatch-perl liblog-log4perl-perl liblwp-mediatypes-perl liblwp-protocol-https-perl libmailtools-perl libmath-bigint-gmp-perl libmath-bigint-perl libmath-round-perl libmime-lite-perl libmime-types-perl libmodule-implementation-perl libmodule-runtime-perl libmoose-perl libmoosex-followpbp-perl libmpc2 libmpfr4 libmro-compat-perl libnamespace-clean-perl libnet-daemon-perl libnet-dbus-perl libnet-http-perl libnet-ssleay-perl libnumber-format-perl libopenjpeg2 libopenoffice-oodoc-perl libossp-uuid16 libpackage-deprecationmanager-perl libpackage-stash-perl libpackage-stash-xs-perl libpaper-utils libpaper1 libparams-classify-perl libparams-util-perl libparams-validate-perl libparse-recdescent-perl libpciaccess0 libplrpc-perl libpng12-0 libpoppler19 libpq5 libptexenc1 libreadonly-perl libreadonly-xs-perl libruby1.9.1 libsm6 libsocket-perl libsub-exporter-perl libsub-identify-perl libsub-install-perl libsub-name-perl libsystemd-login0 libtask-weaken-perl libtemplate-perl libtemplate-plugin-latex-perl libtext-csv-perl libtext-csv-xs-perl libtext-wrapper-perl libtie-ixhash-perl libtiff4 libtimedate-perl libtry-tiny-perl liburi-perl libutempter0 libvariable-magic-perl libwww-perl libwww-robotrules-perl libx11-protocol-perl libx11-xcb1 libxaw7 libxcb-glx0 libxcb-shape0 libxcomposite1 libxcursor1 libxdamage1 libxfixes3 libxfont1 libxft2 libxi6 libxinerama1 libxml-namespacesupport-perl libxml-parser-perl libxml-sax-base-perl libxml-sax-expat-perl libxml-sax-perl libxml-simple-perl libxml-twig-perl libxml-xpathengine-perl libxmu6 libxpm4 libxrandr2 libxrender1 libxslt1.1 libxt6 libxtst6 libxv1 libxxf86dga1 libxxf86vm1 libyaml-0-2 libyaml-libyaml-perl lmodern luatex make pgf poppler-data postgresql-9.1 postgresql-client postgresql-client-9.1 postgresql-client-common postgresql-common postgresql-contrib postgresql-contrib-9.1 prosper ps2eps ruby ruby1.9.1 sudo tcl8.4 tex-common texlive-base texlive-binaries texlive-common texlive-doc-base texlive-extra-utils texlive-font-utils texlive-generic-recommended texlive-latex-base texlive-latex-base-doc texlive-latex-recommended texlive-latex-recommended-doc texlive-luatex texlive-pstricks texlive-pstricks-doc tk8.4 ttf-dejavu-core x11-common x11-utils x11-xserver-utils xbitmaps xdg-utils xfonts-encodings xfonts-utils
cd /var/www/sites/ tar xzf ledgersmb-1.3.37.tar.gz chown -R www-data:www-data ledgersmb chmod 750 ledgersmb
Editar /var/www/sites/ledgersmb/ledgersmb-httpd.conf.template y cambiar la palabra WORKING_DIR por /var/www/sites/ledgersmb
Además, si se desea acceder a LedgerSMB desde las estaciones de la intranet, se debe permitirlo en la línea, poniendo algo como:
Allow from 192.168.0.0/24
Mover este archivo a /etc/apache2/sites-available/var/www/sites/ledgersmb/ledgersmb-httpd.conf y activarlo en Apache, así como el módulo rewrite:
a2ensite /var/www/sites/ledgersmb/ledgersmb-httpd.conf a2enmod rewrite
Reiniciar Apache:
service apache2 restart
Instalar los módulos Perl necesarios, ingresando previamente al directorio de instalación de LedgerSMB; este paso hará un montón de magia, y tardará unos minutos:
cd /var/www/sites/ledgersmb cpan Module::Install
Ejecutar el script Makefile.pl respondiendo “y” o “n” cuando corresponda:
perl Makefile.PL
Ejecutar un make y esperar a que termine, proceso que llevará unos minutos:
make
Instalar el módulo Latex de Perl:
cpan Template::Latex
Y finalmente, ejecutar test; advierto que algunos test van a fallar. Son pocos, no sé exactamente qué significa, pero LedgerSMB funciona a pesar de estos errores. Este paso se puede obviar entonces :
make test
su postgres -c psql template1 ALTER USER postgres WITH PASSWORD '<password>'; \q
passwd -d postgres su postgres -c passwd # Ingresar la contraseña adduser ledgersmb # Ingresar la contraseña y los datos necesarios sudo -u postgres createuser -D -A -P ledgersmb sudo -u postgres createdb -O ledgersmb ledgersmb
Reiniciar PostgreSQL:
service postgresql restart
mkdir /var/tmp/ledgersmb chown -R www-data: /var/tmp/ledgersmb