Fedora Summer Coding 2010 : Copr

Toshio Kuratomi a.badger at gmail.com
Sun Apr 25 14:40:42 UTC 2010


On Wed, Apr 21, 2010 at 04:43:43PM +0530, shan chak wrote:
> Hi
> My name is Shankhoneer Chakrovarty and I am a final year student pursuing
> B.Tech from Indian Institute Of Information Technology.
> One of my professors introduced me to FOSS ideologies and encouraged me to take
> up FOSS development. I completed building up of Tibetan OCR ( Tibet is a
> province of China near India China border ) which was released under GPLv2.
> My skillset includes working in C,C++ and Python. I mostly work in Linux (
> Ubuntu is my favourite ) but I have dual boot system with windows as well.
> I read the Copr information page.It seems to be interesting as well as long.
> Are you planning to complete whole corp during this summer?
> Can you include me with your project please? If there is any work on corp to
> show, please tell me.Where is the codebase?
> I also read the application procedure for FSoC2010 and I am really interested
> in it.Can you please provide me some guidance regarding the same?
> 
Let me fill you and any other potential students in on what the status of
Copr is.  Copr is a new project to implement an old idea.  The idea is to
make it easy for Fedora packagers to make third party repositories.  The
repositories can be used for a variety of purposes:

* Updates to new, incompatible versions of software within a Fedora release
* Packages that are not yet in Fedora
* Packages that don't yet follow Fedora's Guidelines but are legal for
  distribution using Fedora services
* Rebuilds of Fedora packages with different buid time options enabled
* Other use cases that packagers will come up with once the service is
  deployed.

We are working on three pieces of software to enable this:
* mock-vm builds packages inside of a virtual machine.  skvidal has this
  well under control and we likely are not looking for summer coding help to
  do this.
* Headhunter allocates jobs to be performed on other computers.  This is
  a generic service that could be used by system admins and application
  developers for other things besides a buildsystem.  It uses func
  (https://fedorahosted.org/func) to have Headhunter communicate with the
  computers that will run the tasks.  Summer coding work on this would include:
  + writing modules to perform tasks we need: building packages in mock,
    creating new repositories, updating web pages with the lists of
    available repositories, etc.
  + deciding how to deploy func, headhunter, how to share the package
    information, etc in order to build.
  + porting func and headhunter to use amqp/qmf for communication.
* The Copr buildsystem is the front end to this.  It needs to provide a web
  interface to view builder state and a command line client to manage
  repositories and build packages for those repos.  Other pieces that could
  be written are an interface for users to search and browse the
  repositories.  We'll be implementing this as a TurboGears2 project.

Copr is a very new project and as such, there isn't much code to start out
with.  This makes working on Copr for the summer both exciting for you and
risky for us:  You get a chance to help design how the system works since
many of the decisions of how to implement this have not been made.  It's
risky for us since we'll need to maintain and build on the code you write
after the summer whether or not you stick around to help :-)  Because of the
risk, here's some of the things we're looking for in a student:

* Willingness to jump on IRC and start talking with us.
* Willing to start talking in public about things (#fedora-summer-coding and
  #fedora-admin are appropriate channels.)
* We communicate with each other well -- since we're working on basics of
  how the system will look, we'll need to mesh well as a team... which may
  have nohting to do with what your skills are, just how well we end up
  working together.
* Able to formulate ideas, discuss them, modify or discard them, and
  implement them.  Since this is new software, we're going to be bouncing
  implementation ideas off of each other constantly that may be good, maybe
  bad, or might need to be shelved in the short term to get something that
  minimally works for people to use.
* A Fedora packager -- you don't need to be part of Fedora already but if
  you are and you think you can keep maintaining pieces of Copr that you've
  worked on over the summer (or new pieces of the project) that is a bonus
  for us as we know you have a vested interest in seeing that the Copr
  repositories are running.
* Experience with the relevant pieces of technology.  If you're planning on
  working on the web front end, having some experience with TurboGears2 is
  good.  If you want to work on the amqp communication, some experience
  setting up or programming for qpid or another amqp broker is good.
  Experience with python is likely to be a hard prerequisite whereas the
  other pieces of technology can be picked up while on the job if necessary.

-Toshio
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
Url : http://lists.fedoraproject.org/pipermail/summer-coding/attachments/20100425/c848e854/attachment.bin 


More information about the summer-coding mailing list