El por qué del fuera de servicio de la página.

El gráfico representa la carga de mi servidor (en el que tengo albergada la página).

Como se puede concluir al ver el gráfico, desde el jueves hasta el lunes Iberdrola me ha tenido sin conexión a la Internet. La carga es mínima porque el servidor se toca las pelotillas. Los valores el martes son muy altos porque con el parón actualicé alguna cosilla de php y me dejé sin funcionar el eaccelerator.
Luego, entre el lunes y el martes la culpa ha sido mía. Extrañamente no llegaban peticiones a la página por culpa de algún cabo suelto con el cortafuegos.

El jueves se fue la luz, durante al menos una hora y seguramente que la avería, que llegó poco después de recuperar la electricidad, estuviera relacionada con el corte de conexión.

Me hubiera gustado que me diesen una explicación de lo ocurrido. A todos nos gusta saber y estar informados.
Aunque, lo que me molesta, es que sé que el fin de semana no ha trabajado nadie en la reparación y a mí Iberdrola me cobra lo mismo por todos los días del mes. Pero que se le va a hacer, no todo es perfecto, mientras no se repita…

Me lo creo

Motero fallece por falta de medios.

No he contrastado la información, porque es un poco difícil, pero no me hace falta un acto de fe para creerme todo lo que dice.

Aunque me hierve la sangre cada vez que veo a un motorista, siento mucho lo ocurrido.

Reflexionando un poco

Cuando el mando lo tienen ineptos que no saben delegar en gente capacitada pasan cosas como esta. Se gasta dinero en cosas de tan dudosa utilidad como los radares que en medios.

Otra de mis quejas se dirige a la disparidad en la dotación de medios dependiendo de donde vivas. Desconozco las razones reales, pero no es lo mismo tener un problema médico urgente en una capital de provincia que en pueblo distante de una población grande.
¿Por qué es esto así en España?

La falsa sensación de avance y modernidad en que vivimos se hace latente en casos como lo expuesto en el anterior párrafo.
Se me ocurre un ejemplo un tanto extremo (pero no imposible) para aclarar la frase anterior. Un alpinista, novato y algo irresponsable, se va a la montaña sin compañía y tiene una caída. La caída no es muy aparatosa, pero se rompe una pierna y se hace una herida generosa. Se encuentra incomunicado, no tiene cobertura en el móvil en que confiaba si le ocurría algo. Esta perdido, pero no de perderse y no tener mapa, puede morir desangrado. El alpinista depende de que alguien le eche en falta. No, no sabe hacerse siquiera un torniquete.

COMO hize funcionar mi impresora HP PSC 1410 All-in-one

Sencillo de realizar.
Bueno de exponer lo que cada uno a aprendido para facilitar el trabajo de otros.
Para poder imprimir y escanear en Ubuntu usando la impresora multifunción HP PSC 1410.

Todo lo que este a continuación de $ debe ser escrito en un terminal/shell .

  1. Yo necesite tener la impresora encendida antes de arrancar Ubuntu.
  2. Instalar los paquetes hpoj, hpijs y xsane:

    $ sudo aptitude install hpoj hpijs xsane

  3. Configurar el escáner:

    $ sudo ptal-init setup (seguir los pasos de la configuración)

  4. Arrancar ptal-init:

    $ sudo ptal-init start

  5. Configurar impresora:

    $ gnome-cups-manager
    (Pinchar en nueva impresora y seguir los pasos para activarla).

  6. Ahora solo queda probarlo todo.

Podemos abrir openoffice e imprimir un documento cualquiera. Para el escáner abrimos xsane y ya podremos escanear nuestra maravillosa mano. Por fin, toda la vida queriendo el escáner para algo útil y lo teníamos tan cerca (también se puede usar la mano de otra persona).

Hay otra aplicación llamada hplip que mejora a hpoj pero cuando lo instalé yo no soportaba la el modelo de HP PSC 1410.

Otra evolución de el demonio negro

Últimamente, digamos varios meses, escribo apenas.
El problema no es que no se me ocurran cosas, sino que, se me ocurren tantas que no se por dónde empezar. En mi cabeza se forma una maraña parecida a la que me bloquea con mi proyecto fin de carrera que finalmente no escribo nada.

Al menos he cambiado un poco el aspecto de la bitácora.
Creo que esta completamente terminada la nueva decoración y el nuevo estilismo. Falta algún pequeño detalle, pero estoy esperando a poder descargar un plugin que me permite tener widgets de wordpress ejecutando código php. Esta última frase para aquellos que usan wordpress.

La motivación principal del cambio es que quería un estilo más puro. Puro en el sentido de tirando hacia colores claros.
La otra cosa que quería era ampliar el espacio ocupado en pantalla. Ha aumentado un poco, con lo que la resolución de pantalla deberá ser superior a 800×600, resolución a la cual falta ya pantalla.

He conseguido integrar bien el álbum de fotos con la bitácora. Bitácora y álbum son independientes, manejados gracias a wordpress y gallery 2 e integrados por wpg 2.
Ahora si pinchas sobre una foto seguirá la cabecera y pie de la bitácora. Aunque no se que hacer si dejar este aspecto o seguir enlazando también a sólo el álbum que permite ver más imágenes a la vez.

También conservaré el aspecto antiguo, por si a alguien le apetece alguna vez usarlo. Es la otra cosa que me falta por hacer, permitir elegir el aspecto a los visitantes.

El cambio lo llevaba especulando desde hace mucho, mucho tiempo. Estoy contento de como ha quedado. Espero que a vosotros os guste también.

Para los asiduos a Internet, abstenerse de relacionar esta entrada con la web 2 cojones.

Subversion Server. Howto

Here you can find how to prepare a subversion repository and its integration with Apache 2.

You need apache with webDAV to access repository content using http or https protocol. If you prefer not to use apache, then you should use svnserve (prefered in daemon mode). This will mean using svn protocol.
Be careful with firewalls (see ahead).
And, of course, always better with Debian.

Subversion for repository administrators (using Apache 2)

In order to create a repository you need to follow these steps (do it in a root shell).

Install the needed packages:

  • apache2
  • subversion
  • libapache2-svn

Add next rules to your host in Apache 2. In Debian a mostly equal config (that you should modify) exists under /etc/apache2/mods-available/dav_svn.conf
Configuration sniplet:

< Location /svn>
# Uncomment this to enable the repository,
DAV svn
# Set this to the path to your repository
# SVNPath /var/lib/svn
# SVNParentPath /var/lib/svn/repository
SVNPath /var/lib/svn/repository
# The following allows for basic http authentication. Basic authentication
# should not be considered secure for any particularly rigorous definition of
# secure.
# to create a passwd file
# # rm -f /etc/apache2/dav_svn.passwd
# # htpasswd2 -c /etc/apache2/dav_svn.passwd dwhedon
# New password:
# Re-type new password:
# Adding password for user dwhedon
# #
# http://svnbook.red-bean.com/nightly/en/svn.serverconfig.httpd.html
# configuration for mixed authenticated/anonymous access
Satisfy Any
Require valid-user
# Uncomment the following 3 lines to enable Basic Authentication
AuthType Basic
AuthName “Subversion Repository”
AuthUserFile /etc/apache2/dav_svn.passwd
# Uncomment the following line to enable Authz Authentication
# AuthzSVNAccessFile /etc/apache2/dav_svn.authz
# The following three lines allow anonymous read, but make
# committers authenticate themselves.
< LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
< /LimitExcept>

(Important: Don’t use a DocumentRoot setting for this virtual host!”)

Restart apache with or reload apache configuration without finishing open connections with (prefered)

root@maquine:~ $ /etc/init.d/apache2 reload
or
root@maquine:~ $ apache2ctl graceful (prefered)

Create the repository and create a password file:

root@maquine:~ $ svnadmin create /var/lib/svn/repository
root@maquine:~ $ htpasswd2 -c /etc/subversion/passwd [username]
root@maquine:~ $ chown -R www-data:www-data /home/svn

Don’t forget to make the repository accessible for your web server:

To test it, try accessing it with a browser or try to check out the file:

user@maquine:~ $ lynx http://localhost/svn
user@maquine:~ $ svn co http://server/svn

(You will not be prompted for credentials. That’s normal.)

Worked?
Voila. The repository is set up.
You can check a ready setup in http://www.eldemonionegro.com/svn/.

Subversion for repository administrators (using subversion protocol)

You just need to put on work svn server.

user@maquine:~ $ ls -la /var/lib/svn/
total 1
drwxr-xr-x 4 root www-data 96 2005-06-06 00:45 .
drwxr-xr-x 56 root root 1480 2005-06-03 17:00 ..
drwxr-x— 7 root www-data 224 2003-02-20 00:37 project1
drwxr-x— 7 root www-data 224 2004-11-15 21:23 project2
user@maquine:~ $ svnserve -d -T -r REPOSITORY_DIR (Example 1: /var/lib/svn/project1/ – Example 2: /var/lib/svn/)

(-d: daemon, -T: spawn a thread instead of a process for each connection, -r root: root repository)

Try to check out the file:

user@maquine:~ $ svn co REPOSITORY_URL (Example 1: svn://server/ – Example 2: svn://server/project1/)

Worked?
Voila. The repository is set up.

Subversion for repository users

To checkout (=download) the files in the repository for the very first time run this command::

user@maquine:~ $ svn co http://server/svn

Don’t worry about other people working on the same files. Just do your changes to the files and when you seem to have a stable state (make sure everything works well enough so not everything will break for others) you should check in(=upload) your work:

user@maquine:~ $ svn ci

(Only when committing your changes you will be prompted for your username and password.)

Run the following command regularly to get the changes from other contributors::

user@maquine:~ $ svn update

If you want to add new files to the repository::

user@maquine:~ $ svn add [filename]

To get a status of which files have changed::

user@maquine:~ $ svn stat

Subversion for local repositories

This type of installation is used when you want subversion to track your local files but don’t want/need to put it on a host. You can create a local repository and access it directly. This repository is not password protected and it’s permissions depend on the filesystem’s permissions.

Install the needed packages (as root or with sudo) and create the repository (with your user):

root@maquine:~ $ apt-get install subversion
root@maquine:~ $ svnadmin create /home/joe/repositorie

The url to your repository is it’s path preceeded with file://. For example to checkout you would do the following:

user@maquine:~ $ svn co file:///home/joe/repositorie

Subversion firewall rules

In order to acces your subversion repository using svn protocol you should reconfigure your firewall or update daemon config.
If you need to access subversion remotely, by default it runs on port 3690 using TCP.

Resources and comments

Original Authors: Christoph Haas, Tiago Cogumbreiro
Modified by: Enrique Garcia

Viewvc (previously viewcvs)

Right now viewcvs is the old version which is available under Debian. I recomend to install the latest viewvc from official website until package gets updated.
For more about it’s history, look up in http://www.viewvc.org/who.html
Instalation is really simple, it’s only complexity resides in the apache 2 configuration. Which is not really well documented and can cause some headache.

Installation

Download here latest stable version from viewvc

I will install everything under /opt because it’s my favourite place (and because it’s standar (LSB rules I think) to put extrange things there).

user@machine:~$ cd /opt
user@machine:~$ wget http://viewvc.tigris.org/files/documents/3330/34803/viewvc-1.0.3.tar.gz
user@machine:~$ tar -xvzf viewvc-1.0.3.tar.gz
user@machine:~$ cd viewvc-1.0.3
user@machine:~$ ./viewvc-install

[will be prompted some easy questions] Answer first /opt and then leave it as it is.

Take a look at INSTALL and README. It’s always good to read this stuff, and doesn’t hurt.

user@machine:~$ emacs /opt/viewvc/viewvc.conf
[main changes I made]
user@machine:~$ diff viewvc.conf ../viewvc-1.0.3/viewvc.conf.dist
72c72
< #cvs_roots = cvs: /home/cvsroot --- > cvs_roots = cvs: /home/cvsroot
80c80
< svn_roots = svn: /var/lib/svn/repository --- > #svn_roots = svn: /home/svnrepos
105c105
< default_root = svn --- > default_root = cvs
138c138
< mime_types_file = /etc/mime.types --- > #mime_types_file = /usr/local/apache/conf/mime.types
142c142
< address = < a href="mailto:svn-admin@XXX.XXX">Administrador del repositorio Subversion< / a>

> address = < a href="mailto:cvs-admin@insert.your.domain.here">No admin address has been configured< / a>
248c248
< languages = es-es, en-us --- > languages = en-us
391c391
< docroot = /viewvc-doc --- (LOOK APACHE 2 CONFIG TO EXPLAIN THIS CHANGE) > #docroot = /docroot
435c435
< use_enscript = 1 --- > use_enscript = 0
445c445
< use_highlight = 1 --- > use_highlight = 0
459c459
< use_php = 1 --- > use_php = 0
473c473
< allow_tar = 1 --- > allow_tar = 0

For coloured syntax I installed next packages. But I am not really sure they are needed.

user@machine:~$ apt-get install highlight enscript

Apache 2 configuration

Here I put my apache 2 configuration for viewvc. I’ve two versions, both of them work. Again I recomend take a take a look at INSTALL and README for answers. One is the version for cgi and the other for mod_python. I’m using mod_python because it’s known to be faster.

CGI

< IfModule !mod_python.c>
< IfModule cgi.c>
# para la instalacion local
ScriptAlias /viewvc /opt/viewvc/bin/cgi/viewvc.cgi
# para el paquete debian
# ScriptAlias /viewsvn /usr/lib/cgi-bin/viewcvs.cgi
< /IfModule>
< /IfModule>

mod_python

< IfModule mod_python.c>
Alias /viewvc-doc “/opt/viewvc/templates/docroot”
ScriptAlias /viewvc /opt/viewvc/bin/mod_python/viewvc.py
< Location /viewvc>
AddHandler python-program .py
# This appends “our path” to python path
PythonPath “[‘/opt/viewvc/bin/mod_python’] + sys.path”
PythonHandler handler
PythonDebug On
< /Location>
< /IfModule>

Look the result at http://www.eldemonionegro.com/viewvc/

Resources and comments

Realizar un proyecto de software libre desde 0

Al tiempo de pensar los requisitos que debe seguir un proyecto de software libre se publicó este artículo, que razona y aconseja un poco sobre cada uno de los pasos. The Birth of a FOSS application.

En cualquier caso, yo voy a ir detallando cada paso importante. De forma que este documento lo iré actualizando poco a poco.

¿Porqué hay tantos modelos de baterías?

Me parece muy curioso y muy estúpido que existan tantos modelos distintos de baterías.
Hablo concretamente de los productos electrónicos. Cuando les dará por crear un estándar, como en el caso de las pilas de 1’5 voltios.
Una batería que se pueda intercambiar y utilizar en distintos aparatos. Al menos entre aparatos que poseen las mismas funcionalidades.
Por ejemplo, los ordenadores portátiles, las cámaras, las …. La única pieza que no puedo usar en dos portátiles distintos es (casi) en exclusiva la batería.

Es que, crear un estándar, supondría un ahorro tremendo. Cosas beneficiosas que supondría:

  • Ahorro en el proceso industrial. Tendría repercusiones económicas directas en el bolsillo del consumidor.
  • Ahorro de gasto material. Una batería quedaría inútil con tanta facilidad.
  • Ahorro de tiempo y dolores de cabeza. Es un sufrimiento tener que estar pendiente de las baterías de X y de dónde encontrarla, etc.
  • Mejora en la calidad de las baterías.
  • Añadir vosotros más a la lista.

De mis vueltas y vueltas al tema de Baterías para portátil.