Ideas: Google Summer of Code 2014

¿Encuentra una idea que le gustas? ¿Desea proponer la suya propia? Vea Getting Started Guide (Guía de Inicio) con GSoC:

Aún másr, las ideas aceptadas en el último año desde el Fedora Project (Proyecto Fedora) se pueden encontrar en el sitio web GSoC 2013

Se da la Bienvenida a los Estudiantes

Si eres estudiante y deseas participar en el GSoC 2014 con Fedora, no dudes en consultar la lista de ideas, que sigue creciendo. No dudes en contactar con los mentores/colaboradores indicados en esta página para cualquier aclaración. Si eres nuevo en el proyecto Fedora, el siguiente material te ayudará a empezar. Además, regístrate con el Sistema de Cuentas de Fedora (FAS) si deseas continuar con el proyecto Fedora. Puedes usar el canal IRC #fedora-devel para obtener soporte instantáneo.

Mentores de Apoyo

Los siguientes colaboradores también están dispuestos a apoyar el programa GSoC 2014. (No dudes en agregar tu nombre y adjuntar la página de usuario). En ocasiones, es necesario contar con mentores de respaldo si el mentor original se ve ocupado con algo por un corto tiempo. En ese caso, necesitamos ayuda.

Borrador de una idea

Añada su idea como sigue.

Nombre de proyecto

Estado:

Sumario de idea:

Requisitos de conocimiento:

Nivel de habilidad:

Contactos:

Mentor(es):

Notas:

!!! El borrador fue modificado ligeramente, por favor agregue el campo obligatorio como ¡obligatorio!

Listado de idea para GSoC 2014

FedmsgSobumper

Estado: Propuesto (como nivel de madurez en RFC6410)

Resumen de la idea: Reconstruir automáticamente todo el subárbol de dependencia en crudo si ocurre algún problema de compatibilidad con versiones anteriores de ABI.

Requisitos de conocimiento: Python, intérprete

Nivel de destreza: Bajo-Medio

Contactos: jpacner @ @ redhat @ @ com

Mentor(es): jpacner @ @ redhat @ @ com

Notas: El script se conectará a bus Fedmsg y deberá ser lo más pequeño posible (para más detalles, contacte con el mentor). Esto ahorrará mucho tiempo a los colaboradores de Rawhide.

Bugspad

Estado: Propuesto

Resumen de idea: Bugspad es un sistema de seguimiento de errores diseñado pensando en el rendimiento. El objetivo es mantener el mismo nivel de funcionalidades que Bugzilla, pero permitir su alojamiento en una máquina virtual estándar. Además, debería requerir menos configuración y mantenimiento. Para una evaluación de pruebas, queremos tener todos los errores de Fedora y un mejor rendimiento que el Bugzilla actual.

Los detalles del proyecto se pueden encontrar en http://bugspad.readthedocs.org/en/latest/

Mínimo requerido PARA HACER

  • La interfaz está completamente funcional. La idea principal es que sea completamente auto-alojado. Todos los errores deben reportarse en Bugspad.

Requisitos de conocimiento:

` * Buena idea sobre aplicaciones web y diseño frontend. + * La persona debe saber sobre API(s) en general y cómo diseñarlas bien. ` + ` * Python, Javascript, HTML, CSS serán los lenguajes principales con los que trabajar.`

Nivel de habilidad: Medio-alto

Contactos: kushal EN fedoraproject PUNTO org

Mentor(es): Kushal Das

Notas: El backend está escrito en Golang. Antes de empezar a hablar, ten al menos una instancia activa en algún lugar (pista: tu portátil).

Waartaa

Estado: Propuesto

Resumen de la idea: Waartaa es una herramienta de comunicación de código abierto para equipos y grupos. Está basada en IRC. Actualmente, Waartaa es un cliente de IRC como servicio y ofrece registro centralizado, inactividad 24/7, notificaciones e identidad única para cada usuario de IRC. Puedes visitar la página principal del proyecto: https://www.waartaa.com para más detalles. Una instancia de demostración de Waartaa está alojada en https://try.waartaa.com.

Hoja de ruta:

  • Construir un centro central para buscar/leer registros de canales para comunidades y proyectos de código abierto.

  • Construya un backend más rápido y escalable.

  • Libertad de elección: exponer una API para que los usuarios puedan utilizar sus clientes IRC existentes con waartaa.

  • Encuentre una forma segura de autenticarse con los servicios de IRC sin almacenar contraseñas en crudo.

  • Respetar la privacidad del usuario: los mensajes personales del usuario deben almacenarse en formato cifrado en el servidor.

  • Permite a los usuarios descargar registros de chat en varios formatos compatibles con los clientes IRC más populares.

  • app de HTML5 móvil

  • Integración de VCS, Bugzilla y otras herramientas de gestión de tareas.

  • Instalación de videoconferencia y audioconferencia basada en tecnologías HTML5 y JS.

Requisitos de conocimiento: Python, Javascript, HTML, CSS.

Nivel de habilidad: Medio

Contactos:

  • rtnpro en fedoraproject punto org

  • sayanchowdhury en fedoraproject punto org

Notas:

Idea tardía

Estado: Propuesto

Resumen de la idea: Afterthought será la herramienta para ejecutar trabajos (no predefinidos) en sistemas *nix. A un nivel superior, tomará una URI como argumento, obtendrá sus datos, analizará los datos formateados (con conjuntos de instrucciones) y ejecutará los comandos/trabajos. Esto facilita enormemente la automatización de tareas y la implementación de servidores y aplicaciones.

Por operación, se puede considerar simplemente como un script de shell dinámico y carga diferida. Al ejecutar un script, sigue las rutinas que se le asignaron al momento de su creación (que pueden haber quedado obsoletas al momento de la ejecución); mientras que, a posteriori, obtiene las rutinas más recientes, que serían la ruta más reciente a seguir para la operación, sin que el usuario tenga que preocuparse por ello (ni obtener el script "más reciente").

Otras posibilidades incluyen configurar un procedimiento base personalizado según necesidades, perfiles o credenciales particulares. Además, el endpoint no necesita responder de la misma manera en 2020 para una máquina Fedora con Clang que en 2015 para una plataforma CentOS con GCC (si me entienden). Otras posibilidades similares son:

O quizá, en un archivo de Docker

En resumen: menos RTFM, menos mantenimiento (o perseguir fantasmas de rutinas o scripts pasados), más automatización, donde sea que corresponda (pista: se aplique en demasiados lugares).

Requisito de conocimiento: *nix && (Rust || C/C++ || Go) && (Node.js::FlatIron/Express || Python::Flask/Pyramids || Ruby::Rails/Camping)

Nivel de habilidad: Intermedio

Mentor(es): Soumya Deb (Debloper)

Notas:

Shumgrepper

Estado: Propuesto: borrador

Resumen de idea: Summershum es un proyecto que recopila las sumas MD5, SHA1 y SHA512 de cada archivo en cada paquete de Fedora. Esto permitiría detectar cuántas veces se agrupan ciertos archivos o cuántas copias diferentes de la licencia GPL existen. Shumgreppper sería la interfaz web/JSON-API para estos datos. La idea sería bifurcar el código presente en datagrepper y adaptarlo para que funcione con Summershum.

Requisito de conocimiento: python y html/css básico

Nivel de habilidad: intermedio

Contactos: pingou en fedoraproject punto org

Notas:

Estado: Propuesto: borrador

Sumario de idea:

GlitterGallery es GitHub para diseñadores. Es una aplicación web que permite a diseñadores y artistas crear, compartir y colaborar. Está respaldada por Git para el control de versiones y está diseñada para formar parte de una suite de diseño FLOSS que incluye

  • Sparkleshare: un git-backend, un sistema similar a Dropbox que registrará y enviará automáticamente archivos del proyecto directamente a un repositorio git compartido

  • Magic Mockup: un coffeescript/javascript que puede insertar en un SVG de maquetas para habilitar maquetas interactivas con solo pulsar (vea una demo aquí)

  • Inkscape es nuestra herramienta de diseño preferida

El año pasado, un GSoC exitoso convirtió a Glitter Gallery de un prototipo en una aplicación web completa, pero aún quedan muchas funciones por añadir y mejoras por realizar. Algunos aspectos que aún requieren trabajo:

  • Transición al desarrollo basado en pruebas, lo que significa escribir pruebas unitarias y de integración para todos los componentes

  • Mejor integración de la suite de diseño, lo que podría significar un mejor soporte para la edición local con SparkleShare; integración de Inkscape a través de una extensión; y/o soporte para crear y compartir SVG interactivos con Magic Mockup

  • Mejoras de la interfaz de usuario: la interfaz de usuario actual es funcional y tiene un aspecto bastante agradable, pero podría ser más receptiva y refinada

  • Mejores comentarios: el sistema de comentarios actual es básico y hay muchas formas de mejorarlo, incluido el soporte de hilos, el soporte de pingback y la capacidad de hacer referencia a una región específica de un diseño en un comentario

  • Seguimiento de problemas: permite al diseñador realizar un seguimiento de los cambios solicitados como problemas

  • Más funciones sociales, como la posibilidad de seguir un archivo/proyecto/usuario, un feed de actividad, mensajería privada y fácil compartir fuera de la aplicación

  • Sus propias ideas

Requisitos de conocimiento previo: git, Ruby on Rails, desarrollo front-end (HTML/CSS/JS), la experiencia en diseño sería excelente, pero opcional

Nivel de habilidad: Intermedio

Contactos: emichan en fedoraproject punto org

Mentor(s): Emily Dirsh

Notas: El repositorio de GlitterGallery está alojado en GitHub. GlitterGallery se ejecuta localmente, pero debido a una dependencia, aún no es compatible con Ruby 2.0.0, la versión incluida en la última versión de Fedora. Puede instalar una versión anterior de Ruby con rvm. Se recomienda Ruby 1.9.3. GlitterGallery también puede ser desplegado en OpenShift.

Fedora College

Estado: Propuesto - Borrador

Resumen de la idea: Fedora College es un proyecto que busca implementar el uso de aulas virtuales en la formación de nuevos colaboradores de Fedora, utilizando recursos educativos conocidos, apoyándose principalmente en video

Requisitos de conocimiento: Apache, PostgreSQL, Python, Flask, SQLAlchemy

Nivel de habilidad: Medio

Contactos: echevemaster [AT] fedoraproject [DOT] org, yohangraterol, [AT] fedoraproject [DOT] org

Co-Mentor: Luis Bazán

Código: https://github.com/echevemaster/fedora-college, bienvenido a contribuidores

Estudiantes Interesados: Hammad

Panel de control de alojamiento web

Estado: Propuesto - Borrador

Resumen de la idea: desarrollar una alternativa libre a los paneles de control cpanel/plesk, 100% compatible con fedora y redhat enterprise linux. Escrito en python.

el panel de control será capaz de crear dominios y configurar automáticamente apache, postfix, dovecot, mysql, postgresql bind etc…​

Requisitos de conocimiento: apache, postfix, dovecot, mysql, postgresql, proftpd, bind

Nivel de habilidad: Medio

Contactos: itamarjp [AT] fedoraproject [DOT] org, kaustubh [DOT] karkare [AT] gmail [DOT] com

Mentor(es): Luis Bazan

Co-Mentor: Eduardo Echeverria

Infraestructura para el grupo FreeMedia

Estado: Propuesto

Resumen de la idea: Fedora Freemedia es un grupo de voluntarios que envía contenido multimedia de Fedora a usuarios de todo el mundo, previa solicitud. Utilizan Trac para rastrear estas solicitudes. El proceso es manual; la idea es automatizarlo al máximo.

Requisito de conocimiento: PHP, PostgreSQL

Nivel de habilidad: Medio

Contactos: bckurera

Mentor(es):

Notas:

Colaboración de proyectos con otras organizaciones

  • TBA

Muon: gestor de paquetes KDE

Estado: Propuesto

Resumen de la idea: El gestor de paquetes actual de Fedora KDE, Apper, no recibe mantenimiento y está plagado de errores. Por otro lado, Muon se encuentra en desarrollo activo. Originalmente fue desarrollado para Kubuntu y estaba vinculado a Apt, pero en 2013 se le incorporó un backend basado en PackageKit. La idea es que Muon 2.1 esté listo para su uso en producción en Fedora.

Requisitos de conocimiento: Desarrollo en C++, Qt/KDE

Nivel de habilidad: Medio

Mentor(es): ?? (Aleix Pol Gonzalez es un mentor confirmado para una propuesta similar de Debian)

Notas: Debian tiene una propuesta similar. Si bien esta se centraría en el segundo plano de Apt, sus tareas de limpieza de ubuntuismos también beneficiarían a Fedora.

Mejoras de Mock

Estado: Propuesto

Resumen de la idea: Este proyecto busca mejorar utilidad de simulación, utilizada en la creación de paquetes en Fedora y otras distribuciones basadas en RPM. Se centra en mejorar los casos de uso simulados interactivos para optimizar los flujos de trabajo de empaquetado.

Algunas ideas para simular mejoras:

Añadir bitácora en tiempo real a TTY

Mejorar el uso interactivo de las simulaciones registrando más información en la consola en tiempo real. Se deben considerar aspectos como la salida DNF o los registros de compilación.

Implementar caché raíz basada en LVM

Actualmente, el simulador crea un árbol de directorios raíz en el sistema de archivos existente y almacena en caché el entorno chroot como un archivo tar comprimido, lo que afecta negativamente al rendimiento. La idea es usar un volumen lógico LVM para almacenar el sistema de archivos invitado. La caché se crearía mediante una instantánea de LVM, que podría restaurarse posteriormente.

Utilice DNF en lugar de yum y yum-builddep

Mock usa YUM y YUM Utils para instalar los paquetes iniciales y crear dependencias. La idea es reemplazar todo el uso de YUM con DNF.

Como DNF aún está en desarrollo, se espera que tenga algunos errores relacionados con el soporte de installroot, que tal vez deban corregirse y contribuir al proyecto DNF.

Mejorar el bloqueo de chroot

Actualmente, la mayoría de las operaciones simuladas dentro del entorno chroot se realizan tras adquirir un bloqueo exclusivo. Esto imposibilita la ejecución de dos shells independientes dentro del entorno simulado. La idea es implementar un esquema de bloqueo de lectura y escritura (compartido-exclusivo). Algunas operaciones (como crear un entorno chroot o restaurar una instantánea) requieren un bloqueo exclusivo, mientras que otras solo requieren un bloqueo compartido (como ejecutar un intérprete de consola).

Requisitos de conocimiento: Python, Linux, empaquetado RPM

Nivel de habilidad: Medio

Contactos: Mikolaj Izdebski

Mentor(s): Mikolaj Izdebski, Stanislav Ochotnicky (backup)

Notas:

Demonio de solicitud de intérprete Git

Estado: Propuesto

Resumen de la idea: El empaquetado de Fedora depende en gran medida de Git. Sin herramientas Git especializadas, el mantenimiento de decenas o cientos de paquetes de Fedora puede resultar tedioso.

Este proyecto trata de implementar un demonio que escucharía en un conducto con nombre las solicitudes del intérprete del sistema (como bash) y respondería con un símbolo del sistema dependiendo del contexto (como el estado del repositorio git en un directorio determinado) y la configuración del usuario.

El núcleo del demonio no debería depender de Git, sino escribirse utilizando un framework de complementos que permita la implementación de diferentes complementos. Cada complemento podría proporcionar información diferente para exhibirla en el intérprete de solicitud.

Además del núcleo, se debe implementar un complemento de Git. Este complemento no debe invocar al Git ejecutable, sino usar una biblioteca de Git (como libgit2, que tiene vínculos para varios lenguajes).

Requisitos de conocimiento: Git, Linux, cualquier lenguaje de programación el cual tenga vínculos para libgit2

Nivel de habilidad: Medio

Contactos: Mikolaj Izdebski

Mentor(s): Mikolaj Izdebski, Stanislav Ochotnicky (backup)

Notas:

Mejora del Empaquetado Fedora para Eclipse

Estado: Propuesto

Resumen de idea: Este proyecto trata de implementar complementos nuevos de Eclipse y contribuir con ellos al proyecto eclipse-fedorapackager.

Integración Copr

Este complemento debería proporcionar una interfaz para Copr. Debería permitir obtener el vale de la API mediante usuario y contraseña, iniciar compilaciones y consultar el estado de las compilaciones. Idealmente, se debería implementar la API completa de Copr, incluso si no se utiliza en la interfaz gráfica de usuario. Este complemento debería proporcionar instrucciones en la perspectiva de empaquetado de Fedora.

Integración del Bus de Mensajería de Infraestructura de Fedora

Este complemento debería proporcionar una API Java y su implementación para datagrepper. También debería proporcionar un widget SWT que permita acceder a eventos pasados y filtrarlos según criterios específicos. La integración opcional con Mylyn también es bienvenida (por ejemplo, una compilación fallida crea una tarea de Mylyn).

Requisitos de conocimiento: Desarrollo de complementos de Java y Eclipse

Nivel de habilidad: Medio

Contactos: Mikolaj Izdebski, User:Akurtakov[Alexander Kurtakov]

Notas:

Complemento de Eclipse para XMvn

Estado: Propuesto

Resumen de la idea: Este proyecto trata sobre la creación de un complemento de Eclipse para editar la configuración de XMvn in Eclipse.

El complemento:

  • implementaría modelo(s) de Java para configuración de XMvn

  • permitiría leer y escribir modelo(s) como archivos XML

  • implementaría editor de configuración proporcionando vista XML cruda y una o más vistas de nivel alto

  • permitiría convertir la configuración a secuencia de invocaciones macro de RPM

el complemento XMvn integraría con Eclipse Linux Tools y/o Fedora Packager para Eclipse donde sea posible (añadiendo instrucciones en perspectivas, integración con editor de archivo spec, etc.)

Requisitos de conocimiento: Desarrollo de complementos de Java y Eclipse

Nivel de habilidad: Medio

Notas:

Implementa una batería de pruebas unitarias para SSSD

Estado: Propuesto

Resumen de la idea: El propósito de este proyecto es desarrollar un conjunto de pruebas unitarias para el SSSD. Estas pruebas aprovecharían objetos simulados para ejecutar código que, de otro modo, solo sería accesible cuando el SSSD estuviera conectado a la red. La incorporación de estas pruebas al SSSD mejoraría considerablemente su estabilidad a largo plazo y aumentaría la confianza al implementar nuevas versiones del SSSD en Fedora u otras distribuciones.

Requisitos de conocimiento previo: Conocimiento de scripts en Python, conocimientos de servicios del sistema Linux, conocimientos básicos de LDAP son útiles pero no necesarios.

Nivel de habilidad: intermedio a alto

Contactos: Jakub Hrozek

Mentor(es): Jakub Hrozek

Notas:

Lista de ideas abiertas de GSoC 2013

Aplicaciones para escritorio final del usuarios

Estos son proyectos de codificación que benefician a los usuarios finales del escritorio Linux.

Integrar configuraciones de proxy y conexiones de red (lugares)

Estado: Propuesto

Resumen de la idea: El sistema debe utilizar un perfil de red apropiado (p.e., configuración de proxy) para cada conexión de red.

GNOME 2 incluía un concepto de ubicaciones de red en su ventana de configuración de proxy de red. Sin embargo, el usuario debe seleccionar la ubicación adecuada al cambiar de red. Esta idea busca integrar NetworkManager con los entornos de escritorio para que el usuario pueda crear perfiles de red para cada ubicación (conexión) de red, proporcionando la configuración adecuada, como la configuración de proxy, que es la principal propuesta. NetworkManager puede tener un concepto de "Ubicación de red": para redes inalámbricas, el nombre de la red (ESSID) suele ser suficiente. Para conexiones por cable, los servidores DHCP pueden proporcionar, y suelen hacerlo, el nombre de dominio de la red, que puede usarse como nombre de la ubicación. Es conveniente que el usuario pueda asociar cada ubicación de red con un perfil de configuración de red que se usará automáticamente al conectarse a esa red. De esta manera, al conectarse a una red, se activa automáticamente el perfil de configuración de red correspondiente.

Requisitos de conocimiento:

Nivel de habilidad:

ContactOs: Hedayat Vatankhah

Mentor(es):

Notas: Hay una entrada con alguna descripción en NetworkManager por hacer lo cual sería considerado para la implementación

Ensamble una cadena de herramientas para grabar capturas de pantalla fácilmente

Estado: Propuesto - Borrador - Se necesita un mentor

Resumen de la idea: Crear capturas de pantalla en Fedora y posprocesarlas para cargarlas debería ser algo sencillo y a prueba de errores.

El proyecto Vídeos de Fedora se ha lanzado para reunir una colección de grabaciones de pantalla que ayuden a la gente a aprender a usar Fedora. Sin embargo, solo hay un obstáculo importante: capturar grabaciones de pantalla realmente buenas en Fedora, post-procesarlas para incluir una introducción, un cierre y otros efectos, y finalmente exportarlas a un formato abierto es todo un desafío. Hay muchas herramientas diferentes, pero cada una solo te ayuda en parte y tienes que ser el pegamento para que todo funcione. Y luego están los defectos.

El logro de este proyecto es crear una cadena de herramientas (una colección recomendada de software disponible en los repositorios de Fedora) y escribir un tutorial completo sobre cómo crear una grabación de pantalla profesional. Esto podría incluir la búsqueda y corrección de errores en las herramientas existentes, el descubrimiento y desarrollo de nuevas herramientas, y el aprendizaje de técnicas en el entorno informático, como la selección y configuración de un micrófono o la redacción de un buen guion hablado. Una posible tarea del proyecto es añadir compatibilidad con la grabación de sonido a la grabadora de escritorio de GNOME 3. Actualmente, la grabadora de escritorio solo graba el vídeo de la pantalla.

El estudiante obtendrá apoyo y asesoramiento del equipo de Fedora Videos, ya que está tratando de aprender cómo crear estas capturas de pantalla.

Pre-requisito de conocimiento: gstreamer, edición de video y sonido, blender

Nivel de habilidad: Medio

Mentor(es): -

Notas:

Mejorar la Experiencia del Usuario de Tabletas de Fedora

Estado: Propuesto - Borrador

Sumario de ideas: Mejorar la Experiencia de la Tableta de Fedora.

Los administradores de ventanas/entornos de escritorio oficialmente soportados por Fedora no coinciden con las expectativas de las personas con dispositivos táctiles de bajo consumo.

Fedora presenta una nueva tecnología para reducir la carga del sistema y - requisitos - la interfaz de usuario no ha recibido demasiado cariño.

Las interfaces actualmente disponibles para los usuarios son:

  • Mayor Consumo de Recursos

  • Muy Sobrecargados o

  • Demasiado Pobre en Funciones

  • No Personalizable con un Esfuerzo Razonable

El entorno de escritorio E17, desarrollado como parte del Proyecto Enlightenment (http://www.enlightenment.org), es ideal. Ofrece una interfaz completa con un consumo mínimo de recursos. Las bibliotecas de la Fundación Enlightenment, sobre las que se basa E17, fueron elegidas como componente fundamental de Tizen, el sucesor de MeeGo respaldado por Samsung e Intel. Si todo sale bien, E17 será el primer entorno de escritorio «real» para Wayland.

Aunque ya proporciona comportamiento especial para dispositivos con pantalla táctil a través de ciertos módulos, todavía hay margen de mejora.

El logro general de este proyecto sería mejorar la experiencia de usuario de las personas que desean utilizar Fedora en dispositivos de bajo consumo, como tabletas.

El estudiante obtendrá mantenimiento y consejo desde los desarrolladores del Proyecto Enlightenment.

Requisito de conocimiento: C, X11, Wayland, Bibliotecas de Fundación Enlightenment

Nivel de destreza: Medio a Alto

Contactos: Michael Bouchaud (yoz [at] efl [dot] so), Leif Middelschulte (leif [dot] middelschulte [at] student [dot] kit [dot] edu)

Mentor(es): Michael Bouchaud (yoz [en] efl [punto] así que)

Notas: Si esta idea logra realizarse, puede ser creado un giro de pastilla apropiado, eso honra el espirito de Fedora.

Aplicaciones para programadoras

Implementar un traductor de vínculos para GlusterFS

Estado: Propuesto - Borrador

Resumen de la idea: Al transportar datos a través de redes, los programadores necesitan enlaces de lenguaje de GlusterFS para crear aplicaciones en su lenguaje preferido. Un traductor de enlaces de lenguaje aumentaría considerablemente el número de programadores que podrían extender GlusterFS con mayor facilidad. También es un proyecto interesante para quienes deseen adquirir experiencia con la arquitectura y el diseño multihilo en el contexto de sistemas y datos distribuidos.

Pre-requisito de conocimiento: C, Python, Python embebido,

Nivel de destreza: Medio a Alto

Contactos: johnmark [EN]redhat [PUNTO] com , abperiasamy [EN] gmail [PUNTO] com

Mentor(es): Anand Avati - Mentor, AB Periasamy - Co-mentor, John Mark Walker - Co-mentor

Notas: -

Implementar un conector o traductor Cassandra/NoSQL para GlusterFS

Estado: Propuesto - Borrador

Resumen de la idea: En general, se necesita la capacidad de almacenar y acceder a datos NoSQL en sistemas de archivos distribuidos de propósito general. Actualmente, existen numerosos métodos de propósito único para almacenar y recuperar datos NoSQL, a los que es difícil acceder desde aplicaciones heredadas. La creación de un traductor NoSQL para GlusterFS ayudaría a mitigar este problema y ofrecería a los desarrolladores más opciones para almacenar y acceder a «big data» de forma accesible mediante diversas herramientas y protocolos estándar.

Requisitos de conocimiento previo: C, aspectos internos de GlusterFS

Nivel de habilidad: Alto

Contactos: johnmark [EN]redhat [PUNTO] com , abperiasamy [EN] gmail [PUNTO] com

Mentor(es): Anand Avati - Mentor, AB Periasamy - Co-mentor, John Mark Walker - Co-mentor

Notas: -

Estado: Propuesto: Idea de los estudiantes - Se necesita un mentor

Resumen de la idea: Hoy en día, muchos desarrolladores trabajan con diferentes sistemas de gestión de bases de datos (SGBD). Propongo desarrollar una interfaz de línea de comandos común para las bases de datos más populares. Por ejemplo: MySQL, Oracle Database y PostgreSQL.

Conocimientos previos necesarios: Java, JDBC, MySQL, Oracle Database, PostgreSQL.

Nivel de habilidad: Medio

Contactos: Alexandr Egorov 0x0j023 [ARROBA] gmail [PUNTO] com

Mentor(es):

Notas:

Proyecto del kernel Linux

Implementar caché de escritura diferida nfs/fscache (Abandonado)

Estado: Abandonada. Esta es una idea de GSoC 2012 y Hongyi Jia la está desarrollando, aunque no obtuvo la plaza en GSoC (http://www.jiayi.net/works/nfsfscache-writeback-cache/). Por lo tanto, no voy a ser mentor de la idea este año. Si alguien está realmente interesado, no dude en contactarme; con gusto responderé sus preguntas:-)

Resumen de la idea: Actualmente, flashcache/bcache solo funciona en sistemas de archivos locales. En sistemas de archivos de red, NFS solo admite caché de escritura directa basada en fscache/cachefiles. Con la adopción generalizada de SSD en el lado del cliente NFS, sería ideal que NFS admitiera caché de escritura diferida para acelerar la escritura intensiva de los clientes. Este proyecto implementaría un mecanismo de escritura diferida para NFS, que requiere realizar los cambios necesarios en los módulos NFS, fscache y cachefiles del kernel, y gestionar la semántica de cierre a apertura de NFS.

Requisitos de conocimiento: C, kernel de Linux, nfs

Nivel de habilidad: Alto

Contactos: bergwolf [ARROBA] gmail [PUNTO] com

Mentor(es): Peng Tao - Mentor

Infraestructura para contribuyentes y usuarios de Fedora

Dorrie: un interfaz-web para construir spins/remixes de Fedora

Estado: Propuesto

Resumen de idea: Contribuye a Dorrie, y hacerlo más usable, añade cobertura de prueba y desplegabilidad. Detalles en Dorrie.

Requisito de conocimiento: Python, Django

Nivel de habilidad: Intermedio

Contacto: Shreyank Gupta

Notas: Características que busco abordar:

* Gestión de usuarios/integración FAS + * Deslinear el flujo de trabajo. + * Fondo de pantalla predeterminado/Nombre de host/Contraseña de usuario/Contraseña raíz + * Repositorios/RPM personalizados + * Contenido del directorio de inicio + * Buscar paquetes + * Tipo de imagen: ISO, imagen virt, disco en crudo

Código en https://github.com/shreyankg/Dorrie, bifurca y envía una solicitud de extracción, si estás interesado en contribuir.

Fedpkg: compilaciones en cadena para ramas que no son de Rawhide

  • Estado: Propuesto

  • Resumen de la idea: Contribuir al proyecto fedpkg, permitiendo la creación de una serie de paquetes interdependientes en una sola acción para las ramas de Fedora publicadas

  • Conocimientos previos necesarios: Python, empaquetado de Fedora

  • Nivel de habilidad: Bajo - Medio

  • Contacto: Stephen Gallagher

  • Mentor: Stephen Gallagher (Respaldo)

  • Notas: https://fedorahosted.org/fedpkg/ticket/6

Financiero ES para el proyecto Fedora (cont.)

  • Estado: Propuesto

  • Resumen de idea: Se necesita un sistema de información que se pueda utilizar en el proyecto para el seguimiento y análisis de las actividades financieras. Puede ser una adaptación de una solución de código abierto o una solución desde cero.

  • Nivel de habilidad: Medio

  • Mentor : Charindu Thiwanka - Técnico

  • Co-Mentor: Buddhike Kurera - Funcional

  • Notas: se requieren conocimientos de PHP. Patrón de diseño MVC

Servicios del sistema Linux

Implementa una batería de pruebas unitarias para SSSD

  • Estado: Propuesto

  • Resumen de idea: El propósito de este proyecto es desarrollar un conjunto de pruebas unitarias para el SSSD. Estas pruebas aprovecharían objetos simulados para ejecutar código que, de otro modo, solo sería accesible cuando el SSSD estuviera conectado a la red. La incorporación de estas pruebas al SSSD mejoraría considerablemente su estabilidad a largo plazo y aumentaría la confianza al implementar nuevas versiones del SSSD en Fedora u otras distribuciones.

  • Conocimientos previos necesarios: programación en C

  • Nivel de habilidad: intermedio a alto

  • Contacto: Jakub Hrozek

  • Mentor: Jakub Hrozek

Mejora del empaquetado de Fedora

Clon de AUR para Fedora

Estado: Propuesto: Idea de los estudiantes - Se necesita un mentor

Resumen de idea: La idea es crear un clon de AUR para Fedora donde los usuarios puedan enviar archivos de compilación, que deben alojarse. Este conjunto de archivos permite compilar paquetes en el lado del usuario e instalarlos localmente.

El beneficio de este método es:

  1. No es necesario alojar los paquetes completos (ahorrando espacio en los servidores que alojan los RPM)

  2. Realice cambios en el archivo de compilación y no compile el paquete

  3. Se pueden extraer fuentes de cualquier sistema de control de versiones o archivos tar almacenados para crear un paquete muy actualizado. (Consulte un ejemplo en apunte del blog)

Contacto: Anuj More

Nota: Se necesita un mentor. Necesito asesoramiento sobre la viabilidad del software y los problemas que puedan surgir. También, lea la extensa publicación del blog sobre mi blog.

Analogía: Esto es muy parecido a "tener tu propia biblioteca" en comparación con "comprar un libro en una librería". Si consultas un libro con frecuencia, lo guardarías en tu biblioteca. Esto ocuparía espacio y consumiría recursos. De lo contrario, simplemente sacarías una hoja aparte con instrucciones sobre la librería para encontrar el libro y lo irías a buscar. Aunque el primer método es sencillo, no es posible tener todos los libros del mundo contigo.

Extensión del Repositorio FOSS de Maven

Estado: Propuesto

Resumen de la idea: Con la llegada de Maven, contamos con un medio para estandarizar la creación de proyectos Java. Sin embargo, esto también ha resultado en el uso de un conjunto de dependencias muy amplio para estos proyectos. Esto dificulta enormemente su integración en una única plataforma (ya sea Fedora o JBoss Application Server (o la combinación)).

En esencia, durante el empaquetado, todas estas dependencias deben alinearse para formar un único conjunto de componentes consistente. Por lo tanto, cada proyecto solo tendrá disponibles los componentes que realmente estén disponibles en la plataforma de destino. Esto es muy difícil de implementar con la configuración estándar de Maven.

Para Fedora, estoy visualizando una extensión de Maven que garantice que solo se utilicen componentes autorizados durante la compilación (sin sobrecargar al empaquetador). Esto permitirá a los desarrolladores que no usan Fedora compilar también con esta extensión y, así, verificar (y solucionar) los temas derivados del “empaquetado de Fedora”.

Se puede ver un prototipo en Extensión del repositorio FOSS de Maven.

Requisitos de conocimiento: Conocimiento de Maven

Nivel de habilidad: Medio

Notas: Puedes encontrarnos en irc.freenode.net #fedora-java: wolfc y mizdebsk

Fedora Spins y remixes

Aplicación educativa para Fedora Robotics Suite

Estado: Propuesto

Resumen de la idea: Crear una aplicación educativa que presente el software de Fedora Robotics Suite

El Fedora Robotics SIG crea un Robotics Suite que incluye numerosos paquetes útiles en robótica. Queremos desarrollar una aplicación de demostración que presente a los nuevos usuarios, paso a paso, paquetes básicos como Fawkes y Player/Stage. Presentaría múltiples niveles similares a los de un juego, de complejidad creciente. La tarea general sería indicar al robot que realice una tarea específica en un entorno de simulación.

Requisitos de conocimiento: Para desarrollar esto se requieren sólidos conocimientos de C++. Se valora la experiencia en robótica, aunque no es imprescindible. Debes familiarizarte rápidamente con el nuevo software. Las partes visibles para el usuario requerirán programación IGU con Gtkmm.

Nivel de destreza: Medio a Alto

Contactos: Tim Niemueller

Mentor: Tim Niemueller

Aplicación para administradores de los sistemas

Mejora de RHQ-PyAgent para interactuar con OpenLMI

Estado: Propuesto

Resumen de la idea: Mejorar el RHQ-PyAgent actual, escrito en Python, que conecta RHQ con OpenLMI para recopilar las métricas proporcionadas por OpenLMI desde sistemas Fedora o RHEL. El agente se comunica con el servidor RHQ a través de la API REST y envía las métricas a RHQ, etc. Este agente no implementa/implementará la funcionalidad completa del agente Java de RHQ. El trabajo previo es bastante bueno, pero resulta engorroso agregar nuevos servidores compatibles con OpenLMI y los tipos del modelo de datos. El trabajo de este año debería centrarse en automatizar ese proceso, quizás después de proporcionar un rango de direcciones IP para consultar los servidores. De forma similar, para los tipos de recursos, el agente se comunicaría con el servidor para ver qué tipos están disponibles y luego consultaría con el proveedor de OpenLMI si los admite.

Si bien RHQ está escrito en Java, este proyecto no requiere ningún conocimiento de Java.

Prerequisitos de conocimiento: Python, administración de sistemas Linux, principios de REST

Nivel de destreza: Medio a Alto

Contacto: Heiko Rupp

Mentor(es): Heiko Rupp

Notas: La wiki de RHQ se encuentra en http://jboss.org/rhq. Trabajos de años anteriores: http://rhqagent.blogspot.com

Aplicaciones para Probadores