Mutt + msmtp + gmail

Desde siempre he querido poder mandar emails desde consola para poder mejorar algún script. bueno pues buscando ya sé cómo se hace.

Lo primero de todo es instalar mutt y msmtp que es un cliente muy ligero smtp

$sudo aptitude install mutt msmtp

lo siguiente será configurar mutt y msmtp para ello editamos el fichero .muttrc en nuestro home

$gedit .muttmrc

y añadimos:

# mail check options
set pop_host=pops://usuario:contraseña@pop.gmail.com:995
set pop_last
set sendmail = /usr/bin/msmtp
unset pop_delete
# check for new mail on startup
exec fetch-mail

Por último editamos el fichero .msmtprc

defaults
tls on
account default
host smtp.gmail.com
from usuario@gmail.com
auth on
tls on
tls_certcheck off
user usuario@gmail.com
password contraseña
port 587

y para que funcione correctamente le tenemos que dar pemisos 600

$chmod 600 .msmtprc

Y con ello ya sólo queda ejecutar mutt y  ver el correo desde consola.

Anuncios
Mutt + msmtp + gmail

Script cambiar resolucion de fotos

Hace tiempo hice un script para comprimir fotos automáticamente poco tiempo despues RoyalTux lo mejoró
. Ya me ha pasado un par de veces que he hecho las fotos con mi cámara a la máxima resolución(6mp) y sólo quería las fotos a la mínima (1mp), ya que son fotos de los amigos y no me hace falta grandes resoluciones para verlas en el ordenador. Entonces lo que hacia era cambiar la resolución con el programa convert y la opción -resize. Pero había un pequeño problema, y es que las fotos estaban tomadas tanto en horizontal como en vertical, entonces la resolución de la foto cambia y el proceso de cambiar resoluciones se hacia un poco rollo.

Pues hoy que estaba un tanto aburrido me ha venido a la cabeza una idea. Todas las cámaras digitales añaden a las fotos que toman una información digital sobre cómo ha sido tomada la foto (exif) entre esa información se encuentra si la foto esta horizontal o vertical. Para poder leer esta información es necesario instalar el paquete exif (aptitude install exif).Bien al hacer un exif de una foto tomada con mi cámara:

darkomen@carax:~/fotos$ exif P1070094.JPG
EXIF tags in ‘P1070094.JPG’ (‘Intel’ byte order):
——————–+———————————————————-
Tag |Value
——————–+———————————————————-
Fabricante |Panasonic
Modelo |DMC-FX01
|arriba – izquierda
|72,00
|72,00
|Pulgada
Software |Ver.1.0
Fecha y hora |2007:08:18 02:14:53
Posicionamiento YCbC|co-situado
Desconocido |
|
|arriba – izquierda
|72,00
|72,00
|Pulgada
Posicionamiento YCbC|co-situado
|1/30 seg.
|f/2,8
ExposureProgram |Programa normal
Velocidad ISO |100
|
Fecha y Hora (origin|2007:08:18 02:14:53
Fecha y Hora (digita|2007:08:18 02:14:53
ComponentsConfigurat|Y Cb Cr –
Bits comprimidos por|4,00
|0,0
MaxApertureValue |3,00
|
Fuente de luz |4
Flash |89
Distancia focal |4,6 mm
Nota del fabricante |5978 bytes de datos desconocidos
FlashPixVersion |FlashPix Version 1.0
Espacio de color |sRVA
PixelXDimension |1280
PixelYDimension |960
|
Fuente de archivo |DSC
Tipo de escena |
Render personalizado|Proceso normal
|
Balance de blanco |
|0,00
Distancia focal en p|28
Tipo de captura de e|
Control de ganancia |Normal
Contraste |Normal
|
Nitidez |Duro
InteroperabilityInde|R98
InteroperabilityVers|
——————–+———————————————————-
EXIF data contains a thumbnail (6653 bytes).

Bien si os fijais en la tercera línea pone ‘|arriba – izquierda’ eso quiere decir que se ha tomado en horizontal si vemos otra vertical, en esa misma línea pone ‘|izquierda – abajo’. Al menos así es en mi cámara. Una vez que sabemos esto y con ayuda de grep, filtraremos esa información. En este caso me ha resultado mas sencillo hacer un filtro de ‘|arriba – izquierda’, ver cuantas veces se repite en exif, si se repite más de una vez, es que está tomada en horizontal, si por el contrario no se repite es vertical, para muestra un botón:

for i in `ls *.JPG `;do #Hacemos un for con todas las fotos del directorio
VALOR=$(exif $i |grep -c arriba) #Hacemos el grep de ‘arriba’ de la información exif de la foto
if [ $VALOR != 0 ] #si el valor es distinto de 0
then
convert -resize 1250×980 $i $i; #la foto es horizontal y ponemos resolución horizontal
else
convert -resize 980×1250 $i $i; #la foto es vertical y ponemos resolución vertical
fi
echo “$i cambiada la resolución” #nos muestra información sobre qué foto se ha cambiado
done

y con eso automáticamente cambiará la resolución de todas las fotos, el tamaño es el que se indique en el script para mi caso ese es el correcto, lo podría haber hecho personalizable.. pero ya no sería tan automático. 😀

El último paso es copiar el fichero a ‘/urb/bin’ para que el script pueda estar disponible desde cualquier carpeta del pc

Script cambiar resolucion de fotos

¿Qué hago yo con mi GNU/linux?

Gracias a Lolo que me pasa este meme, voy a actualizar el blog!!

El meme consiste en ejecutar un comando en la consola del sistema y ver cuales son los comandos que más se utilizan así que ahí van los mios…

darkomen@carax:~$ history|awk ‘{print $2}’|awk ‘BEGIN {FS=”|”} {print $1}’|sort|uniq -c|sort -rn|head -10
94 sudo
85 picprog
39 cd
32 aptitude
22 wget
20 gpasm
17 cat
16 ls
15 search
11 install

Decir que los ultimos dos comandos son un alias para aptitudude en concreto para buscar e isntalar el paquete..Me resulta curioso que no aparezca por ningún lado fortune, ya que tengo que cada vez que abra una consola, me ejecute el programa para ver una frase.. bueno cosas del directo…
Le paso el meme a elsamu.

¿Qué hago yo con mi GNU/linux?