"No dejes que tus anhelos pasen por alto tu dignidad."

[Linux] Ubuntu no encuentra los repositorios de Karmic Koala

Hace ya algunos días (semanas, de hecho) me topé con el siguiente problema: intentar instalar algo (cualquier cosa) en una PC con Ubuntu 9.10 Karmic Koala y recibir el siguiente error:

Err http://archive.ubuntu.com karmic/main Packages
404 Not Found [IP: 91.189.92.179 80]
Err http://archive.ubuntu.com karmic/restricted Packages
404 Not Found [IP: 91.189.92.179 80]
Err http://archive.ubuntu.com karmic/universe Packages
404 Not Found [IP: 91.189.92.179 80]
Err http://archive.ubuntu.com karmic/multiverse Packages
404 Not Found [IP: 91.189.92.179 80]
Descargados 2.766B en 4s (572B/s)
W: Imposible obtener http://archive.ubuntu.com/ubuntu/dists/karmic/main/binary-i386/Packages.gz 404 Not Found [IP: 91.189.92.179 80]

W: Imposible obtener http://archive.ubuntu.com/ubuntu/dists/karmic/restricted/binary-i386/Packages.gz 404 Not Found [IP: 91.189.92.179 80]

W: Imposible obtener http://archive.ubuntu.com/ubuntu/dists/karmic/universe/binary-i386/Packages.gz 404 Not Found [IP: 91.189.92.179 80]

W: Imposible obtener http://archive.ubuntu.com/ubuntu/dists/karmic/multiverse/binary-i386/Packages.gz 404 Not Found [IP: 91.189.92.179 80]

E: Algunos archivos de índice no se han podido descargar, se han ignorado,
o se ha utilizado unos antiguos en su lugar.

Al principio, hice lo obvio: copié las URLs y traté de acceder desde el navegador. Al encontrarme con el susodicho 404, fui subiendo de nivel a ver qué encontraba.
Grande fue mi sorpresa cuando al llegar a http://archive.ubuntu.com/ubuntu/dists/ lo único que encontré fueron las releases desde Lucid en adelante y Hardy Heron (Ubuntu 8.04) (que aún no interpreto el criterio que se utilizó para dejarla junto con las otras).

Googleando un cacho, me topé con que los muchachos de Canonical movieron las releases viejas a http://old-releases.ubuntu.com/.

Así que hice lo siguiente:

En una terminal, ejecutar

sudo gedit /etc/apt/sources.list

Esto nos va a abrir un editor de textos con el archivo que contiene las rutas en las que debe ir a buscar los paquetes de software el gestor de paquetes de Ubuntu.

Allí probablemente haya varias líneas que tengan un formato como este:

deb http://archive.ubuntu.com/ubuntu/ karmic main restricted universe multiverse

Ahí, lo único que hay que hacer, es reemplazar “archive” por “old-releases” en todas las líneas en las que aparezca.

Guardamos el archivo y volvemos a la consola para actualizar los repos

sudo apt-get update

Y listo! Con eso tenemos corregidos los repositorios.

Por supuesto, lo preferible es tener la versión de Ubuntu lo más actualizada posible. Pero bueno, dejo este post por si hay alguien tan colgado como yo, con PCs con instalaciones viejas =)

Saludos, nos leemos!

[Linux] Cómo instalar Apache/MySQL/PHP en Ubuntu [UPDATED]

Fueron varias las veces que tuve necesidad de crear un entorno LAMP (Linux/Apache/MySQL/PHP) para laburar… y en todas ellas siempre me pasó lo mismo: no me acuerdo como corno era :S

Usualmente, habría dos opciones:

  • Instalar XAMPP
  • Instalar los paquetes por separado, lo cual requeriría instalar Apache, luego MySQL y luego PHP, más todas las extensiones necesarias.

El tema con XAMPP es que una vez que lo bajás, funciona *desde* el directorio en el cual lo instalás (/opt en la mayoría de los casos). Lo cual se convierte en un problema si en algún momento comenzás a desarrollar con (por ejemplo) Web2Py o Django, que buscan MySQL en el directorio de instalación predeterminado.
Ojo: se pueden configurar para que busquen MySQL en otro lado, pero en sí no tiene sentido, porque al momento en el cual se haga el deploy de la aplicación, probablemente lo tengamos en el directorio que viene por default.

Teniendo en cuenta esta cuestión, nos queda instalar paquete a paquete. Cosa que siempre me dió muuucha fiaca.
Por suerte encontré hace algún tiempo una herramienta que facilita esta cuestión y se hace de una sola vez: tasksel.

$ sudo apt-get install tasksel

Cuando se termina de instalar, la ejecutamos con sudo:

$ sudo tasksel

En el listado que aparece, hay que seleccionar la opción “LAMP Server”, la cual se va a encargar de instalar de forma automágica todos los paquetes necesarios.

Durante la instalación nos va a pedir la password para la administración de la DB. Por favor si le piensan meter una password… no se la olviden.

Hay que tener en cuenta que este es un proceso que tarda. Y que en algún caso, hasta parece que está colgado. Pero no lo corten, es normal.

Una vez que finalizó, hay una serie de pasos a seguir.

Primero que nada modificar los permisos en el directorio de Apache (donde van a estar nuestros sitios y/o aplicaciones web), a fin de poder escribir en el mismo.

$ cd /var/www/
$ sudo chown -R [tu_usuario] .

Nota 1: obviamente, hay que reemplazar “[tu_usuario]” (corchetes incluídos) con tu usuario del sistema.

[UPDATE!]
Nota 2: Y no olvidarse de “.” del final

Luego de esto, podríamos crear un archivo php, a los efectos de probar si funca:

$ gedit test.php

Dentro del archivo, tiramos:

<?
phpinfo();
?>

Finalmente, por si acaso, reiniciamos Apache.

$ sudo /etc/init.d/apache2 restart

Listo! Si entramos en http://localhost/test.php, tendría que aparecer la pantalla de phpinfo(); brindandonos toda la información de nuestra instalación LAMP.

Nos leemos =)

Ciclo de Charlas de Software Libre en la UNLu

Este sábado 19 de Noviembre el UNLUX (Grupo de Usuarios de Software Libre de la Universidad Nacional de Luján) y el CODES (Centro de Estudiantes de Sistemas) van a estar presentando un Ciclo de Charlas de Software Libre, en la Sede Central de la UNLu.

El evento es gratuito y abierto a todo el que esté interesado. Pero hay cupo limitado, así que requiere inscripción previa. Inscribite!

Yo voy a estar dando dos charlas:

Hora Aula Charla
15:00 401 La vida de un programador del GBA
17:00 403 PHP: Para Hacer Páginas?

A lo largo del día van a haber numerosas charlas, de temáticas muy variadas, tanto de desarrollo como de tecnología en general. Acá podés consultar el cronograma tentativo.

Dudas de cómo ir? Acá tenés algo de data.

En fin, toda una jornada de charlas de software libre. Nos vemos!

[PHP] Convertir a mayúsculas caracteres especiales

Algo que me ha pasado en repetidas oportunidades y que cada vez que tuve que resolver, no me acordaba cómo cazzo resolver, es lo siguiente:

echo strtoupper("aáeéiíoóuúnñ");

"AáEéIíOóUúNñ"

Noten que todos los caracteres pasaron a mayúsculas, a excepción de la ñ y los que tienen tilde.

Una buena solución para esto (al menos la que a mi me vino bien) fue utilizar mb_strtoupper, con lo cual quedaría de la siguiente forma:

echo mb_strtoupper("aáeéiíoóuúnñ", "utf-8");

"AÁEÉIÍOÓUÚNÑ"

Como pueden notar, en este caso todos los caracteres fueron pasados a mayúsculas, sin discriminación alguna.

Y cuál es la diferencia con strtoupper? Básicamente, que mb_strtoupper no está afectada por la configuración regional, ya que trabaja con la magia de Unicode.

En fin, espero que les sirva.

‘Ta la próxima!

JESoL – 1ra Edición

No voy a disculparme por no postear nada hace más de un año… Lean y ya ;)

Banner JESoL

Este Sábado 2 de Julio desde Bynarius y con activa colaboración de Gleducar, estaremos llevando a cabo la 1ra Edición de JESoL – Jornada de Educación en Software Libre.

El evento es de entrada libre y gratuita y se desarrollará en la EGB N° 10 Gral. Julio A. Roca, Pueyrredón 1840 – Banfield, Lomas de Zamora, Buenos Aires, el día Sábado 2 de Julio de 2011, de 10 a 19 hs. Acá, un mapa de la ubicación.

Sobre la Jornada

Sirve para acercar usuarios y personas que necesitan ayuda de la comunidad para dar sus primeros pasos en el mundo del Software Libre.

Adicionalmente, al ser llevado a cabo en Escuelas Primarias y Secundarias, apunta a evacuar todas las dudas y falsos mitos existentes en el ámbito de la Educación con respecto al Software Libre.

Cronograma

09:30 a 10:00 – Acreditación
10:00 a 10:05 – Apertura
10:05 a 12:05 – “Primeros pasos en software libre”
por María Elena Casañas
12:10 a 13:00 – “Mitos sobre la escuela y el software libre” por Román Gelbort
13:00 a 14:00 – Break
14:00 a 14:50 – “¿Cultura para todos? ¡Ni lo sueñes!”
por María Elena Casañas
15:00 a 16:50 – “Programa Conectar Igualdad – como aprovechar los recursos dentro del colegio, con el servidor escolar” por Marco Antonio de Hoyos
17:00 a 17:50 – “Linux y cosas locas para mostrar” por Enrique Calot
18:00 a 19:00 – “Cuando compartir, aunque sea Bueno, se hace complicado – historia de una maestra migrando contra viento y marea” por María Eugenia Nuñez

Por cuestiones de organización es requerida la registración previa en http://jesol.bynarius.com.ar/events?event_id=4#registro

Te esperamos!