Report inadequate content

Development, Mac in Harecoded

Expand

Conectar por SSH sin password (autenticación de clave pública)

 TAGS:

Esta es una de aquellas cosas que uno hace una y otra vez y al final pierde 10 minutos intentando recordar los comandos o buscando la información.

Para conectar a un servidor remoto por SSH sin usuario ni contraseña todo lo que hace falta es compartir una clave entre cliente y servidor. Los pasos son "mu" sencillos:

  1. Asegurarse que la carpeta .ssh existe en el servidor al que nos queremos conectar
  2. Crear una clave RSA pública en la máquina cliente (la que se conecta):
    ssh-keygen -t rsa
    Cuando se te pida por un password, dale al enter sin poner ninguno (este es el propósito del artículo, sin passwords)
  3. Copiar la clave pública en el servidor:
    scp ~/.ssh/id_rsa.pub usuario@servidor.com:.ssh/authorized_keys2

    Puedes omitir la parte usuario@ si te conectas con el mismo usuario.

Y esto es todo amigos. En la siguiente conexión por SSH ya no se pedirá de nuevo el password.

Importante:

A partir de este momento, si alguien robara la clave pública que has guardado en ~/.ssh/id_rsa tendría acceso completo a tu servidor. Más vale que la protejas bien :)

Si dejas un password en la autenticación RSA puede ser una buena idea desactivar en el servidor el acceso SSH vía login/password y dejar sólo autenticación por clave.

Expand

How to create a patch and apply it with subversion

If you want to create a patch with svn you only have to type in the terminal something like:

svn diff yourproject > yourproject.patch

Where yourproject is the folder containing the modified source code.

Then, to restore the patch (apply the changes stored in patch in a new working copy), copy the patch file yourproject.patch in the machine where you want apply the patch and "cd "to the parent folder containing the yourproject folder (not inside yourproject). Then type:

patch -p0 -i /path/to/yourproject.patch

If you do not respect the same hierarchy when creating and applying the patch then you'll have to play around with the "p0" parameter (gives the entire file name unmodified). Of course the patch command is not related to SVN and you can use it in many other environments.

Expand

Instalar Memcache en Mac

Instalar el demonio de memcached en Mac no es tan complicado como parece siguiendo estos sencillos pasos.

Primero de todo asegúrate que tienes todos los requisitos

Requisitos para instalar Memcached

  • Un compilador GCC. No te asustes! Viene instalando las XTools de Mac si es que ya no las tienes
  • Descargarte el script de instalación desde topfunky

Instalación del servidor Memcached

Abre una terminal i navega hasta la ruta donde te has descargado el script. Dale permisos de ejecución y ejecútalo. Así:

chmod +x install-memcached.sh
sudo ./install-memcached.sh
echo "export EVENT_NOKQUEUE=1" >> ~/.bash_profile 

La última linea añade al inicio de tu shell la variable de entorno que requiere Memcache. Si durante la compilación ves que algo falla es que el compilador no está bien instalado. Asegúrate de bajarlo e instalarlo correctamente.

Si has instalado correctamente el servidor podrás ver la licencia o el manual de ayuda

memcached -i
memcached -h

Ahora, para arrancar memcached en mac con 100MB de memoria en el puerto 11211 como demonio haz:

memcached -m 100 -p 11211 -d

Puedes conectarte ahora y ver si está funcionando:

telnet 127.0.0.1 11211
	Trying 127.0.0.1...
	Connected to artomb.local.
	Escape character is '^]'.
	stats
	STAT pid 97257
	STAT uptime 10
	STAT time 1266004819
	STAT version 1.1.12
	STAT rusage_user 0.004421
	STAT rusage_system 0.005540
	STAT curr_items 0
	STAT total_items 0
	STAT bytes 0
	STAT curr_connections 1
	STAT total_connections 2
	STAT connection_structures 2
	STAT cmd_get 0
	STAT cmd_set 0
	STAT get_hits 0
	STAT get_misses 0
	STAT bytes_read 7
	STAT bytes_written 0
	STAT limit_maxbytes 104857600
	END
	quit
Connection closed by foreign host.

Para pararlo, tampoco sin misterios, un kill y arreando:

killall memcached

Instalar Memcache para PHP en Mac y scripts MAMP

Si quieres además integrar todo esto en MAMP para que se inicie al arrancar y instalar las librerías PHP hay un tutorial inglés muy bueno en Lullabot

Expand

Más herramientas para Textmate

Siguiendo la línea lanzada por Albert, vamos a ver un par de nuevas herramientas que nos facilitarán todavía más el uso de Textmate.

"Open in Textmate", abrir en Textmate desde el Finder

Abrir en Textmate, desde el Finder

Se trata de un icono/lanzador muy útil para colocar en el omnipresente Finder, mediante el cuál podemos abrir cualquier fichero/directorio en Textmate. Sólo hay que arrastrar el fichero (o grupo de ficheros) o directorio/s encima de este nuevo icono, y automáticamente se nos iniciará Textmate usando la selección que le hemos pedido. Muy muy práctico.

Para instalarlo, hemos de ir a The Pug Automatic y descargar OpenInTextmate.zip, guardando el fichero que contiene en /Application/Scripts (creamos la carpeta si no existe). Después, basta con arrastrar el fichero a la barra del Finder, y posicionarlo donde queramos.

ProjectPlus para Textmate

ProjectPlus para Textmate

Genial plugin que ofrece las siguientes mejoras:

  • Mejora el sidebar original de Textmate: ya no es un drawer si no un panel, que se puede posicionar a izda./dcha. Mejor aprovechamiento del espacio y un aspecto más actual para nuestro listado de ficheros.
  • Se pueden marcar los ficheros con etiquetas de colores, como en el Finder. Esto es genial para marcar aquellos ficheros que sabemos que debemos repasar más tarde, por ejemplo.
  • La estructura de árbol de ficheros de un proyecto se guarda entre sesiones, para que no tengas que volver a expandir los directorios en que estabas trabajando cuando cerraste la anterior sesión.
  • Quicklook integrado en el panel, para que puedas hacer un preview de ficheros sin tener que abrirlos.
  • Ordenar ficheros/carpetas por diferentes criterios, como orden alfabético, primero carpetas, etc.
  • Menú contextual 'Abrir con' cuando te posicionas en un fichero, cosa que no viene de serie en Textmate.

ProjectPlus lo podéis descargar desde aquí.

En fin, con estas dos herramientas en vuestro arsenal seguro que podéis trabajar todavía más cómodos con el genial Textmate.

Expand

Textmate: Plugins de PHP, Smarty y Subversion

TextmateTextmate es sin duda uno de aquellos editores para Mac OS X de los que hacen quitarse el sombrero. Como muchos otros editores, Textmate también soporta plugins (Bundles les llaman) y se pueden instalar un montón de ellos.

Para los programadores y webmasters que trabajan con PHP hay dos Bundles de especial utilidad: los que permiten Autocompletion para Smarty y Autocompletion para PHP. Para instalarlos simplemente hay que ejectuar en una terminal:

mkdir -p /Library/Application\ Support/TextMate/Bundles
cd /Library/Application\ Support/TextMate/Bundles
svn co http://macromates.com/svn/Bundles/trunk/Bundles/PHP.tmbundle
svn co http://macromates.com/svn/Bundles/trunk/Bundles/PHP\ Smarty.tmbundle

Si tenías Textmate abierto, pues simplemente hay que ir al menú Bundles -> Bundle Editor -> Reload Bundles

Plugin SVNMate TextmateUtilices PHP o no, no hay persona humana que pueda dedicar su tiempo a la programación un mínimo de tiempo y no utilize un sistema de versionado de código. Si eres de los amigos de SVN, recomiendo instalar el plugin SVNMate para ver en el drawer los iconos del estado de los ficheros. Algo que nos permite rápidamente ver el estado de nuestro proyecto :)

SVN diff TextmateInstales o no este plugin, Textmate ya lleva incorporado un cliente svn similar a TortoiseSVN, pero para Mac, claro. Para acceder al menú SVN simplemente utiliza la combinación de teclas:

CTRL+SHIFT+A

Para ver el listado de Bundles oficiales de Macromate, visita la URL:

http://macromates.com/svn/Bundles/trunk/Bundles/

Expand

Subversion (svn) 1.5 para Mac OS X

SCPluginSi utilizas distintos sistemas operativos y en ellos utilizas versiones distintas de subversion te habrás encontrado alguna vez con el mensaje de error:

svn: This client is too old to work with working copy '.'; please get a newer Subversion client

Si eres usuario de Mac y te ha pasado esto, o simplemente necesitas un cliente svn 1.5 para mac puedes descargarte la última versión de SCPlugin que ya incluye soporte para la 1.5, no es como TortoiseSVN, pero que le vamos a hacer :)

Con SCPlugin no vas cambiar la versión de command line, pero también puedes hacerlo utilizando el package de Martin Ott. Si utilizas algun sistema de ports en MacPorts puedes descargar también la versión de command line y si utilizas Fink, igualmente.

Expand

A free good cross-platform CSS editor

There are many applications where you can edit your Cascading Style Sheets (CSS) in Linux, Windows or Mac, but specifically in my Ubuntu I haven't found an application like CSSED (GTK). It supports auto-completion, really useful wizards, color pickers, preview and a long etcetera. You can go directly to the download page and see specific instructions for Gentoo, BSD, Mac OS X (via Fink), Windows ... or if you are an ubuntu or debian user just type in a terminal (or through the synaptic manager):

  • sudo apt-get install cssed