Using bashmount-1.6.2 with udevil-0.4.2 (or greater)

Mié, 02/12/2014 - 10:38 -- admin

Buenas.

Últimamente me he ido cansando de todos los problemas que consolekit ocasiona en un momento u otro, y he decidido librarme de él para siempre. Ya tuvo su oportunidad y ha fracasado estrepitosamente. No voy a cambiarme a systemd, ya que no hay necesidad alguna, al menos en mi caso. Hace unos días empecé a buscar alternativas, y encontré udevil, que tiene varias capacidades. En primer lugar, puede automontar. Aparte de eso, también permite desmontar volúmenes como usuario no privilegiado. Además incluye otras capacidades como el montaje de imágenes ISO, sshfs, ftp via curlftpfs y algunos otros.

Funciona bastante bien com spacefm, lo cual es una ventaja adicional que puede venir bien ocasionalmente (aunque yo rara vez uso un gestor de archivos gráfico).

El problema, no obstante, es que tal y como pasa con el binomio pmount+uam, no hay ninguna interfaz (aparte de spacefm) para udevil. 

Por otro lado, me gusta bashmount. Me he acostrumbado a usarlo, pero la pega es que está basado en udisks.

Por eso, decidí echar un vistazo y ver como se asimilan las capacidades de udisks y udevil, y cómo de complicado sería portar bashmount para usar udevil. Resultó se una tarea simple del tipo 's/udisks/udevil'. Eso es porque udevil parece imitar no solo la sintaxies de udisks, sino también la salida en pantalla.

Hubo un par de pequeños problemas. Y es que el parámetro --enumerate-device-files de udisks (que basmount usa internamente) no está disponible hasta udevil-0.4.2, en gentoo está la versión 0.4.3 en la rama inestable, así que podemos usar esa. La estable udevil-0.4.1 no funcionará. Además, ese parámetro es aceptado por la utilidad devmon, por por el mismo udevil (devmon es parte del paquete udevil). También hubo que reorenar alguna que otra línea de comando, ya que udevil parece necesitar que el parámetro --mount sea el primero siempre en cualquier linea de comando.

Tras unos cuantos minutos cambiando cosas en el guión, lancé bashmount y simplemente funcionó. Debo decir que tan solo he probado el subconjunto de operaciones que suelo usar. El resto, está completamente sin probar, por ejemplo, todo lo que tiene que ver con cdrom y dvd. Estoy dispuesto a arreglar los fallos que pueda haber, siempre que mi tiempo lo permita y alguien los reporte. :)

Puedes descargar el ebuild con el parche aquí. Si no usas Gentoo, simplemente coge el parche del subdirectorio files/ y aplícalo sobre bashmount 1.6.2.

Espero que te guste, y gracias por leer :)

Español