Es un tema que se ha tratado varias veces en otros blogs y tutoriales a lo largo de Internet, y es que algo que tienen en común muchos entornos de escritorio de GNU/Linux en la actualidad es un demonio de notificaciones, éste recibe mensajes de las aplicaciones que quieran escribir una notificación (valga la redundancia), y los muestra en pantalla.
Lo bueno que tiene hacerlo así es que cualquier aplicación que quiera escribir algo, sólo tiene que enviar el texto y sólo tenemos un dibujante, eso reduce bastante el coste en memoria (si tenemos cuatro aplicaciones y las cuatro se dedican a lo mismo, estamos desperdiciando memoria), por otra parte, unifica el estilo (en el mismo ejemplo de antes, tendríamos cuatro formas de dibujar distintas y a lo mejor, cada una con un estilo diferente) y por otra parte, dada la filosofía que siguen estos proyectos, nos proporcionan herramientas para enviar notificaciones fácilmente.… Leer artículo completo
Una nueva etapa para el blog

Después de 3 años me he decidido a cambiar un poco el blog. Pero sólo un poco, si sois antiguos visitantes habréis visto que el tema es muy parecido, he decidido coger el tema que me gustaba, cambiar un poco el esquema de colores y la distribución (he cambiado el pie de página, y he puesto la parte principal de tamaño variable entre otras cosas) y modificarle un poco el código.… Leer artículo completo
Ejecutar scripts mientras inicia el sistema
En ocasiones, queremos automatizar tareas al arranque del ordenador, tal vez para ofrecer asistencia remota (y enviarnos la IP del ordenador), actualizar una base de datos, correr scripts en una página web, hacer que el ordenador emita un sonido, inicializar un sistema antirrobo, o incluso interactúe con un arduino.
En muchas ocasiones, incluir nuestros scripts en /etc/rc.local basta, en Debian y derivadas lo encontramos fácilmente, en otras distribuciones también hay forma de hacerlo, aunque si necesitamos algo más complicado, como por ejemplo ejecutar varios scripts en un directorio determinado, en varios runlevels y que cuando se apague el ordenador se ejecuten otros scripts diferentes he hecho un pequeño init-script.… Leer artículo completo
[Bash] Llamar a una variable cuyo nombre lo contiene otra variable
Imaginemos el caso en que tenemos tres variables (ROJO=5 ; VERDE=6 ; AZUL=7), y una función a la que le pasaremos el nombre del color y nos devolverá su valor (así visto parece tontería, pero luego podremos normalizarlo, aclararlo, oscurecerlo, etc).
1
2
3
4
5
6
7
8
9
10ROJO=5
VERDE=6
AZUL=7
function get_color()
{
echo ${!1}
}
get_color ROJOEfectivamente si en Bash escribimos ${!VARIABLE} no nos devuelve el nombre que contiene la variable, sino que devuelve el valor de la variable cuyo nombre es $VARIABLE.… Leer artículo completo
Solucionar problema con «Timeout»s y «Broken pipe»s con ssh y scp
En ocasiones, cuando la conexión SSH que tenemos establecida no es muy estable (a mi me surgía el problema con un dispositivo Wifi que en ocasiones se desconectaba y no podía transferir ficheros largos porque a mitad se desconectaba), puede que nos hayamos encontrado con este problema.
Para solucionarlo, debemos editar /etc/ssh/sshd_config o /etc/sshd_config (dependiendo de nuestra distribución). Primero buscaremos la línea que comienza con ClientAliveInterval y pondremos su valor a 100 o menos (son los segundos para que el servidor envíe una señal al cliente para ver si está vivo).… Leer artículo completo
Aventuras devolviendo una licencia de Windows que venía de serie con un portátil
Este post cuenta con una actualización del 27 de Agosto de 2013, que cuenta acerca de las devoluciones de Windows 8.
Hace un par de meses, me compré un portátil nuevo, el anterior había cumplido 6 años y por motivos laborales debía cambiarlo. El caso, es que, como casi todos los ordenadores actualmente, viene con una versión de Microsoft Windows7 recomendada hasta la saciedad por el fabricante, que aunque lleguen a decir alguna vez que Ubuntu es más seguro que Windows, al poco tiempo y por la cuenta que les trae vuelven a recomendar Windows.… Leer artículo completo
Siento la tardanza
Siento haber tardado tanto en responder comentarios y actualizar algún artículo, el trabajo no me deja tiempo para el blog, y escribo y lo mantengo cuando puedo. Espero darle un empujón estos días.
Gracias a tod@s por vuestra consideración.… Leer artículo completo
Accediendo a bases de datos MySQL desde C++
Muchos estamos acostumbrados a utilizar bases de datos en PHP pero cuando se trata de un programa de escritorio almacenamos los cambios en archivos sin contemplar esta posibilidad.
Usar una base de datos puede ser un gran aliado a la hora de hacer aplicaciones que almacenen gran cantidad de información o vayamos a acceder desde varios puntos a dicha información (programas multipuesto, por ejemplo).
También es de gran utilidad si construimos un software que haga más ligeras ciertas tareas dentro de un servidor web (necesitamos la posibilidad de ejecutar programas sobre el servidor y tal vez de compilarlos allí, pero es una opción bastante buena, en ocasiones un script puede ejecutarse de forma demasiado lenta.… Leer artículo completo
Guardar un log con las excepciones producidas en C++
Sobre todo a la hora de crear un programa se pueden generar muchas excepciones, bueno y cuando estamos usándolo de forma normal también, y todos sabemos del típico cliente/amigo/usuario que nos llama de madrugada o a una hora normal diciendo:
– «El programa me da error» –
– «¿Qué error te da el programa?» – respondemos
– «Nada error, solo eso» –
– «Bueno, ¿seguro que no salía nada más?» – insistimos
– «Sí, muchas letras y cosas que no tenían sentido» – nos responde para bajarnos la moral – «¿qué puede ser?»
Nuestra respuesta ahora depende de la relación que tengamos con esa persona, ya sea cliente, amigo, usuario, desconocido… o destornillador, digo, desarrollador (que hay algunos que también…).… Leer artículo completoEscribir con colores en la terminal al estilo C++
Hace mucho, publicaba en esta web stermp, es una versión libre de la biblioteca conio para C. Esa biblioteca muy popular en los 90 escribía en colores por la consola, pero propietaria y sólo para entornos DOS y Windows.
Aunque cuando utilizamos C++, es normal querer utilizar un método más acorde con lo que estamos haciendo, es decir, utilizar streams.
Para ello, podemos utilizar el siguiente código:
… Leer artículo completo1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79class ccolor
{
public:
ccolor(unsigned short c)
{
setColor(c);
background=-1;
}
ccolor(unsigned short fc, unsigned short bc)
{
setColor(fc);
background=(bc<BRILLO_MIN)?






Últimos comentarios