WinLibre's Proposals: Google Summer of Code 2008

Google Documentation Hometerm of serviceFAQGSoC Knowledge BaseGSoc BlogAdvice for Students

WinLibre is an open source project aimed at popularizing Open Source software.

WinLibre is a META-project that was originally targeted for the windows platform (hence its name) but it has evolved during the last 3 years to embrace also the Mac OS and Linux platforms. We are focusing on delivering to our users quality open source software with a strong emphasis on ease of use. We are mainly maintaining WinLibre (open source software distribution for windows) and MacLibre (open source software distribution for Mac OS X).

The Winlibre distribution provides a collection of first-class open-source software bundled in a easy single installer & updater. Through time and thanks to the former editions of the Google Summer Of Code, the Winlibre project has evolved and created other sub-projects to fill gaps in the open-source desktop software offering. The Maclibre distribution is an equivalent to the Winlibre distribution for Mac OS.

Guidelines for students

The student application period begins Monday, March 24, 2008, and ends Monday, April 7th

The ideas listed on this page are just that - ideas. They are deliberately somewhat vague, because you are meant to fill in the details.
Last year there were too many proposals that were simply cut-n-pasted from our ideas page.
Don’t do that! If you do, you will be tossed out very early in the application sorting process.

If you (as a student) find an idea you like, we ask that you create :

  • a list of deliverables
  • quantifiable results for the WinLibre project
  • a detailed description / design document
  • an approach
  • an approximate schedule and some kind of background text.

In other words - sell yourselves in this Wiki - and link your proposals with the project idea.

Here are a few documents (written by the Drupal and PostgreSQL teams, but applicable to Winlibre) that could help you in writing your application :

Drupal's Write a SoC applicationDrupal's Student requirementsPostgreSQL: Advice to Students on Submitting SoC Applications

Do I have to use one of the ideas?

Definitely not! These are here to get you started, and because some folks think it’d be great to see them done.
If you have your own idea, run with it. We’ll judge applications on their strengths, not on who wants the project done or who thought of it.

I want to use an idea, but need more detail : Contact us

Student Signup http://groups.google.com/group/google-summer-of-code-announce/web/guide-to-the-gsoc-web-app-for-student-applicants

Proposals

MacLibre 3 : Open Source Software Distribution for Mac OS X

Primary Contact Licence OSLanguage
Pawel SolygaGPLMac OSX Python

Description

MacLibre has been an outstanding success of former Summer Of Code editions. We would like you to help this project going even further with its third version...

Here are some of the enhancements we would be glad to see in MacLibre v3. Of course any other great ideas are welcome and encouraged!

  1. ask for installation directory path if you have no rights to install in /Applications directory
  2. show estimated time to finish downloading
  3. download pause and resume
  4. local copy of downloaded file if something gonna go wrong we don’t have to download everything from the beginning
  5. move configuration files from ~/.MacLibre to the Mac OS X apps data specific location
  6. create apps updates notification daemon with Growl support (http://growl.info ), you can use Growl python binding
  7. add buttons for reporting new version of apps and new useful apps
  8. integration with Spotlight (plugin)
  9. support for Mac OS X proxy settings
  10. implement a Sparkle software updates (http://www.andymatuschak.org/pages/sparkle )
  11. automatic apps update tool (versiontracker or macupdate sync), there is a problem with MacLibre and this kind of applications that apps updates takes a lot of time. This tool would make automatic versions updates, this might be integrated with admin tool
  12. admin and maintenance tool for MacLibre. It would be important tool not only for developer, but also for users who could create their own MacLibre distributions. We will get a tool for editing/modifing installation xml files. Mostly everything will be based on xml file modifications. With such tool we will cut down updates/new versions development time.

Most important features of admin tool:

  • automaticly make online (internet) / offline (stand alone) versions of MacLibre using scripts written for MacLibre 2,
  • easily add new applications to distribution (Virtue, QuickSilver, Vienna and many others).A good place to start might be those urls: http://nothickmanuals.info/doku.php?id=opensourcemac, http://www.opensourcemac.org/
  • test applications installation process (some kind of unit testing for each application including http url, downloading, md5 etc),
  • modify existing MacLibre configurations/distributions (modification of xml file),
  • ability to make new kind of distributions: MyOwnMacLibre, MacGamesLibre, MacOfficeLibre, etc. (creating new xml files),

Ressources

Deliverable

  • Source Code
  • Setup.py to generate a .App file

WinLibre 5: Open Source Software Distribution for Windows

Primary Contact Licence OSLanguage
Bertrand CachetGPL Windows Python

Winlibre is our Flagship product.

WinLibre 5 will in fact propose two executables (produced with py2exe) : one downloader, one full distribution (self-containing WinLibre’s apps).

Tasks

  • GUI in Tk: WinLibre Control Center, Admin tools :Helper and Distribution Builder, Control panel GUI to change Winlibre’s settings, choose update method, install/uninstall new sofware
  • Improve Kernel: python module providing core services to WinLibre distribution : download, install, unsintall, registry, ...
  • WinLibre Updater: Automatic sofware version control and update
  • Setup.py → generate an exe with py2exe

Ressources

Deliverable

  • Source Code
  • Installer

WinLibre WEB GUI : A Django / jQuery / Prism GUI for WinLibre

Primary Contact Licence OSLanguage
Pierre-Jean CoudertGPL Multi-OS Python

Tasks

  • Build a Prism + Django as a Windows service installer in order to distribute a django webapp as a desktop app
  • Build a WebApp Front end to the python WinLibre kernel, using django / jQuery / blueprint CSS

Ressources

Deliverable

  • Source Code
  • Installer

Pwytter Improvements : Twitter Client for Windows, Mac, Linux

Primary Contact Licence OSLanguage
Pierre-Jean CoudertGPL Multi OS / Tk Python

http://www.pwytter.com/ : Twitter client, Multi-OS, Python, GPL

  • Multi account support
  • Multi services support : add Jaiku, Pownce, Seesmic support
  • Notification support (ie: Growl)
  • Track/Untrack support
  • Integrated Search
  • User browser / Create/Delete Friendship
  • finalize setup.py
  • RMP / DEB packaging

InfraRecorder Improvements : Free CD/DVD burning solution

Primary Contact Licence OSLanguage
Christian Kindahl GPL Windows C++

http://infrarecorder.sf.net/ : Free CD/DVD burning solution, Windows, C++, GPL

  • Add support for converting between sample rates, sample sizes and number of channels for audio files.
  • Add support for disc image emulation (mount disc images on virtual CD/DVD-reader).
  • Add support for encoding/decoding APE and FLAC audio by creating two new codec plug-ins for InfraRecorder.
  • Add support for creating VCD and SVCD discs.
  • Add (extendable) support for converting incompatible disc image formats to compatible ones before recording them.
  • Add support for LightScribe.
  • Add a cover generator for audio discs.

Final Touch 2 : Easy to use Photo manipulation software

During 2005’s summer of code Noemi Tojzan developed Final Touch, an MS Windows image manipulation program (written in Delphi) with innovative and hi quality algorithms. We would like someone to continue this effort and, using what has already been done by Noemi, build a :

Primary Contact Licence OSLanguage
Pierre-Jean CoudertGPL Multi-OS / GTK Python

  • Image&Photo managing/processing app
  • Multi-OS
  • Easy to Use GUI
  • Image Browser
  • Raw file conversion (idea)
  • suggested programming language/framework : pyGTK / Python

User friendly panorama composer

Primary Contact Licence OSLanguage
Julien MarbachGPL Multi-OS / GTK Python

Write a graphical application using the “panotools” library to create a free and easy to use panorama creation software for windows users.

  • Simple User interface
  • Guided steps to build panorama
  • Default presets for average user
  • More options accessible to the advanced user
  • ... feel free to add your own ideas

panotools is an open-source (sourceforge project page) set of tool to build panoramas from a set of panoramic images (and do some related treatment). A few open-source software using this library already exist (such as hugin) but are far from being user friendly. This point makes it impossible to add them in the winlibre package. We would like you to design a modern, user-friendly/easy to use software that aims to be part of the winlibre distribution. Once the application is validated, it may be integrated in “final touch 2”, so the developer who works on this project must keep in mind the idea of this future integration. To be included in Final Touch 2

Easy Backup Tool

Primary Contact Licence OSLanguage
Pierre-Jean CoudertGPL Windows ??

  1. Really easy to use backup tool for Windows
  2. Point and click modes
    1. Backup My Personal Data (Photo, Music)
    2. To CD /DVD / Internal HardDisk / External / Home Network / Internet Server
  3. Intuitive GUI ala “iLife”
  4. ABAKT (http://www.xs4all.nl/~edienske/abakt/) is too “Geeky”

Getting Things Done methodology with GMail

Primary Contact Licence OSLanguage
Bertrand CachetGPL MultiPlatform Not define yet

Getting Things Done is a new methodology based on the principle that a person needs to move tasks out of the mind by recording them somewhere. More info on wikipedia

We would like to develop an application which will reuse the todo.txt application concept. Todo.txt is a command line tool, it offers command to add/edit/remove tasks. Every tasks are backed up into a file located somewhere on your filesystem.

In our application, tasks will be represented by an email and they will be backup in you email account (instead of a simple local file). All these tasks will be stored in a given folder of your email account. That way you can access tasks you have to do every where in the world. You just need to be able to connect to your GMail account and access this specific folder. When you have finished your tasks you juste have to delete the email.

We will access to the GMail account via IMAP (no GMail API for the moment), this way, it will be easy to move from GMail account to another. In a later stage it will be a plus to be able to add a task with a deadline to Google Calendar, a task shared with others can be shared with others via their calendar and email account.

Tasks

  • Create/Find a module that allow us to access to all the services of an IMAP account (an imap module already exist in several languages)
  • Create a Command Line Interface application that allow user to create/remove/update/view tasks (in python for example)
  • Create a Graphical User Interface to access to the CLI functionalities in a more easy way (will depend on the platform that are targeted)
  • A tutorial to explain how to use the application.

Ressources

Deliverable

  • Source Code
  • Installer

GSync

Primary Contact Licence OSLanguage
Pawel SolygaGPL MultiPlatform Not define yet

Google offers several services. It will be a good idea to have a service that is in charge to synchronize user informations located on his computer into google services and vice versa. For example:

  • Synchronize Google Calendar iCal (Mac OS X), Outlook (Windows), Sunbird thanks to Google Calendar API
  • Synchronize Google Contacts with Windows and Mac OS X Address Book using Google Contacts API
  • Handle iPhone contacts and calendar synchronisation (no more iTunes needed)

Tasks

  • Learn how to use Google APIs efficiently
  • Create a Command Line Tool application or Daemon (service) that will offer services to synchronize data with Google services.
  • Create a Graphical User Interface to indicate which informations are synchroysed where and how. This GUI can be accessed by different ways: via the preference panel, dashboard, system tray ...
  • A tutorial to explain how to use the application.

Ressources

Deliverable

  • Source Code
  • Installer

Collaborative editor

Primary Contact Licence OSLanguage
Pawel SolygaGPL MultiPlatform Not define yet

Extreme programming is a new software development methodology that use simple concepts. One of them is to work by pair, it is called pair programming, one people is the coder and the other is the reviewer. Most of the time, these two people are not in the same location, they are performing remote pair programming. In such a scenario, the use of a collaborative real time editor.

A collaborative real-time editor is an application that allows users to edit the same document at the same time on different computers. User can read in real time what other users are writing on the document they work on.

Today, an open source collaborative editor already exists, it is called obby. We don’t want to fork this project, our approach is different. We would like to create a collaborative editor plugin to existing IDEs (Eclipse, NetBeans, VS, Xcode or whatever).

The mains features of our editor will be the following:

  1. non-blocking files editing
  2. multiple files editing
  3. IDE integration
  4. based on Jabber like protocol

Tasks

  • Core system that allow multiple access on a same file and able to propagate modifications.
  • Plugin to render all the available information (other users modifications) in a given IDE
  • A tutorial to explain how to use the plug in and how to create new ones for others IDE.

Ressources

Deliverable

  • Source Code
  • Installer

More Ideas

Portable Winlibre : USB Key

Screencast

  • Quick and Easy
  • Ex : CamStudio http://camstudio.org/, Wink, FreeScreenCast
  • We are looking for Windows, Linux or Mac OS X versions

Easy and light Audio Player

  • MediaLibrary
  • CD Import / Export
  • Light GUI (Ex : CoolPlayer, DekiBulle)
  • Portable MP3 Player transfert

Fast and lightweight PDF/PS viewer

  • Fast start up and low/reasonable memory usage.
  • Search feature similar to the one in Firefox (mark multiple matched words throughout the document).
  • Support for following links inside a document.
  • Support for listing document bookmarks.

Video Cut

Google Backup

  • write a tool with module based architecture to backup all the data from different Google services
  • mail, contacts, calendar, docs, etc

FreshApps

  • write an application for Windows which finds all the apps you use on Windows and notifies you when new version has been released, icon in tray

Open proposal : New Innovative Desktop Application

Write a new, innovative, multiplatform, windows compatible, easy to use desktop application.

If you want to create a brand new, innovative application, write and submit a proposal.

Note : Before submitting your idea(s) please be sure that no other Windows open-source alternative already exist (in terms of functionality, quality, ease of use...). Intensive Google searching will help you at this point.

 
winlibre_soc_2008/proposals_for_the_google_summer_of_code_program_2008.txt · Last modified: 2008/04/01 11:22 by 80.83.52.2 (pjc)
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki