This is my third Google Summer of Code status update, and the first after finishing my exams. Now, I have begun working full time on the project. So far, to understand the usage of libzypp, I made a tool called parseymp, and am using it to accomplish tasks such as reading a YMP file, parsing the contents, adding of repositories, and installation of packages. I have managed to add repositories, and am currently working on installation of packages, and retrieving of GPG keys for the repositories. This is necessary, as installation of packages with unsigned repositories will result in libzypp callbacks. I am hoping to implement these two tasks very shortly. I also spent some time writing a unit test case to test the parser for YMP files. As of now, it works but it needs improvement as some of the parameters are hardcoded. I will work on it after the installation of packages. I am implementing most of the stuff in the parseymp tool for the moment, and without much of exception handling, but will incorporate the necessary changes as soon as possible.
This is my second status update for Google Summer of Code ’12. It will be the last update for some time, as I will be having my exams in the forthcoming weeks, and I will need to channel my energies there. Though it is still the Community Bonding Period, I (and my mentor agrees with me) thought it best not to make a distinction, and start some of the code. Since the last update, I have tried to refine the code that I had written. I have a partial UI ready, and I am working on the backend. I had written code to parse a YMP file and have since implemented it as a class. libzypp has proven to be the biggest bottleneck due to its sheer size and complexity. I will need to study a lot of existing code of zypper before I get to the task of resolving dependencies, and installing packages. I had got my code reviewed, and so most of the time was spent in refining the code. After my exams are over, I will continue my work on the project full time. The progress of the project can be tracked at the following Trello board.
I have been accepted into this year’s Google Summer of Code program under the openSUSE project. It is a great opportunity to contribute to one of the best communities I have come across. My project is ‘Beautiful 1-Click Install’, and its intention is to make the 1-Click install feature of openSUSE really ‘1-Click’. Over the course of the program, I would implement the user interface in Qt, which will interact with the user in reading YMP files, and then perform the actual installation using libzypp. I would try and separate the user interface and the backend as much as possible, so that applications in GTK+ can also be implemented. My mentor Cornelius Schumacher, and Co-mentor Matt Barringer have been extremely helpful in guiding me through the details regarding the project.
So far, I have made a simple interface for the main screen (without styling), and have been trying out sample codes to read and parse YMP files, and add repositories. I will be using this space to post updates regarding the status of the project at regular intervals. I hope to do this project justice, and learn a lot in the process