Becoming a Fedora packager.

Buenas! Aquí estamos, desempolvando el blog después de algún tiempo..Como ustedes sabrán he estado participando en el Proyecto Fedora como  Embajador para  Argentina,  y algunos otros proyectos como FreeMedia, Marketing y Social Media.
Me he decidido por empezar a participar como empaquetador, ya que he usado distribuciones basadas en Red Hat desde niño y Fedora desde hace varios años.
En Enero, Empaqueté vert.x (BZ #894119) pero ya que el proyecto esta teniendo algunos problemas legales decidí no continuar con el proceso.
La semana pasada, buscando una manera de abrir mi base de keepass en una consola, encontré un script de 3000 lineas en perl llamado kpcli.  (keepass  es una herramienta visual para guardar contraseñas de forma segura en una base de datos encriptada). Cree el archivo spec para kpcli (BZ #1002324) y recorrí  todos los pasos del proceso de empaquetamiento. Solo falta que un patrocinador me apruebe para poder subir este paquete a los repositorios.
También empaquete 2 dependencias para esta paquete, perl-Term-ShellUI (BZ #1002319) y perl-File-KeePass (BZ #1002321).

English

Hi! I’m back in the blogging world after some time. As you may or may not know, I have been participating in the Fedora Project for a while as an Ambassador for Argentina. I’ve also been involved in FreeMedia, Marketing and Social Media.
As I have been using Red Hat based distributions since I was a kid and Fedora for the last few years, I decided to start getting into the engineering process of Fedora and become a packager.
On January, I started to package vert.x (BZ #894119) but since this project has some legal problems I didn’t continue with the review process.
Last week, looking for a way to open my keepass database in a console, I found a 3k lines perl script called kpcli that did exactly what I needed. (keepass is a GUI tool that lets you store passwords safety into an encrypted database). I created a kpcli spec file (BZ #1002324) and went to all the steps in the packaging process. I’m waiting for a sponsor to approve me as a packager in order to push it into the repositories.
I also packaged 2 required dependencies for its package, perl-Term-ShellUI (BZ #1002319) and perl-File-KeePass (BZ #1002321).

Installing a Fedora VM from Internet

There is a powerful tool shipped with libvirt called virt-install. This tool is inside the python-virtinst package and it allows us to install any GNU/Linux distribution directly from the command line.
For example, the following command will create a VM and install Fedora 17 (32 bits) on it.

virt-install –name f17_i686 –ram 1024 –disk path=/dev/vg_data/f17_i686,size=15 –location=”http://dl.fedoraproject.org/pub/fedora/linux/releases/17/Fedora/i386/os/” –graphics vnc

The arguments are:

name = name of the VM
ram = amount of RAM memory on MB
disk = lthe path and size of the virtual disk
location = the media to install, in this case the F17 URL.
graphics = the graphic card to use

After running this command, we can user virt-manager to continue with the installation process graphically.

How can we automate this task?

There are 2 different ways:

1. Every time you install Fedora, you will find on the /root directory a file called anaconda-ks.cfg. This file can be used to perform an unattended installation equal to the one you have.
You can take that file and modify the parts you need.
2. You can write a kickstart file from scratch.

This kickstart file can be used for any Fedora installation fedora.ks.
You can modify this file and upload it to your own HTTP/FTP/NFS server, leave it on a disk or burn it on a CD.
You can try to install a VM directly using this command:

virt-install --name f17_x86_64 --ram 1024 --disk path=/dev/vg_data/f17_x86_64,size=15 --location="http://dl.fedoraproject.org/pub/fedora/linux/releases/17/Fedora/x86_64/os/" --extra-args "ks=https://mkreder.com/vms/ks/fedora.ks console=ttyS0,9600"
#you should modify the ram and disk arguments as needed

It will install Fedora 17 x86_64 on a VM on a completely unattended way.
The root password for this VM will be “fedora”.

Español

Una herramienta muy util que viene con libvirt es virt-install. Esta herramienta se encuentra en el paquete python-virtinst y nos permite iniciar la instalación de cualquier GNU/Linux desde la linea de comandos. Por ejemplo, el siguiente comando crea una VM y realiza la instalación de Fedora 17 (32 bits):

virt-install --name f17_i686 --ram 1024 --disk path=/dev/vg_data/f17_i686,size=15 --location="http://dl.fedoraproject.org/pub/fedora/linux/releases/17/Fedora/i386/os/" --graphics vnc


Los argumentos son:
name = nombre de nuestra VM
ram = la cantidad de memoria RAM a asignar en MB
disk = la dirección en donde queremos crear el archivo o LV (path) y el tamaño (size)
location = el medio de instalación, en este caso la URL de Fedora 17 32 bits
graphics = el modo gráfico a utilizar

Luego de haber ejecutado virt-install podemos utilizar virt-manager para seguir el proceso de instalación gráfica eligiendo como configurar cada parte de la instalación.

¿Cómo automatizar esta tarea?
Hay 2 formas básicas de automatizar la instalación.
1. Todas las instalaciones de Fedora dejan en /root/ un archivo llamado anaconda-ks.cfg, el mismo sirve para realizar en forma desatendida una instalación idéntica a la que tenemos. También podemos tomar este archivo como ejemplo y modificar las partes que nos interesen.
2. Podemos escribir nuestro propio archivo kickstart desde cero.

Les dejo un archivo básico de kickstart que sirve para cualquier instalación de Fedora fedora.ks.
Este archivo lo podemos subir a un sitio HTTP/FTP/NFS o puede grabarse en algún disco o cdrom.

Para instalar directamente de este archivo sin modificarlo:

virt-install --name f17_x86_64 --ram 1024 --disk path=/dev/vg_data/f17_x86_64,size=15 --location="http://dl.fedoraproject.org/pub/fedora/linux/releases/17/Fedora/x86_64/os/" --extra-args "ks=https://mkreder.com/vms/ks/fedora.ks console=ttyS0,9600"
#modificar los argumentos disk y ram si es necesario

Se instalara Fedora 17 x86_64 en una VM sin ningún tipo de intervención.
La password de root encriptada en el archivo kickstart es “fedora”

VERR_SUPLIB_OWNER_NOT_ROOT on VirtualBoxV

A couple of days ago I had a problem with VirtualBox, I couldn’t start one of my VMs because it was displaying an error message saying: “VERR_SUPLIB_OWNER_NOT_ROOT”
Searching on the internet I found this bug. and they suggested to run:

chown -R root:root /usr/lib/virtualbox
chmod 4711 /usr/lib/virtualbox/VirtualBox

This didn’t fix my issue, so I started to dig deeply into the issue and I found a log file on ~/.VirtualBox/Machines/VM/Logs/VBox.log with the following message:

00:00:00.448 pdmR3LoadR0U: pszName="VMMR0.r0" rc=VERR_SUPLIB_OWNER_NOT_ROOT szErr="The owner is not root: '/usr'"

I took a quick look at /usr permissions and I found that for some weird reason, it had uid:gid 500:500
# ls -ld /usr
drwxrwxr-x. 13 500 500 4096 Aug 3 2006 /usr

Solution:
chown root:root /usr

Español

Hace unos días me tope con un problema, VirtualBox no podía arrancar mi maquina virtual dando el error “VERR_SUPLIB_OWNER_NOT_ROOT”
Buscando en internet encontré este bug. en donde sugerían hacer:

chown -R root:root /usr/lib/virtualbox
chmod 4711 /usr/lib/virtualbox/VirtualBox

Esto no soluciono mi problema, así que mirando el log en ~/.VirtualBox/Machines/VM/Logs/VBox.log descubrí una pista:

00:00:00.448 pdmR3LoadR0U: pszName="VMMR0.r0" rc=VERR_SUPLIB_OWNER_NOT_ROOT szErr="The owner is not root: '/usr'"

Chequeando los permisos de /usr vi que por alguna extraña razón el dueño era el uid:gid 500:500
# ls -ld /usr
drwxrwxr-x. 13 500 500 4096 Aug 3 2006 /usr

Solución:
chown root:root /usr

FLISOL 2012

FLISOL logo

El próximo Sábado nos estaremos presentando en el Festival Latinoamericano de Instalación del Software Libre en las siguientes ciudades:

Ciudad de Buenos Aires:

Rino, Adrian y yo estaremos instalando Fedora a todas aquellas personas que traigan sus computadoras a la Facultad de Ciencias Económicas de la UBA (Av. Córdoba 2122) y además daremos 2 charlas:

  • Virtualización en Fedora (11 Hs, Auditorio C)
  • Fedora 16 y la Comunidad Fedora (17 Hs, Auditoria A)

Luján:

Jose estará instalando Fedora y  también dando  la charla “Fedora 16 y la Comunidad Fedora” a las 17 hs. en las aulas 403/404 de la Universidad de Luján.

Córdoba:

Los embajadores de Fedora en Córdoba estarán instalando Fedora en la Ciudad Universitaria (Aula D3 – Baterías comunes D – Av. Valparaiso s/n esq Enfermera Gordillo Gomez)

Fedora 16 is out!!

Fedora 16 is ready to download!!

New features are:

  • GNOME 3.2
  • GRUB2
  • KDE 4.7
  • A lot of enhancements in Virtualization including some Cloud features.

You can start downloading it here.
Full feature list is here

Spanish

Fedora 16 esta ahora disponible para su descarga.

Entre sus mejoras:

  • GNOME 3.2
  • GRUB2
  • KDE 4.7
  • Muchas mejoras en virtualización incluyendo cositas de Cloud.

Puede descargarse aquí.
La lista completa de mejoras (In inglés) puede verse aquí.

CISL 2011: ahí estuvimos

Yesterday, September 9th, we were present in the CISL (Free Software International Conference). Our presentation was shorter than we had planned because the previous speaker didn’t finish on time but fortunately we had enough time to cover all the important points.

It was Rino’s first event as a Fedora speaker and he did a great job! He also enjoyed it a lot!! Welcome Rino!!

After our presentation we met Hernán Vivani, one of our Fedora’s  SA, and Claudio Pereyra Díaz, one of our translators . Hernán told us about the presentation he had given the day before. It was about how he switched a small national company from  proprietary to free software

We also had some time before Richard Stallman’s presentation to give LiveCDs and answer questions to the participants.

You can download the presentation here.

Spanish

Ayer, 9 de Septiembre participamos en la CISL, Conferencia Internacional del Software Libre. La charla tuvo que ser rápida porque nos entregaron el aula tarde pero se mencionaron las cosas mas importantes de la presentación.

Fue el primer evento de Rino, como orador para Fedora y lo hizo excelente! También él lo disfruto mucho. Bienvenido Rino!!

Después de la presentación nos visitaron Hernán Vivani, SA de Fedora, y Claudio Pereyra Diaz, traductor de Fedora. Hernán nos contó sobre la charla que dio en CISL el Jueves 08 sobre su caso de éxito al migrar Postres Balcarce, de Software privativo a Software libre.

Pudimos aprovechar antes de la charla de Richard Stallman, para obsequiar LiveCDs y contestar preguntas al público.

Como lo prometido es deuda, se puede descargar la presentación aquí.