sábado, 31 de agosto de 2013

Agregar nombre de la rama (branch) de git al prompt de OSX o Linux

Este proceso en realidad es muy sencillo si se esta utilizando alguna interfaz gráfica pero en ocasiones puede ser útil para los que nos gusta mucho usar el terminal el poder ver en todo momento en cuál rama (branch) estamos actualmente o tenemos activa.

Para dicho fin debemos editar el archivo .bash_profile lo cuál podemos hacerlo desde el terminal usando vim o el editor de su preferencia:

$ vi ~/.bash_profile

Añadimos la siguientes líneas:

parse_git_branch() {
    git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ [\1]/'
}
export PS1="\W\[\033[34m\]\$(parse_git_branch)\[\033[00m\] $ "

La parte donde se agrega la rama es en $(parse_git_branch), la sección [\033[34m\]\ es para agregar color a esa sección, el color que tengo seleccionado actualmente es el azul, para modificar el color solo es modificando el 34m por alguno de los valores válidos:

30m # Regular
31m # Rojo
32m # Verde
33m # Amarillo
34m # Azul
35m # Purpura
36m # Cian
37m # Blanco

Espero te sea de utilidad !



Referencias:
https://github.com/mfitzp/golifescience/blob/master/content/computing/add-git-branch-name-to-terminal-prompt-mac.md
https://news.ycombinator.com/item?id=2089285

miércoles, 12 de junio de 2013

Enviar correo con stunnel y gmail para impresoras Dell

En este caso me toco realizar una tarea de configuración algo interesante con el programa stunnel, como de costumbre dejo aqui como me funciono. Creo que este proceso puede servir aunque no se trate de configurar un cliente de correo de una impresora.

El detalle es que el cliente de correo de una impresora que tenemos la Dell 2335 dn no tiene soporte para conexiones encriptadas (o al menos la versión de firmware que tenemos instalada), por lo anterior fue necesario instalar un servidor de stunnel.

Puedes descargar el stunnel desde aquí:
http://www.stunnel.org/

Una vez instalado si tienes el programa corriendo es recomendable que lo cierres o dando click sobre el icono que queda a lado del reloj hagas click en salir.


Posteriormente abriremos el archivo stunnel.conf en mi caso como quedo instalado lo puedes abrir desde la misma carpeta del programa.


Dentro de ese archivo deberá tener lo siguiente (Ojo las líneas con - ; - son comentarios):
cert = stunnel.pem
socket = l:TCP_NODELAY=1
socket = r:TCP_NODELAY=1
debug = 7
client=yes
[gmail]
accept=5000
connect=smtp.gmail.com:465

Guardamos posteriormente y luego volvemos abrir el stunnel utilizando la opción -Run stunnel- que se encuentra dentro de las opciones de Todos los programas/stunnel/Run stunnel

NOTA: Es mejor cerrar el programa y abrirlo ya que estaba utilizando antes la opción reload y no funcionaba.

A partir de ese momento ya debemos poder utilizar ese equipo como tunel esto es, para configurar el correo electrónico deberemos utilizar las siguientes opciones:
-------
servidor de correo: [IP del servidor que tiene instalado el stunnel]

puerto de conexión: [ En este caso siguiendo el ejemplo es 5000 ]

usuario: [ Nuestro correo de gmail ]

contraseña: [ La contraseña del correo ]
-------
Con lo anterior debería funcionar, en mi caso colocando esos parametros en la configuración de la impresora Dell 2335 dn ya logre que enviará correos desde una cuenta de gmail.


Saludos, Espero te sea de utilidad !


Referencias:
http://www.charmedquark.com/vb_forum/showthread.php?t=7943
http://www.projectpier.org/manual/installation/gmail-for-smtp

viernes, 31 de mayo de 2013

Firebird isql terminal

Como ven me he hecho muy aficionado a la terminal, esta vez le toca el turno a una base de datos que utilizó mucho en mi trabajo Firebird.

Para hacer una conexión se debe utilizar:

$ isql
SQL> connect "192.168.1.2:c:\bases\mibase.gdb" user "miUsuario" password "laClave";
Database:  "192.168.1.2:c:\bases\mibase.gdb", User: miUsuario

Con la instrucción anterior se hace la conexión al servidor remoto 192.168.1.2 utilizando miUsuario y laClave. Hasta aqui todo facil.

Para ver un listado de las tablas podemos utilizar el siguiente comando:

SQL> show tables;

Por otro lado si deseamos ver los campos de una tabla utilizamos:

SQL> show table miTabla;

Para salir de isql sin realizar un commit de las transacciones se debe utilizar:

SQL> quit;

En caso contrario para salir y aplicar todos los cambios utilizar:

SQL> exit;

De aquí podemos utilizar las instrucciones de SQL que ya conocemos. En particular empece a revisar como conectarme por que estaba interesado en algo en particular exportar información.

Para exportar información utilizamos:

SQL> output "miarchivo.txt"
SQL> select * from miTabla;
SQL> output;

Con lo anterior en miarchivo.txt quedará almacenado el resultado de la consulta de miTabla.


Más información:
http://www.firebirdsql.org/pdfmanual/Firebird-isql.pdf


Espero te sea de utilidad !

lunes, 20 de mayo de 2013

Conectar la terminal con los recordatorios (OSX terminal or applescript and reminders)

Como de costumbre ahora otro pendiente conectar la terminal de OSX con la aplicación de Recordatorios de Mountain Lion, he iniciado un proyecto en github que se llama task (https://github.com/omaryahir/task), ya puedes marcar como concluida alguna tarea, crearla o eliminarla, incluso puede conectarse a la aplicación de Calendario también.


Referencias


viernes, 8 de marzo de 2013

Emulador Android: Bluestacks instalar .apk de manera manual

Con la necesidad de utilizar algunas aplicaciones Android desde mi Mac me dia a la tarea de buscar emuladores, y me encontre con que BlueStacks ahora tiene soporte para Mac e incluye ya algunas aplicaciones.

Sin embargo no incluye todas por lo que me di a la tarea de como cargar directamente un .apk (o archivo ejecutable para Android en el sistema).

La forma que encontre es unicamente con la terminal así que debemos correr este comando:

$ cd /Applications/BlueStacks.app/Contents/Runtime

Dentro de ese directorio existe un comando llamado uHD-Adb para ejecutarlo debemos usar un comando como el siguiente:

$ ./uHD-Adb install /mis_apks/mi_aplicacion.apk

Con lo anterior se ejecuta una serie de mensajes y termina indicando -Success- si la instalación concluyo con éxito, con eso me funciono...

Espero también te sea de utilidad !



Referencias:
https://getsatisfaction.com/macbstk/topics/how_to_install_apk_on_bluestacks_for_mac_os_x_alpha_2
http://www.bluestacks.com/

viernes, 1 de marzo de 2013

Convertir un .py a .app con py2app

Me vi en la necesidad de convertir un script de python de .py a .app y lo hice con py2app, describo como lo hice.

Instale el py2app, utilizando la instrucción con easy_install, lo que implica que debe estar instalado.

$ sudo easy_install -U py2app

Una vez concluida la instalación, fue necesario crear un archivo setup.py para esto utilice el comando py2applet de la siguiente forma:

$ py2applet --make-setup notifyhour.py --iconfile="/icon.icns"

Posteriormente solo edite el archivo resultante de setup.py la sección de OPTIONS, ya que la sección de iconfile pone la ruta completa al archivo pero puede funcionar indicando solo la ubicación del archivo si esta en raíz o su ruta relativa:

OPTIONS = {'argv_emulation': True,
 'iconfile': 'icon.icns'}

Una vez realizado el cambio anterior ejecute la instrucción:

$ python setup.py py2app

Con lo anterior me creo la aplicación si necesitas hacer alguna modificación recomiendan limpiar los directorios build y dist, se puede hacer de la siguiente forma:

$ rm -rf build dist

Ojo hay que estar en el directorio del proyecto.


Espero te sea de utilidad !


Más información:
http://svn.pythonmac.org/py2app/py2app/trunk/doc/index.html#installing-with-easy-install

martes, 26 de febrero de 2013

Utilizando el Centro de Notificación de Mac desde Python (Mac Notification Center)

Es realmente muy sencillo utilizarlo, si usamos la siguiente herramienta:

Básicamente después de instalarlo solo se deben usar las siguientes instrucciones:
-------
from pync import Notifier
Notifier.notify("Hola Mundo !")
-------

Y con eso es todo realice un script que envía un mensaje cada hora pueden echarle un vistazo en el repositorio de github:

Saludos espero te sea de utilidad !