There Is No Real Ending

Hello, everyone!

I am Shalom from Hyderabad, India working (yes, present tense and will ever be) on One Click Installer project as part of GSoC, 2016. Just a quick irrelevant update – I have received my UK Tier 4 visa, and my travel date is on Sept 9, 2016. I am very excited to pursue Master of Science (Computer Science) course at University of Edinburgh.
Note: Sorry for the long post. Tried my best to make it interesting.

Well, GSoC – 2016 has come to an end. So, credit where credit is due:

  • GOD – For being gracious
  • Antonio Larrosa, and Cornelius Schumacher – For mentoring, and putting up with me even when project unexpectedly became very tough at the latter stage 
  • OpenSUSE Community – For awesome support
  • Google – For this awe-inspiring opportunity 

The end of something is the beginning of something new! So, technically, there is no real ending.


GSoC Report

Let’s swift through the new features of One Click Installer.

Summary of the project: One Click Installer makes it easy for users to install software, no matter where that software is located.

New Features of One Click Installer / Milestones Achieved

  • Fully based on Qt5
  • Improved localization
  • Direct zypper execution replaced with Libzypp API calls.
  • DBus Support to the application
  • Asynchronous communication between OCI and OCIHelper using DBus
  • Handling of package conflicts and dependencies at the back-end
  • Handling of file conflicts
  • Installation of Packages, and media callbacks
  • Better progress interface, and Improved GUI

Git/GitHub Statistics

  • Link:  Official Repository
  • LOC: 4,393 ++ / 1,805 — ( a bad metric, IMHO )
  • 70 Commits
  • 5 Pull Requests ( final midterm – as of now )

Challenges, Skills Obtained, Experience
To write an application that installs software on an operating system is no easy/medium task: even a slightest error results in a broken system.

I had trouble going through the Libzypp API as it is not public friendly  __be it far from me that I should complain__ that is because product and distribution release dates don’t delay for it. Nevertheless, it somehow increased my programming ability and knowledge as I had to read some of its source code to understand.

Another major challenge was to establish asynchronous communication between one click installer and its helper. Thanks to Antonio Larrosa, we have overcome this together.

I have learnt a lot of things over the course of GSoC especially Patience, Patience, Patience, Programming Knowledge, New Technologies, Coding Constructs, Coding Style, and const QString & (insider joke 😉 ). I went through *not so great*, *wonderful*, *disappointing*, *encouraging* moments and as a result I’m a much better programmer, and a human being now than I set out to be.

Follow up Project / Contribution to openSUSE in the Future
     Participating in GSoC with openSUSE has created new opportunities for me to contribute to SuSE’s mainstream projects such as zypper, and libzypp API. I can’t wait to hone my skills and start contributing to the above mentioned projects. And yes, I will continue to enhance, and maintain my project – One Click Installer.

Humble Request: Lot of important GUI/core changes are to be made before the official release but for now please watch this video of one click installer installing “VLC Media Player” from its official tumbleweed repo. When the new version of one click installer is released, please use it and should you find any issue, create one on the official repository. Thank you.


Summary

So far, it has been an awesome journey with openSUSE. A huge shout out to my mentors – Antonio Larrosa and Cornelius Schumacher, and openSUSE community – especially, Michael Andres (libzypp), Christian Bruckmayer, and Henne Vogelsang. Thank you for all the critique, and support you have given me.

Until next time! God bless!

Links: GitHub FaceBook Email

Put Succinctly, Everything!

Hello again! It has been a long time since I published my first article. Things have changed a lot since then. A close friend of mine asked me a simple question –

“What is your favorite part of contributing to openSUSE?”
“Put succinctly, everything!” I said

It is a simple question but with no easy answer. I love the way I am introduced to opensource community through openSUSE. Contributing to openSUSE surely made me feel special. My sincere thanks and genuine appreciation to my mentors Antonio Larrosa, Cornelius Schumacher, and openSUSE team for their constant support and feedback.

The Work I Have Done So Far

It is mid term evaluation already! Let’s swift through the work I done so far.
Milestones Crossed/Achieved

  • Port the application to use Qt5 instead of Qt4
  • Introduce translation architecture using KF5I18N (KI18n)
  • Improve localization
  • Replace system calls with library calls to get package information

Git/GitHub Statistics

  • 1,307 ++ / 429-­- LOC
  • 33 Commits
  • 6 Pull Requests

The Work I Have Yet To Complete

  • Replace system calls with library calls to install packages
  • Handle conflicts and dependencies in the back-end
  • Better progress interface
  • Show which repository each package is coming from

Please click on continue reading below to know more about the work I’ve done. I once again thank my mentors Antonio Larrosa, and Cornelius Schumacher for their guidance and critique. It has been great working on One Click Installer so far and I hope it will be the same in the future as well. Thank you.

Continue reading

My First Step of Never Ending Opensource Journey with OpenSUSE

Hello, everyone!

I am Shalom from Hyderabad, India; although I keep telling people that I’m from the internet. I am currently enrolled at the University of Edinburgh for Master of Science (Computer Science) course starting this September. I intend to move to Edinburgh in the month of August, 2016.

My project proposal – Improve One Click Installer – for Google Summer of Code, 2016 has been accepted. Sincere thanks to everyone at openSUSE for giving me the opportunity to work on it. I would like to acknowledge and extend my heartfelt gratitude to my mentors – Antonio Larrosa, and Cornelius Schumacher for their constant support and advice.

The aim of my project is to enhance the current version of one-click installer by adding new and improved features so that the resulting version has a much improved user interface, giving more relevant information, and is easier to use. Proposed changes include-

  • Porting the application to use Qt5 instead of Qt4
  • Improving localization
  • Replacing direct zypper executions with library calls
  • Handling conflicts and dependencies in the back-end
  • Better progress interface
  • Display which repository each package is coming from

I have come across many programmers, but none like my mentors. To be frank, during the course of our conversation we have had, they became my programming heroes along with Dennis Ritchie, Linus Torvalds, and Bill Gates.

One of my mentors, Antonio Larrosa started contributing to the opensource community when he created kmid, a midi/karaoke player for KDE in 1997. My other mentor, Cornelius Schumacher started contributing to free software in 1999. He started contributing to KOrganizer, and eventually took over the maintainership. He is the man behind the Inqlude project.

OpenSUSE has been my primary operating system for the past one year. I love it for a number of reasons. openSUSE makes it easy to choose among different desktop environments: you can choose whichever DE you want from the login screen. It is extremely easy to install third party apps, and not to mention YaST – it is called the best tool any OS ever had. I love openSUSE also because they are among the leading contributors to Linux Kernel. Their Open Build Service (OBS) is not only used for openSUSE but also for Fedora and Ubuntu. This shows how committed they are to the opensource community and hence, my reason to choose openSUSE in Google Summer of Code program.

A little about myself: I am a simple and easy going person but at the same time very focused and enthusiastic about living my passion. I consider myself diverse and interesting. I believe in opensource software movement. Apart from academics, I play Guitar, the Keys, and I occasionally sing. My notable skills are programming, music, ethical hacking (I use this skill to write secure code not for any exploits), and organizing events. Please find the appropriate link below should anyone choose to view my code/progress or have a social conversation.

GitHub – https://github.com/shalomRachapudi
Facebook – https://www.facebook.com/shalom.ray7
Email – shalomray7@gmail.com

I am really very excited about my project and I am sure it will be a rewarding experience as well as a benefit to the community. I am looking forward to seeing great things I will accomplish this summer, and thereafter with openSUSE.