Instalación Rápida de Karamelo
2008-08-02 18:56:01-05
Programacion
Muchas veces nos quejamos de tiempo para hacer algunas cosas, lo cual es mi caso. Por eso me decidí a utilizar el cakephp-instaweb para instalar Karamelo. Basándome en el tutorial del Aarkerio, pondré este pequeño how-to muy parecido, pero que difiere en la forma de configurar el Postgresql.
Lo primero que necesitamos es instalar todos los paquetes que ocuparemos:
Para cualquier distribución basada en Debian, usamos aptitude o apt-get:
# aptitude install postgresql php5 php5-pgsql subversion cakephp-instaweb
o en su defecto : $ sudo aptitude install postgresql php5 php5-pgsql subversion cakephp-instaweb
Si usan alguna distribución diferente, simplemente usen la forma de instalar propia de la distro (yum, emerge, etc.), o compilen si gustan.
$ mkdir $HOME/devel && cd $HOME/devel
(Por si alguien no lo sabe, el && es para que si se ejecuta satisfactoriamente el primer comando, ejecute el segundo).
Descargamos el código fuente de CakePHP, y lo ponemos en un directorio llamado karamelo. (Recordar que ya estamos en el directorio $HOME/devel]).
$ svn co https://svn.cakephp.org/repo/branches/1.2.x.x/cake/ karamelo
Un paso intermedio que muchas veces no es necesario. En caso de que su descarga del repositorio de CakePHP tuviera un directorio app dentro. Tienen que borrarlo:
$ rm karamelo/app -Rf
Descargamos la nueva versión de Karamelo y lo ponemos en el directorio de aplicación del Cake que descargamos anteriormente.
$ svn co https://devel.mononeurona.org/repos/karamelo/trunk/app karamelo/app
Con esto simples pasos ya tenemos la versión actual de CakePHP y la versión en desarrollo de Karamelo en nuestra computadora. Ahora falta algo importante configurar la BD.
Como superusario, cambiarse al usuario postgres. De cualquiera de estas 2 formas.
$ su root
# su postgres
O en su caso:
$ sudo su postgres
Creamos un nuevo usuario para manejar la base de datos de karamelo.
postgres$ createuser karamelo -P
Pedirá la contraseña 2 veces, la cual será "karamelo" (sin las comillas). También pedirá los privilegios que se brindarán al usuario. Le pueden poner que "sí" a ser superusuario, en caso que así lo deseen. No afectará para este ejemplo.
¿Será el nuevo rol un superusuario? (s/n) n
¿Debe permitírsele al rol la creación de bases de datos? (s/n) n
¿Debe permitírsele al rol la creación de otros roles? (s/n) n
Creamos la base de datos:
postgres$ createdb -E UNICODE KARAMELODB -O karamelo -W
Pedirá una contraseña, la cuál es "karamelo". Si se le quita la -W no pedirá contraseña y no debería afectar en nada.
Nos salimos del usuario postgres, y del usuario root. (con exit)
Ahora creamos las tablas necesarias para la BD.
Nos cambimos de directorio:
$ cd $HOME/devel/karamelo/app/config/sql/postgresql
Ejecutamos el script para la creación de todas las tablas:
$ psql KARAMELODB -h localhost -U karamelo -W < karamelo.sql
La contraseña que pedirá será "karamelo"
Editamos el archivo de configuración (con el editor que gusten vi, emacs, nano, gedit, etc):
$HOME/devel/karamelo/app/config/database.php.default y lo guardamos en el mismo directorio como database.php. Y dejamos el arreglo $default, como sigue:
public $default = array(
'driver' => 'postgres',
'persistent' => false,
'host' => 'localhost',
'port' => 5432,
'login' => 'karamelo',
'password' => 'karamelo',
'database' => 'KARAMELODB',
'schema' => 'public',
'prefix' => '',
'encoding' => 'UTF-8'
);
Nos cambiamos de directorio:
$ cd $HOME/devel/karamelo
$ cakephp-instaweb
Entramos a un navegador a la siguiente dirección: http://localhost:3000
Listo!!!!

Ahora nada más loguearse como:
Login: john@site.edu
Password: karamelo
$ cd $HOME/devel/karamelo/app
$ svn update
Y con eso tendrán la versión más actual (en desarrollo) de karamelo.
De nuevo ejecutan:
$ cd $HOME/devel/karamelo && cakephp-instaweb
Y lo tendrán en la dirección: http://localhost:3000
¡Reportar bugs ayuda al desarrollo, no se olviden de hacerlo!
Instalación de Paquetes
Lo primero que necesitamos es instalar todos los paquetes que ocuparemos:
Para cualquier distribución basada en Debian, usamos aptitude o apt-get:
# aptitude install postgresql php5 php5-pgsql subversion cakephp-instaweb
o en su defecto : $ sudo aptitude install postgresql php5 php5-pgsql subversion cakephp-instaweb
Si usan alguna distribución diferente, simplemente usen la forma de instalar propia de la distro (yum, emerge, etc.), o compilen si gustan.
Creamos nuestro directorio de trabajo:
Lo crearemos en nuestro $HOME y se llamará "devel"$ mkdir $HOME/devel && cd $HOME/devel
(Por si alguien no lo sabe, el && es para que si se ejecuta satisfactoriamente el primer comando, ejecute el segundo).
Descargar CakePHP y Karamelo
Descargamos el código fuente de CakePHP, y lo ponemos en un directorio llamado karamelo. (Recordar que ya estamos en el directorio $HOME/devel]).
$ svn co https://svn.cakephp.org/repo/branches/1.2.x.x/cake/ karamelo
Un paso intermedio que muchas veces no es necesario. En caso de que su descarga del repositorio de CakePHP tuviera un directorio app dentro. Tienen que borrarlo:
$ rm karamelo/app -Rf
Descargamos la nueva versión de Karamelo y lo ponemos en el directorio de aplicación del Cake que descargamos anteriormente.
$ svn co https://devel.mononeurona.org/repos/karamelo/trunk/app karamelo/app
Con esto simples pasos ya tenemos la versión actual de CakePHP y la versión en desarrollo de Karamelo en nuestra computadora. Ahora falta algo importante configurar la BD.
Configuración de la BD
Como superusario, cambiarse al usuario postgres. De cualquiera de estas 2 formas.
$ su root
# su postgres
O en su caso:
$ sudo su postgres
Creamos un nuevo usuario para manejar la base de datos de karamelo.
postgres$ createuser karamelo -P
Pedirá la contraseña 2 veces, la cual será "karamelo" (sin las comillas). También pedirá los privilegios que se brindarán al usuario. Le pueden poner que "sí" a ser superusuario, en caso que así lo deseen. No afectará para este ejemplo.
¿Será el nuevo rol un superusuario? (s/n) n
¿Debe permitírsele al rol la creación de bases de datos? (s/n) n
¿Debe permitírsele al rol la creación de otros roles? (s/n) n
Creamos la base de datos:
postgres$ createdb -E UNICODE KARAMELODB -O karamelo -W
Pedirá una contraseña, la cuál es "karamelo". Si se le quita la -W no pedirá contraseña y no debería afectar en nada.
Nos salimos del usuario postgres, y del usuario root. (con exit)
Creación de las tablas y configuración de la aplicación
Ahora creamos las tablas necesarias para la BD.
Nos cambimos de directorio:
$ cd $HOME/devel/karamelo/app/config/sql/postgresql
Ejecutamos el script para la creación de todas las tablas:
$ psql KARAMELODB -h localhost -U karamelo -W < karamelo.sql
La contraseña que pedirá será "karamelo"
Editamos el archivo de configuración (con el editor que gusten vi, emacs, nano, gedit, etc):
$HOME/devel/karamelo/app/config/database.php.default y lo guardamos en el mismo directorio como database.php. Y dejamos el arreglo $default, como sigue:
public $default = array(
'driver' => 'postgres',
'persistent' => false,
'host' => 'localhost',
'port' => 5432,
'login' => 'karamelo',
'password' => 'karamelo',
'database' => 'KARAMELODB',
'schema' => 'public',
'prefix' => '',
'encoding' => 'UTF-8'
);
Nos cambiamos de directorio:
$ cd $HOME/devel/karamelo
$ cakephp-instaweb
Entramos a un navegador a la siguiente dirección: http://localhost:3000
Listo!!!!

Ahora nada más loguearse como:
Login: john@site.edu
Password: karamelo
Nota muy importante:
Esto únicamente la tendría que hacer una sola vez para probar Karamelo. Para actualizar la versión de Karamelo. Simplemente tendrían que hacer lo siguiente:$ cd $HOME/devel/karamelo/app
$ svn update
Y con eso tendrán la versión más actual (en desarrollo) de karamelo.
De nuevo ejecutan:
$ cd $HOME/devel/karamelo && cakephp-instaweb
Y lo tendrán en la dirección: http://localhost:3000
¡Reportar bugs ayuda al desarrollo, no se olviden de hacerlo!
Permalink: http://www.mononeurona.org/users/entry/thot/1479
Comentblogs:









