From Fedora Project Wiki

< SIGs‎ | Ruby
Revision as of 04:30, 22 December 2018 by Davisclick (talk | contribs)

Ruby SIG
Ruby Special Interest Group

Un SIG (Grupos de interés especial,por las iniciales en inglés de Fedora Special Interest Groups) para las personas que están interesadas en mejorar el estado de Ruby en Fedora. Esto incluye empaquetar las bibliotecas y aplicaciones de Ruby, establecer y mejorar los estándares para empaquetarlos como RPM y mantener los paquetes de Ruby para Fedora.

La Situación

El empaquetado de las bibliotecas y aplicaciones de Ruby para Fedora está aún en su infancia, y solo hay muy pocos RPM disponibles. Esperamos que esta situación mejore "dramáticamente" en los próximos meses; eso significa que usted, querido lector, puede convertirse en un héroe empaquetando su pieza favorita de código Ruby como RPM y enviarlo a Fedora.

  • Estamos siguiendo de cerca el desarrollo de Ruby MRI. Una vez que se libera una nueva versión de Ruby, se empaqueta para Rawhide.
  • Todas las implementaciones de Ruby deben poder usar la gema proporcionada por el paquete único, pero aún no hemos llegado a ello.
  • Intentamos hacer posible la instalación de varias versiones de gemas en un solo sistema [1].

Creando RPM's

Las "directrices" para construir paquetes de Ruby se pueden encontrar en una página separada .

Oliver Andrich ha creado una plantilla con las especificaciones para paquetes de Ruby que se incluye en rpmdevtools 1.5 y versiones posteriores. Por favor, comience con esta plantilla al empaquetar el código Ruby para Fedora.

Gemas y RPM

Ruby tiene su propio formato de paquete, gema, destinado a ser una forma multiplataforma de distribuir el software Ruby. Las gemas contienen gran parte de los metadatos que llevan los RPM, pero no todos, y debido a su naturaleza multiplataforma violan el LSB. Las gemas que contienen bibliotecas compartidas tampoco funcionan bien con multilib.

Por favor use el rubygem-gem2rpm herramienta para todos los nuevos paquetes de gemas.

Bundler y RPM

Fedora no permite la venta de paquetes sin una excepción especial, pero esto no significa que las aplicaciones basadas en bundler no se puedan usar con la pila de Fedora.

La gema bundler_ext carga las versiones instaladas por el sistema de los paquetes especificados en un Gemfile de la aplicación Ruby, que proporciona un mecanismo simple para cambiar entre las pilas personalizadas de rubíes y las pilas compatibles con la distribución.

La gema polisher implementa muchas operaciones posteriores a la publicación / publicación y mecanismos de consulta. Los desarrolladores y usuarios finales pueden utilizar estos para verificar el estado de sus gemas y aplicaciones de Ruby y moverlos a lo largo de flujos de trabajo personalizados.

Herramientas útilies

  • gem2rpm Para generar un rpm a partir de un gema.