Posts

GSoC 2019: New Learnings 1. Virtual methods can be overridden in derived classes, while abstract methods must be overridden.

2. A class that has atleast one abstract method must be an abstract class.

3. We can't create instances of abstract classes.

4. GObject subclasses are any classes derived directly or indirectly from GLib.Object. They support a lot of features like signals, managed properties, interfaces and complex construction methods.(reference).


About git
Soft reset: this feature allows to remove the commits but keeps the changes made in files saved whereas hard reset removes the saved changes from file also.When we create a merge request by comparing two branches, the commits included in the MR get updated every time we update either of the branch, if we update the branch that we used to compare our new branch, the new commits included in that branch will not be included in the MR.
Image
Google Summer of Code 2019 Update
I didn't publish after the third week, was saving drafts and had planned to publish it once was successful in achieving the main goal of the project. But after discussing with my mentor, I've realised it's better to have regular updates. I will now keep posting blogs every alternate day, if not everyday.
Achievements so far: In the last post I mentioned that I have created a page that lists all the Operating Systems that haven't yet reached their end of lifecycle, this was basically similar to the page that would come up when we press the show more button in Download an OS option. Now the challenge was to remove the Operating Systems that do not support tree based installations from this list. I initially tried keeping only the Operating Systems that were returning true for tree.hastreeinfo()  but when I tried printing the kernel and initrd path for them, some returned null. While my mentor suggested an approach to read .treeinfo file,…
Image
Google Summer of Code 2019: Week 1 and 2 I got selected as a Google Summer of Code 2019 student with GNOME. It has been almost two weeks since the coding period started and I've been working with two awesome mentors Fabiano Fidencio and Felipe Borges.

Currently GNOME Boxes is able to do either express-installations on a downloaded ISO or to download an ISO and offer the option to express-install it. My project aims to add the support for express-installations using the OSes’ network trees. This would reduce the download size and mainly benefit the users with not so good internet connection.

I first tried few express-installations(unattended installations) on boxes from a downloaded media and compared the command line generated with that of the one generated in virt-install while installing a virtual machine from the network.

I've added a button  "Install from a tree" in boxes, on clicking it goes to a new window which lists all the operating systems that haven&#…
Disabling nouveau driver in Fedora Ever since I dual booted my system with Fedora 29 along Windows 10, Fedora would freeze just after few seconds after booting, after hours of googling, I've found out the solution to my problem is to disable nouveau driver for Fedora,
I followed the method 3 in the video first to disable it temporarily and then disabled it permanently using the method 2:
https://www.youtube.com/watch?v=IGinixggV1k&fbclid=IwAR0HXlSZD95Au5eg9UKfMZjOvtXHnPx9U1eb0wq5gOG_12dDyRYnZ7VBXwc
Contributing to GNOME Boxes
GNOME Boxesis used to view, access, and manage remote and virtual machines. Currently it is able to do either express-installations on a downloaded ISO or to download an ISO and offer the option to express-install it. I stumbled upon the project ‘Improve GNOME Boxes express-installations by adding support to tree-based installations’, it required the knowledge of Object Oriented programming and I had done this course last semester only and had a project for the course. Even though I had used Java primarily for the project, it didn’t take me long to understand Vala. I quickly jumped into the irc channel of GNOME Boxes, introduced myself to the mentors(one of them being Felipe Borges), got the source code and built it. Initially it took me some time to understand how things were working but the mentors were patient enough to even answer my dumbest queries. I then started working on a few bugs, they helped me understand the front-end part of the project. I’ve fi…