GSOC work begins!

From 2 to 3 days I was trying to add the icons in the device list and still trying!!!!

So, my task is to add the icons for each device in the device list as media has. As shown below:


After debugging the code I explore it and find the code which does this work. Firstly I find that before adding the icons to it it needs space on the right side of the device name. Now, I am still working on that and hope to complete early as soon as possible. πŸ™‚

This is all about the work I have done in these days after got selected in GSoC. πŸ™‚

Now by tomorrow, the implementation will begin by my side.

Thank you for reading my blog, see you in the next blog.



How Location DIR works in haiku

Yesterday I was trying to fix the bug as discussed in the previous blog. The solution that I applied was not correct. My mentor suggests me to see the function that enumerates the devices and sends the names of the devices. After understanding his comment carefully I find that in the file has a path haiku/src/preferences/input/InputWindow.cppthere is a function named as get_input_deviceswhich gets the name of the devices from the input server.

I start debugging .andΒ  did some change in
src/kits/interface/Input.cpp file in get_input_devicesfunction (add printf statement), then compile interface and input preferences. When I execute Input, I didn’t see any printf statement in the console. Then, I discussed the problem with my mentor then, he told me “no, because the interface kit is compiled in So if you rebuild just input preferences, that code is not rebuilt.”

Which means I need to compile, and then create a “lib” directory next to the Input preferences executable, and copy or link your there so that this executable will use it otherwise it will use the default from /boot/system and doesn’t give me the required output.

To create the the following command is used:

jam -q

Whereas the Jam is a program construction tool, like makeΒ  andΒ  -qΒ  flag is used “Quit quickly (as if an interrupt was received) as soon as any target build fails.”Β  After applying the above command the file was created in the following path.


Now, this file is copied in the lib folder (we have to create it in the folder where the input executable file exits) so that our code will use it to generate the required output.

Some summary points are:

  • Β We have theΒ  Input preferences somewhere in a directory and when we run it, Haiku will look in that same directory for a subdirectory named “lib” and inside it file.
  • Any other lib that may be needed can see this by doing “echo $LIBRARY_PATH” in the terminal, it will list all places where it searches for libraries.
  • We see that /boot/system/lib (where the existing is) is
    the last in this list.
  • So if there is a replacement in any of the other paths, it will be used instead.
  • The first is %A/lib where the %A is replaced with the path of the application being run the others are absolute paths.
  • Command:
    jam -q Input && cp ../../../generated/objects/haiku/x86_64/release/kits/ ../../../generated/objects/haiku/x86_64/release/preferences/input/lib/ && ../../../generated/objects/haiku/x86_64/release/preferences/input/Input

I made a single command using the && which means the next command will not start working until the first command finished without failing.

First, we are creating file && coping the in the directory where the input executable file exists && generating the output.

After doing the above thing now, I get the names of the devices that the input server is sending in the function get_inut_devices. Which is helping me to reach the goal state and fix the bug. Work in progress….. πŸ™‚

WhatsApp Image 2020-04-04 at 12.16.04 AM


Fix Bug: Remove the Wacom device from the Device List

Hi to all!

Back to blogging after a month-long.

I applied for GSoC 2020 this year in the Haiku organisation. According to the timeline, yesterday was the last date to submit the final proposal. So, today I start working on the haiku project.

My first task is to remove the Wacom tablet device from the device list because it is not connected with the laptop.

I tried to do and send the commit for review.

WhatsApp Image 2020-04-01 at 3.49.33 PM

I prefer first to write the problem and its purposed solution on the paper and then implement it. Now, to remove the Wacom device I find the three solutions.

Sol 1. There are three types of devices named as B_POINTING_DEVICE, B_KEYBOARD_DEVICE and B_UNDEFINED_DEVICE. Where B_POINTING_DEVICE points to the three devices named as Mouse, Touchpad and Wacom Tablet. The first solution is to define a separate type to each device as written in the above picture. I discard this solution because by this the things become complex.

Sol 2. Make the preferences for the Wacom Tablet and then call it.

else if (dev->Type() == B_POINTING_DEVICE) {
InputMouse* view = new InputMouse(dev);
fDeviceListView->fDeviceList->AddItem(new BStringItem(name));

In this above code when it runs it returns the rest of the pointing devices named as Mouse and Wacom tablet with the same preferences and this is not needed. If I apply the sol 2. The program stops at the above code and didn’t run further. So, I discard this.

Sol 3.Β  Find the first name of the device. If it is correct or present then, its name will be visible in the device list otherwise not. This solves the bug.

else if (dev->Type() == B_POINTING_DEVICE
&& name.FindFirst("Mouse") >= 0)) {
InputMouse* view = new InputMouse(dev);
fDeviceListView->fDeviceList->AddItem(new BStringItem(name));

When the mouse device is found then, it will not show any other pointing device example Wacom tablet device in the Device List.

Using the Sol 3. the bug solved. But the commit was sended for review. So can’t say it is resolved or not. But according to me it resolves. πŸ™‚


Day 5 (Last day in Brussels)

5 Feb 2020 last day in Brussels. 😦

We all were at home and continued our work. At that time I was feeling sad and happy. Sad because I was really enjoying to work with my mentor and other members. 😦  Happy because of within the 2 days I will meet with my family. πŸ™‚

The way they were working was very good. My mentor has two toys and he kept playing with them while doing the work. I really liked that technique and also planning to do the work like him. I learned many things in that 1-week journey.

First to travel alone and to live with the new people. I have learned to do work as a developer. At that time I was feeling very confident and prodding myself. Like, this was my dream to visit abroad on my own feet. And finally, my dream comes true. πŸ™‚

I was just motivating myself at that time while sitting with my mentor to do something great. And kept thanking the god for that precious moment in my life.

The main thing that I have observed and liked the simplicity of the community members.

In the evening we went to the chocolate shop and then, to the grocery store to buy some chocolates for my friends and family. Then, I have done my packing and slept early because of next day morning at 8:00 a.m. I have my flight and we have to leave home at 5:00 am.

I enjoyed that 1- week a lot and never forget the Brussels view that I have captured in my eyes. This all like the adventure for me. πŸ™‚





Day 4 Coding Sprint

Its the day 2 of coding sprint and we all were working on some part of Haiku. I was still trying to fix the bug. My mentor was very helpful and kind-hearted. He helped me a lot while doing the work.

It was a great experience for me to work with my mentor and other developers in real life. πŸ™‚

We made lunch and dinner together and enjoy a lot. I was the younger ones in the team.

I talk with my mentor about the job, resume and my LinkedIn profile.Β  He guided me a lot on how to improve my profile and resume. After that, I update my profile as he suggested to me.

We went to the store to buy some food. As it’s my first trip alone and I was enjoying every moment of my life capturing the pictures and making the videos.

We decided how to solve the bug by planning it on the notebook.

WhatsApp Image 2020-02-11 at 11.07.44 PM

This was al about the day 4 πŸ™‚


Day 3 Coding Sprint

At the beginning of the sprint, I and PulkoMandy install Haiku on my system. It takes more than 2 hours to get Haiku installed on my laptop. There is a problem with the EFI bootloader that’s why I am unable to install haiku in my laptop.

We (me and my mentor) started installing Haiku and it takes almost 2 hours to get fixed. The problem is with the EFI. So, my mentor was trying to change the code and then download it in Pendrive and then, we test it on my laptop. After trying 4 times we got success and finally, Haiku is get installed. Yipppeeee!!!! πŸ™‚

Then, I compile the source code of Haiku in Haiku :p

By configuring it and I started using it and choose the bug from bug tracker which is to,

“Open window with full height to void scroll bar”

In which we have to adjust the size of the window with respect to the main window screen.

After that, we went to visit Brussels. We went to Church, Atomium and Museum. The weather was awesome. I enjoyed a lot. We got some pictures there for memory.

Then, in the evening we went to the home again and start working.

This was all about Day 3 and the day spent well. πŸ™‚

This slideshow requires JavaScript.


Good Morning to all!

I am writing the blogs one night late because I feel so tired when the day ends. Yesterday was the second and the last day of FOSDEM. We don’t have a booth yesterday. We share our space with ReactOS (It is a free and open-source operating system for amd64/i686 personal computers intended to be binary-compatible with computer programs and device drivers made for Windows).

So, we were free to attend some knowledgable talks. Our first talk is “What’s Up Haiku” which was given by our team member “mmu_man”. The presentation was very good.

The second talk is about “XMPP” which is Extensible Messaging and Presence Protocol is a communication protocol for message-oriented middleware based on XML.

The other talks were from “Mozilla”, “How to break the Kernel”, “The Problem”(its the name of the presentation in which the Profesor gave a talk about how to draw the electricity circuits), “Debugger”.

Then, we went for lunch. πŸ™‚

Then, we visit the big and I think the main hall of the conference where the Software Freedom Conservancy (Software Freedom Conservancy is an organization that provides a non-profit home and infrastructure support, including legal services, for free/open-source software projects) giving the talk about their journey and their organization.

After that, we take some rest to fresh our mind because we attend so many talks. :p

Then, at 6:00 pm the FOSDEM closing ceremony begins!! It is the 20 anniversary of FOSDEM. They cut the cake and distribute the FOSDEM muffins. Attached some pictures. πŸ™‚

This slideshow requires JavaScript.

This slideshow requires JavaScript.

1 – week New Journey begins!!

On 30 journey I left my home for the next 1 week which is not easy for me. 😦

On 31 January 2020 at 3:40 a.m, I have my flight to Doha and then from Doha to Belgium.

When I reached Brussels my mentor was standing here to welcome me in Brussels. It was good. πŸ™‚

My still my mind is at my home. 😦

The first experience with aeroplane flight is also great!! πŸ™‚

Today 1 Feb 2020 we are at FOSDEM Conference and having the Haiku booth here.

First, we organize our booth, we placed some haiku stickers, CDs for free for the visitors. Then, people start visiting our booth and then the Haiku team tell the people about Haiku if the audience has any question. Then, I visit other booths and collect some free stuff (stickers) eg: Apache, FreeBSD, Fedora, PostgreSQL, Perl, Open-source Design and so on.

Weather is also quite good. It is raining in the morning and it is too cold outside. After visiting the other booths we have some lunch which is vegetarian pasta.

Then, again we are at our booth. As I travel alone for the first time so my mind is just thinking about my mom. 😦 So, I went to flat early to call my mom because there are 4:40 hours time-lapse from India to Europe. πŸ™‚

Then, after 2 hours we (me and PulkoMandy) went to the google meetup event. There were 40 mentors I think. Then, we got our sashes in which the our name was written on them. We eat some fries and start interacting with the other mentors.

The day was very good as we talk to other people. And also we click some pictures at night. The night view of Brussels is just awesome.

That’s all about the day see you in my next day blog!! πŸ™‚



Hacktoberfest 2019 swag arrived!

Today! I am very happy not because I got my hactoberfest swag, I am happy because my friends got their first achievement as a hactoberfest swag. πŸ™‚

In the morning around 11:00 am, my friend Nishtha called me and said I got my swag, she was full of happiness and thanking me a lot.

Then, after half an hour around 11:30 am my friend Sunaina called me and said I got my swag, again she was full of happiness and thanking me a lot.

First time I felt that I am also important for someone. As I advised this time to my all friends to participate in the open-source contest hactoberfest. I guided them as I can and tried my best.

Last year, only I participated in the hactoberfest and I got my swag. But, this time I thought about to share this with my class friends. Sometimes, this type of prizes motivated us in our future field.

They didn’t know about what is git? How to contribute to open-source? How the project works? How the community review the code?

But, by this contest, they all are now able to contribute to open-source. πŸ™‚

I think to guide someone is the second step in the success stairs!!! I can’t express the feeling when they both were thanking me. I was like really I did something really good in my life. πŸ™‚

I got my swags around 1:00 pm today. Below are some pictures:

WhatsApp Image 2019-11-21 at 1.47.45 PM(1)WhatsApp Image 2019-11-21 at 1.47.45 PMWhatsApp Image 2019-11-21 at 1.47.46 PM



Create a free website or blog at

Up ↑