jueves, septiembre 19, 2013

Reducir el consumo de recursos de KDE

Logo KDE
KDE es un escritorio altamente configurable e inicialmente vienen activadas algunas funcionalidades que pueden ser muy interesantes pero para equipos con pocos recursos pueden ser una carga innecesaria.


A continuación tenemos una lista de  acciones a realizar para lograr que KDE sea más ligero:


  1. Detener Akonadi:
    cd
    nano .config/akonadi/akonadiserverrc

    Cambiar StartServer a false.
  2. Desactivar Nepomuk:
    En el menú de KDE selecciona “Preferencias del sistema”.
    En la sección “Apariencia y comportamiento del espacio de trabajo” selecciona “Búsqueda de escritorio”.
    Deselecciona "Habilitar el escritorio semántico Nepomuk".
  3. Eliminar los efectos de escritorio:
    En el menú de KDE selecciona “Preferencias del sistema”.
    En la sección “Apariencia y comportamiento del espacio de trabajo” selecciona "Efectos del escritorio" y en la solapa "General" desactivar:
    • Activar los efectos del escritorio al inicio
    • Gestión de ventanas mejorado
    • Diversas animaciones
  4. Eliminar servicios del arranque.
    En el menú de KDE selecciona “Preferencias del sistema”.
    En la sección "Administración del sistema" seleccionar "Arranque y apagado". Dentro de "Gestor de servicios" desmarcar los que no sean de utilidad como: BlueDevil (para bluetooth), Módulo de búsqueda de Nepomuk, Tablet Wacom, etc.
  5. Cambiar el tema oxigeno por plastik.
    En el menú de KDE selecciona “Preferencias del sistema”.
    • En la sección “Apariencia y comportamiento del espacio de trabajo
    selecciona "Apariencia del espacio de trabajo" en "Decoración de ventanas" selecciona "Plastik".
    • En la sección "Apariencia y comportamiento comunes" selecciona "Apariencia de las aplicaciones" y en "Estilo" selecciona Plastique.
  6. Reduciendo las notificaciones de las aplicaciones y del sistemas:
    En el menú de KDE selecciona “Preferencias del sistema”.
    En la sección “Apariencia y comportamiento del espacio de trabajo”
    selecciona "Notificaciones de las aplicaciones y del sistemas".
    1. Opción "Gestionar notificaciones", solapa "Opciones del reproductor" marcar "Sin salida de audio"
    2.  Opción "Notificación de lanzamiento", seleccionamos "sin cursor ocupado" y desactivamos notificación de la barra de tareas.
     
Otra opción puede ser instalar el paquete Kubuntu-Low-Fat-Settings, proporciona una configuración para la reducción de recursos:

sudo apt-get install kubuntu-low-fat-settings

Extracción de pistas de audio sin perdida (FLAC) desde la consola de GNU/Linux

Si tratamos de preservar una colección de CDs de Audio lo mejor será volcar las pistas en un formato sin perdida para su futura utilización. Vamos a utilizar FLAC (Free Lossless Audio Codec) pues se trata de un formato abierto que nos permitirá ahorrar algo de espacio. También trataremos de hacerlo de la forma más automática posible y para ello utilizaremos el programa abcde (A Better CD Encoder).

Comencemos por la instalación del software necesario, en el caso de Ubuntu sería:

sudo apt-get install flac abcde

Luego creamos un fichero llamado por ejemplo abcde.conf donde indicaremos lo siguiente:

INTERACTIVE=n
FLACOPTS='--verify --best' 
OUTPUTTYPE="flac"
OUTPUTFORMAT='Pista${TRACKNUM}'
VAOUTPUTFORMAT='Pista${TRACKNUM}'
PADTRACKS=y                             # Enumera las pista como 01 02 en lugar de 1 2
MAXPROCS=2
 
Para los nombre de los ficheros resultantes podemos utilizar las siguientes variables:
${ARTISTFILE}
${ALBUMFILE}
${TRACKNUM}
${TRACKFILE} 
 
Finalmente sólo tendremos que llamar a abcde indicándole el fichero de configuración:
abcde -c /home/usuario/abcde.conf 

 
En algunas ocasiones nos puede interesar cambiar el formato del audio o simplemente tener un fragmento del mismo en otro formato como mp3, para ello podemos realizar:
 
ffmpeg -i audio-original.flac -t 30 fragmento-30-segundos.mp3
 

Instalación de ffmpeg en Ubuntu 14.04

sudo add-apt-respository ppa:mc3man/trusty-media
sudo apt-get update
sudo apt-get install ffmpeg gstreamer0.10-ffmpeg


viernes, septiembre 13, 2013

Unión de imagenes digitalizadas sobre un documento mediante Hugin Panorama Stitcher

Instalación en Ubuntu 13.04:

sudo apt-get install hugin enblend


Ahora es el momento de abrir Hugin Panorama Stitcher y cargar las imágenes que tengamos de la digitalización. Pulsar el botón 1. Cargar Imágenes de la solapa Asistente y seleccionamos todas las imágenes.


Obtendremos un dialogo donde tenemos que indicar el campo de visión horizontal (CdVH) donde indicaremos 10 (un valor entre 5 y 40 grados será lo correcto dependiendo del tipo de escáner que tengamos) y pulsamos Aceptar:


Cambiamos a la solapa Imágenes y en el apartado Feature Matching Setting seleccionamos "Cpfind (multirow/stacked)" y pulsamos el botón Crear puntos de control.



Cambiamos a la solapa Optimizador y seleccionamos optimizar con los siguientes parámetros personalizados, desmarcamos Usar sólo puntos de control entre imágenes elegidas en la ventana de vista previa, desmarcamos todos los campos de Orientación de la imagen y marcamos solamente los de rotación(r), X, Y y Z. Pulsamos ¡Optimizar ahora!



Finalmente cambiamos a la solapa Empalmador y seleccionamos en Projection Equirectangular y luego vamos pulsando los botones: Calcular campos de visión, Calcular tamaño óptimo, Fit Crop to images y Stich!

lunes, septiembre 02, 2013

Instalación de OpenERP 7 en Ubuntu Server 12.04 desde launchpad

OpenERP
Comenzaremos instalando el software necesario para poder instalar OpenERP:

sudo apt-get install graphviz ghostscript postgresql-client \
python-dateutil python-feedparser python-matplotlib \
python-ldap python-libxslt1 python-lxml python-mako \
python-openid python-psycopg2 python-pybabel python-pychart \
python-pydot python-pyparsing python-reportlab python-simplejson \
python-tz python-vatnumber python-vobject python-webdav \
python-werkzeug python-xlwt python-yaml python-imaging postgresql bzr
 
sudo apt-get install python-dev mc python-setuptools python-babel \
python-feedparser python-reportlab-accel python-zsi python-openssl \
python-egenix-mxdatetime python-jinja2 python-unittest2 python-mock \
python-docutils lptools python-psutil python-paramiko poppler-utils \
python-pdftools antiword  

wget http://gdata-python-client.googlecode.com/files/gdata-2.0.17.tar.gz 
tar zxvf gdata-2.0.17.tar.gz 
cd gdata-2.0.17/
sudo python setup.py install
 
Creamos el usuario de openerp:
sudo adduser openerp  --home=/opt/openerp 

Creamos la base de datos y usuario de openerp en postgresql:

sudo passwd postgres
su - postgres
createuser --createdb --username postgres --no-createrole --no-superuser --pwprompt openerp
exit

Instalamos el servidor de openERP: 
su - openerp 
mkdir v7
cd v7
bzr branch lp:openerp-web/7.0 web
bzr branch lp:openobject-server/7.0 server
bzr branch lp:openobject-addons/7.0 addons
bzr branch lp:openerp-spain/7.0    
exit
 

Configuración del servidor openERP:
sudo cp /opt/openerp/v7/server/install/openerp-server.conf /etc/openerp-server.conf
sudo chown openerp.openerp /etc/openerp-server.conf
sudo chmod 640 /etc/openerp-server.conf 
sudo nano /etc/openerp-server.conf
 
En el fichero de configuración /etc/openerp-server.conf lo dejamos así:
[options]
; This is the password that allows database operations:
admin_passwd = <clave-administrador>
db_host = False
db_port = False
db_user = openerp
db_list = False
db_password = <nuestra-clave-de-base-datos-postgresql>
addons_path = /opt/openerp/v7/addons,/opt/openerp/v7/web/addons,/opt/openerp/v7/7.0
;Log settings
logfile = /var/log/openerp/openerp-server.log
log_level = error 

Configurando el sistema para el correcto funcionamiento del log:


sudo mkdir /var/log/openerp
sudo chown openerp.root /var/log/openerp
sudo cp /opt/openerp/v7/server/install/openerp-server.logrotate /etc/logrotate.d/openerp-server
sudo chmod 755 /etc/logrotate.d/openerp-server

Inicio automático del servidor de openERP, para ello: 
sudo touch  /etc/init.d/openerp-server
sudo chmod 755 /etc/init.d/openerp-server
sudo chown root: /etc/init.d/openerp-server
sudo update-rc.d openerp-server defaults
sudo nano /etc/init.d/openerp-server
Contenido del fichero /etc/init.d/openerp-server : 
#!/bin/sh

### BEGIN INIT INFO
# Provides:             openerp-server
# Required-Start:       $remote_fs $syslog
# Required-Stop:        $remote_fs $syslog
# Should-Start:         $network
# Should-Stop:          $network
# Default-Start:        2 3 4 5
# Default-Stop:         0 1 6
# Short-Description:    Enterprise Resource Management software
# Description:          Open ERP is a complete ERP and CRM software.
### END INIT INFO

PATH=/bin:/sbin:/usr/bin
DAEMON=/opt/openerp/v7/server/openerp-server
NAME=openerp-server
DESC=openerp-server

# Specify the user name (Default: openerp).
USER=openerp

# Specify an alternate config file (Default: /etc/openerp-server.conf).
CONFIGFILE="/etc/openerp-server.conf"

# pidfile
PIDFILE=/var/run/$NAME.pid

# Additional options that are passed to the Daemon.
DAEMON_OPTS="-c $CONFIGFILE"

[ -x $DAEMON ] || exit 0
[ -f $CONFIGFILE ] || exit 0

checkpid() {
    [ -f $PIDFILE ] || return 1
    pid=`cat $PIDFILE`
    [ -d /proc/$pid ] && return 0
    return 1
}

case "${1}" in
        start)
                echo -n "Starting ${DESC}: "

                start-stop-daemon --start --quiet --pidfile ${PIDFILE} \
                        --chuid ${USER} --background --make-pidfile \
                        --exec ${DAEMON} -- ${DAEMON_OPTS}

                echo "${NAME}."
                ;;

        stop)
                echo -n "Stopping ${DESC}: "

                start-stop-daemon --stop --quiet --pidfile ${PIDFILE} \
                        --oknodo

                echo "${NAME}."
                ;;

        restart|force-reload)
                echo -n "Restarting ${DESC}: "

                start-stop-daemon --stop --quiet --pidfile ${PIDFILE} \
                        --oknodo
      
                sleep 1

                start-stop-daemon --start --quiet --pidfile ${PIDFILE} \
                        --chuid ${USER} --background --make-pidfile \
                        --exec ${DAEMON} -- ${DAEMON_OPTS}

                echo "${NAME}."
                ;;

        *)
                N=/etc/init.d/${NAME}
                echo "Usage: ${NAME} {start|stop|restart|force-reload}" >&2
                exit 1
                ;;
esac

exit 0
 
Para iniciar el servidor:
sudo /etc/init.d/openerp-server start 

 

OpenERP en el puerto 80 y 443

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8069
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 8070
iptables-save 

Aplicar actualizaciones

sudo /etc/init.d/openerp-server stop
sudo su openerp
cd /opt/openerp/v7/addons/
bzr pull
cd /opt/openerp/v7/web/
bzr pull
cd /opt/openerp/v7/7.0/
bzr pull
cd /opt/openerp/v7/server/
bzr pull

./openerp-server -c /etc/openerp-server.conf -u all -d <base-de-datos>

Aplicar parches

cd /opt/openerp/v7/addons/
bzr patch <url-al-parche>

 
Fuentes de información:
http://help.openerp.com/question/2562/how-to-install-openerp-v70-on-ubuntu-1204-from-launchpad-repository/ 
http://www.theopensourcerer.com/2012/12/how-to-install-openerp-7-0-on-ubuntu-12-04-lts/ 
http://huber.salazarcarlos.com/?p=23