Ideas: Google Summer of Code 2011
Aplicaciones para escritorio final del usuarios
Estos son proyectos de codificación que benefician a los usuarios finales del escritorio Linux.
Wubi como aplicación para Fedora
Estado:
Resumen de idea: https://launchpad.net/wubi es una gran herramienta que permite a uno instala Linux desde una ventana de SO. Sería bueno tener algo como esto también para Fedora.
Contactos:
Mentor(es):
Notas:
Integra Configuraciones de Proxy y Lugares de Red
Estado: Propuesto
Resumen de Idea: El sistema utilizaría un perfil de red apropiado (p. ej. opciones de proxy) por cada lugar de red.
Actualmente, GNOME tiene un concepto de lugares de red en su ventana de configuración de Network Proxy. Sin embargo, el usuario seleccionaría el lugar apropiado en cuanto se mueva entre las redes. Esta idea es acerca de proporcionar una integración entre NetworkManager y los entornos de Escritorio tales que un usuario pueda crear perfiles de red para cada localización de red proporcionando la configuración adecuada, como la configuración de proxy, que es la principal propuesta aquí. NetworkManager puede tener un concepto de «Lugar de red»: para redes inalámbricas, usualmente 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 del lugar. Es conveniente que el usuario pueda asociar cada lugar 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 el perfil de configuración de red correspondiente automáticamente.
ContactOs: Hedayat Vatankhah
Mentor(es):
Completa en algunas de las piezas del API nVidia y Radeon ausentes
Estado: Propuesto
Resumen de idea: Añade algunos del desaparecidos 3d APIs para al menos uno de los tipos de carta importantes, considerablemente ayudando fuera del asediado Radeon y Nvidia esfuerzos de ingeniería inversa. Hay bastante actualmente (F14) perdiendo que la mayoría de 3d los juegos no funcionan correctamente, muchos del underpinnings de FireFox 4 aceleración es blacklisted debajo Linux, y muchos otro visuales y otros componentes no pueden hacer uso correcto del gpu(s) debajo Linux. El progreso es abismal para muchas razones.
Contactos:
Mentor(es):
Notas: Requiere una buena integración con los equipos Radeon y nVidia existentes y sus suites de pruebas
SPICE como reemplazo de VNC y LTSP
Estado: Propuesto
Resumen de idea: SPICE es un protocolo de interacción con escritorios virtuales que sería un sustituto ideal para VNC y las implementaciones actuales de LTSP basadas en X. Usar SPICE mejoraría la experiencia del usuario al implementar algunas funciones faltantes, como el sonido en VNC, y hacer que LTSP sea más eficiente que usar X sin formato. Un protocolo común para todos los tipos de pantallas remotas también simplificaría la configuración del cliente. Puede encontrar más información sobre SPICE aquí:
Contactos:
Mentor(es):
Notas:
Aplicaciones para programadoras
Otros programadores son los que más se benefician de estas ideas de proyectos de codificación.
Mejor soporte para Erlang
Estado: Propuesto
Resumen de la idea: Existe un problema importante con el empaquetado RPM de Erlang. Las dependencias entre paquetes de Erlang aún deben calcularse manualmente. Se intentó crear un listado de proveedores y requisitos automáticamente durante la fase de compilación, pero no se completó. Otra tarea interesante es integrar estrechamente la función esencial de Erlang/OTP para las actualizaciones de aplicaciones en vivo con el proceso de actualización RPM, lo que permite actualizaciones fluidas de las aplicaciones Erlang en ejecución.
Contacto: Peter Lemenkov
Mentor: Peter Lemenkov
Notas: Se requieren conocimientos básicos del proceso de creación de RPM y del procedimiento de instalación. También se requieren conocimientos básicos de Erlang.
Infraestructura para contribuyentes y usuarios de Fedora
Otros contribuyentes y usuarios de la infraestructura del Proyecto Fedora son los que más se benefician de estos proyectos de codificación.
Aplicaciones de TurboGears para infraestructura de puerto en TG2
Estado: Propuesto
Resumen de la idea: Varias aplicaciones de la Estructura de Fedora están escritas en TurboGears 1.0 y, para mayor durabilidad, es necesario migrarlas a TG2. Estas incluyen bodhi, mirrormanager, packagedb, election, fas y smolt.
Contactos: Matt Domsch, Toshio Kuratomi
Mentor: mdomsch
Mejoras de MirrorManager
Estado: Propuesto
Sumario de idea: MirrorManager proporciona las listas de réplicas a todos los sistemas Fedora. Además de la adaptación a TG2 (vea arriba), se agradecerían varias mejoras:
-
Simplifique la creación de nuevas instancias de MirrorManager (usuarios que no sean de Fedora, como CentOS)
-
Simplifique la selección de espejos dentro de los proveedores de nube con una granularidad distinta a la de los bloques de red y los ASN
-
Otros elementos en la lista TODO
Contacto: Matt Domsch
Mentor: mdomsch
Crea un Sistema de Eventos de Fedora
Estado: Propuesto
Resumen de la idea: La idea es crear un sitio web que permita mostrar eventos, divididos por región, lista de asistentes, temas tratados y otros puntos. Para referencia, consulte Ubuntu Loco Events.
Hoja de ruta (Trabajo en progreso. Las tareas están definidas, pero aún no las fechas)
Contactos:
Mentor: Nushio desarrolla webapps como trabajo diario y no me importaría convertirlo en un trabajo de verano también.
Notas: giallu el sitio de Ubuntu es una aplicación de Django, el código está disponible como GPLv3 http://bazaar.launchpad.net/~loco-directory-dev/loco-directory Si no requieren la asignación de derechos de autor, consideraría usarlo
Autogestión de Anulaciones de Buildroot
Estado: Propuesto
Resumen de la idea: cuando los usuarios necesitan anular un buildroot, pueden gestionarlo todo ellos mismos.
Para esto veo 2 partes: integración de cli en fedpkg, es decir, "anulación de fedpkg" y un servidor con el cual hablar, rastrear las anulaciones y hacer el etiquetado y desetiquetado real - flujo de trabajo posible: permitir al desarrollador especificar una vida para la anulación, con un valor predeterminado de 24 horas: el servidor luego haría la etiqueta en koji y al final de su vida la desetiquetaría. Podría ver tener una aplicación web para ver las anulaciones actuales, permitir solicitudes, extensiones, etc
Contactos: Dennis Gilmore
Mentor(s): Dennis Gilmore
mw enhancements
Estado: Propuesto
Summary of idea: mw is a command-line program that pretends to be a version control system. It should eventually help people who are console nuts (like me) edit MediaWiki-based wikis without having to shout at their web browser.
Contacts: Ian Weller
Mentor(s): Ian Weller
Notes: Here are some ideas for students: User:Ianweller/mw thoughts
Complete implementation and deployment of Copr
Estado: Propuesto
Summary of Idea: Finalize and deploy the personal repositories concept initiated by http://repos.fedorapeople.org
Copr (Cool Other Package Repo) is a Fedora project to help make building and managing third party package repositories easy. The instance to be installed within Fedora Infrastructure provides Fedora maintainers with the ability to create repos of packages to build against and share with others.
As a Fedora user and Ambassador, I’m asked a lot about this feature in Fedora.
Contactos:
Mentor(es):
Integrating Fuzzing-based instruments in quality assurance tools
Summary of idea: Generate fuzzing testcases from the existing "make test", which is generally only as good as the package maintainer placed effort into this Extending the range of testcases in a generic way contributes to an enhanced scope of quality and security testing of software. Key implementation technique is providing mock "fuzzing" devices and transparent in-process instrumentation (fuzzing loops) the turn-around time and bug discovery rate will improve. Transparent integration in build tools (like rpm-build macros) lower the entry hurdle for developers and maintainers.
Key components:
-Fuzzing devices: By this we mean user space devices that manipulate given original data based on a given fuzzing strategy, the strategy chosen depends on the nature of the file type, implemented by plugins (for a start provide comprehensive plugin source for image types, gif png, multimedia, midi).
-Package QA process: We think that a prototypical integration in rpm-build (macro, pre-waive certain results ) will help (Fedora) developers package maintainers to transparently gain from these functionality during package build.
Target: It is expected that all posix variants can benefit from wrapping fuzzing algorithms behind devices, however due to the rpm-build macro support, we expect most benefit for rpm-based distros.
Contacts: Marc Schoenefeld , mschoene@redhat.com
Mentor(s): Marc Schoenefeld , mschoene@redhat.com
Servicios del sistema Linux
These coding projects are lower-level services that benefit Fedora and other Linux distributions.
NIS support in SSSD
-
Estado: Propuesto
-
Summary of idea: Currently, the System Security Services Daemon supports only LDAP for network user identity. Support for NIS identities has been requested several times by end-users.
-
Contacts: Stephen Gallagher
-
Mentor(s): Stephen Gallagher
SUDO support in SSSD
-
Estado: Propuesto
-
Summary of idea: Sudo 1.8.0 will support a plugin interface for sudo authorization decisions. It would be excellent for SSSD to provide such a plugin to provide cached access to sudo information stored in the sudo LDAP schema. This would make it easier to maintain centralized sudo rules that also function while offline.
-
Contacts: Stephen Gallagher
-
Mentor(s): Stephen Gallagher
Mejora del empaquetado de Fedora
The heart of Fedora are the packages and the applications that manage them; these coding projects help improve the package experience for users and contributors.
Maven and PackageKit integration
Estado: Propuesto
Summary of idea: Currently when building with maven locally, all spec files need to specify build dependencies manually. Java libraries and maven plugins should have something like "Provide(groupId:artifactId:version:format)" so that "yum install org.apache.velocity:velocity" will correctly find and install velocity package. Second part of this project can be creating maven plugin asking you to install via PackageKit the package that provides the dependency.
Contacts: Stanislav Ochotnicky or Alexander Kurtakov
Mentor(es):
Notes: Basic knowledge of maven and rpm is required.
KDE Plasma and PackageKit integration
Estado: Propuesto
Summary of idea: Add automatically-generated rpm dependencies for kde/plasma related services (see also blog entry on the topic), and add packagekit hooks to use them (one concrete example would be for plasma dataengines (see also blog entry on the topic).
Contacts: Rex Dieter
Mentor(es):
Notes: Intermediate knowledge of rpm and/or kde plasma coding
Avahi yum repositories
Estado: Propuesto
Summary of idea: Add a yum plugin that will use avahi to find local mirrors of canonical repositories, and tools/scripts for local http/nfs servers to advertise what they have. It would also be nice to include proper nfs repository support in yum or a plugin, so the advertised repositories can be on NFS filesystems that are not already mounted locally on clients. The use on the clients should be transparent without any local yum repo config changes except perhaps for installing/enabling the plugin. Later anaconda could also be taught to use avahi to find repositories for installation.
Contacts: Roland McGrath
Mentor(es):
Notes: Divisible into various separate pieces that are worthwhile on their own.
Improve critical dependency management in Yum
Status: Proposed (please review)
Summary of idea: The idea (roughly) is that Yum could detect when a package update is going to break some important functionality of the system because is a dependency of another package that won’t be updated (for example: Yum is not detecting that when a kernel is updated, because the previous kernel is not deleted, and the dependency isn’t broken). This happens once in a while with kernel and third party packages that provide support for devices that aren’t supported by Fedora directly because of licensing restrictions: ie. Fedora updates the kernel, and RPM Fusion packages related to Broadcom wireless usually need 2-4 days to be updated, resulting in a non working wireless.
Contactos:
Mentor(es):
Notes: I don’t feel qualified to be mentor.
Masking packages
Mixing stable and unstable packages (ie from different repositories) is quite tiresome and hardly manageable for more than a few packets. What is missing is something like the Gentoo approach where you can unmask (or mask) certain unstable packages so that they will be pulled and installed into your otherwise stable-only environment. The user has to resolve any conflicts that may arise.
Apart from the luxury of more bleeding-edge packages available, this could also really get more people into testing of unstable packages. With changed policies regarding only stable updates / backports to a stable Fedora release, this would make Fedora still attractive for users that like to work with latest packages but refrain from rawhide for whatever reasons.
Smarter Yum Metadata
Estado: Propuesto
Summary of Idea: Share yum metadata among users of a system and also fetch them faster instead of downloading the whole chunk each time.
A git-based metadata store was proposed but objected to by yum maintainers. There could be other ways of doing this, as suggested in the bug report or by going ahead with the git idea — I believe it can be done.
Contactos:
Mentor(es):
Turn smock into a real program
Estado:
Summary of idea: smock is a hack that Dan and I wrote a few years ago that lets you build a chain of RPMs in mock. It works out all the dependencies and builds the packages in the right order, using the result from an earlier build to satisfy dependencies in a later build, and being almost completely automated. What really needs to happen is that mock is extended to support this as a native feature.
Contactos:
Mentor(es):
Notas:
Fedora Spins y remixes
Remixing and making new Fedora Spins is an important part of the community’s freedoms, and these coding projects support that.
Fedora Medical
Status: In progress.
Summary of idea: Here, we are looking for a couple students who have some experience in RPM packaging, python, and bash. This would be a good opportunity to learn in depth packaging and fedora contributor ecosystem.
This is a work in progress and details can be found here: http://fedoraproject.org/wiki/SIGs/FedoraMedical
We are looking forward to do mainly packaging and getting them published to fedora repo. However, we will also be doing some tooling and associated works. So, python and bash will be required.
Understanding fedora package maintainer guideline is required. Having existing packages in fedora will be a plus. Also, the student should be interested in maintaining some of those packages after SOC.
Contacts: Susmit Shannigrahi
Mentor(s): Susmit and Mario Ceresa
Notas:
Create a spin to aid students in education and to help them understand Linux and Fedora better
Estado: Propuesto
Summary of Idea: The idea is to create a spin which would be more student friendly. It should have some graph plotting tools, some circuit simulator, maybe an equation solving application, IDE for some basic coding and a few compilers which are taught in colleges and other relevant stuff. It should consist of extensive documentation to help students use these tools and Linux in general. A few interesting games and music player would be a plus.
Additionally, if possible, one can imagine to throw up a screen during install which would help in picking the age group of the student. The applications can be installed accordingly. For example, I would like to have a scrabble game for a small kid then a circuit simulator.
Contacts: Ryan Rix
Mentor(s): Ryan Rix (Maybe)
Educational Application for Fedora Robotics Suite
Estado: Propuesto
Summary of Idea: Create an educational app introducing software from 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.
Developing this requires a strong background in C++, a background in robotics is preferred but not necessary. You should be able to familiarize yourself with new software quickly. User visible parts will require GUI programming using Gtkmm.
Contactos: Tim Niemueller
Mentor(s): Tim Niemueller
Dorrie - A Web interface to create Fedora Remixes
Estado: Propuesto
Summary of Idea: Contribute to Dorrie, and make it more usable, tested and deployable.
More at Dorrie, code at https://github.com/shreyankg/Dorrie, fork and send pull request, if you are interested to contribute.
Contacts: Shreyank Gupta
Mentor: Shreyank Gupta
Aeolus Packaging
Estado: Propuesto
Summary of Idea: Contribute to the Aeolus family of projects (http://aeolusproject.org), starting with packaging of dependencies not yet in Fedora (http://www.aeolusproject.org/page/Packages_Missing_From_Fedora)
Contacts: Chris Lalancette <clalance@redhat.com>
Mentor(s): Chris Lalancette <clalance@redhat.com>
Want to help? Learn how to contribute to Fedora Docs ›