Summer Coding 2010 proposal - Kronikarz Backup Restore Tool

From FedoraProject

Jump to: navigation, search


About Me

  1. My name is Sweta Yamini
  2. My email address is
  3. My wiki username is Yamini
  4. My primary language is English
  5. Location, and what hours tend to work: Kharagpur, India. 8:00 to 23:00 GMT+5:30

About my Project

  1. Name : Kronikarz - A simple tool for desktop backup and recovery
  2. Project shortinfo - Summer Coding 2010 ideas - Kronikarz - shortinfo
  3. Summary of Idea: Handy graphical tool for archiving settings of applications. This tool will be useful for users who:
    • want to simply backup / restore look-and-feel and settings of applications
    • frequently migrate from one distribution to another
    • have more then one device and want to sync settings
  4. Details
    • The application(Kronikarz) will be like a plug-in engine. For each application that Kronikarz can support a backup, an XML hook-in file (plug-in) must be defined. The application reads the plug-in, and backs-up or restores accordingly.
    • It will have a GUI for the user to specify what to backup, etc.
    • It will have daemon to schedule backup and sync settings, also customizable with a UI.
    • The backend does the main backup and restore functionality, installs missing packages using PackageKit for restore.
    • The code will be written in Python and UI will be built with Qt.
  5. Features
    • Easy to use intuitive UI, usable by users of all expertise.
    • Easy search and select of applications to be backed-up, synced or restored.
  6. Timeline
    • week 1 — matching of technical tasks, determination of participant's roles
    • week 2 - week 4 — realization of backend with backup / restore functional
    • week 5 - week 7 — realization of basic GUI-application
    • week 8 — realization of service/daemon
    • week 9 - week 10 — debugging
    • week 11 — final testing, creation of rpm-package.

My background

  1. I am a fourth year undergraduate student of the Department of Computer Science and Engineering, Indian Institute of Technology, Kharagpur, India.
  2. I haven't contributed to open source before, and look at this as my first taste to open source development. However, I have done some projects as a part of my academic curriculum.
    • A minimal processor. [Verilog] (as a group of 2)
    • A compiler in C using Flex and Bison for a toy language.
    • Simulation of a file system. [C++] (as a group of 2)
    • HTTP server, client, proxy server, and DNS server. [C++] (as a group of 2)
    • Chat server and client (as a group of 2)
    • The code for the Chat Server and simulation of a file system can be found at , my groupmate's.
    • I am pretty confident about this project, and I think I can complete it.

Me and the community

  1. If your project is successfully completed, what will its impact be on the Fedora community?
    • Users can backup and restore settings across different systems and distributions easily.
    • Users can sync settings across different systems.
  2. What will you do if you get stuck on your project and your mentor isn't around?
    • I will try to solve the problem myself, else I'll leave the problem for the time being and work on a different module until my mentor is available. If my mentor is away for an extended period of time, I will ask the Fedora community for suggestions and possible solutions.


  1. We want to make sure that you are prepared before the project starts
    • Can you set up an appropriate development environment? - Yes
    • Have you met your proposed mentor and members of the associated community? - Yes, I have met my mentor.
  2. What is your t-shirt size? - M


Use the Talk:Summer Coding 2010 student proposal application to actually make comment, which then appear here on the main proposal page. You can use this link to make a new comment].

plus talk