Added the working

From the two days ago, I was trying to add the working behind the UI of mouse and touchpad. Today, I finished all that wor just one thing left to add the actions on default and revert button for the touchpad. Done with the default and revert options of mouse and the working of both mouse and the touchpad.

Suffering form eyes infection because it’s too hot outside. That’s why I was unable to give the proper time to the work.

The new UI is shown below:





Hectic week

From one week, I was not writing the blog. I was suffering from the eyes infections and there were other problems also like, I was trying to install the Haiku Os in my laptop.

I installed Haiku successfully. After rebooting it I was getting an error: no such


Then, I send the send mail about this in the haiku community mailing list. Linuxero, Adrien (PulkoMandy) helped me to overcome this problem. I spend the whole day and night on it. But, didn’t get success. Then, I start working on the code. But, there was also a problem. I execute the code on the VirtualBox in my daily tasks. Suddenly, the problem occurs when I transfer the file to haiku using the
scp command. The file transfers properly and when I open the file in
haiku, the error comes:
“bash: ./Input : cannot execute the binary file. Not an executable file.”

I was very confused why so many problems are coming day by day. Today, I start my date by praying to god. Then, I started my work and now, only one problem left which is to reboot haiku.

PulkoMandy told me the solution to the above problem. I download the 64-bit version of haiku from the link provided by him. Again, I convert the .image file into a .vdi file for the virtual box as I discussed in my previous blogs. Again, I made the start the ssh port to transfer the files from the local machine to remote machine. While transferring the file I was getting the error :

Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
Please contact your system administrator.
Add correct host key in /home/user01/.ssh/known_hosts to get rid of this message.
Offending key in /home/preetpal/.ssh/known_hosts:7
RSA host key for has changed and you have requested strict checking.
Host key verification failed.

I removed the old keys from the pathΒ  ” /home/preetpal/.ssh/known_hosts” and the problem was solved.
β€œHost key verification failed” means that the host key of the remote host was changed since you ssh to it in last time and so the system does not allow access for security purposes. So you need to change the host key in the known_hosts file.

Finally, scp works and able to execute the code in the haiku.

Problem-related to rebooting: At the yesterday night while having a conversation with my mentor PulkoMandy. He asked me whether I was trying to reboot haiku-nightly build or haikur1 beta1. Because in r1beta1 there was the bug with UEFI. The UEFI loader isn’t available during the installation. Then, I tried to install the haiku-nightly build. Again, I when rebooting it the debugger window appears.


Now, again I am confused, didn’t find the exact fault 😦

Now, coming to the project the idea was changed. New UI will look like this:

WhatsApp Image 2019-06-29 at 9.53.45 PM

But, the Mouse I and Mouse II option will be placed on the left side, not in a tab.

I have created the above UI of mouse and the touchpad and only the working is pending because I need the haiku installed in my laptop to test its working properly.

Started my work at 10:00 am morning and now it’s 1:00 am. Now, going to sleep let’s see what will happen tomorrow. πŸ™‚

Thanks for reading πŸ™‚

Week 5 Theme: Think About Your Audience

Project: To unify the input preferences (mouse, touchpad, keyboard, keymap)

As this documentation is for for the beginners who don’t know anything about this organization and the project. So let’s start from the basic.

What is an Operating system?

The OS is the system software which acts as the interface between the user and the computer hardware. It provides an environment by which the user can run the program in an efficient manner.

Example: Haiku, Microsoft Windows, Linux, React OS, etc.

About theΒ  Haiku Organization:

Haiku is an open-source operating system that specifically targets personal computing. Inspired by the BeOS, Haiku is fast, simple to use, easy to learn and yet very powerful.

Personal computing is a multi-purpose computer whose size, capabilities, and price make it feasible for individual use. Personal computers are intended to be operated directly by an end user, rather than by a computer expert or technician. Unlike large costly minicomputer and mainframes, time-sharing by many people at the same time is not used with personal computers.

Features of Haiku:

  • Focus on Personal Computing
  • Fully threaded design for great efficiency with multi-processor/core CPUs
  • Rich object-oriented API for faster development
  • Custom kernel designed for responsiveness
  • Unified, cohesive interface


The desktop of Haiku:


About the Project:

In the Haiku, the preferences are not arranged properly means all the input preferences (mouse, touchpad, keyboard, keymap) have separateΒ windows. To get the mouse settings we have to right click->desktop->System->preferences ->mouse. Then to go to touchpad settings again we have to go through from these steps which are time-consuming.

The below picture will clear the doubts:


Now, to solve this problem and save time. There should be a common application in which these devices are placed in the same window by which the user can change the settings without wasting time. That’s why the project name is to unify the input preferences.

Skills Required: C++ , Gerrit.

If you want to contact with your mentor you have to use IRC (join the channel #haiku, #haiku-dev), mailing list, Haiku forum.

While contributing to Haiku if the error occurs in the code and the user didn’t know, where the error occurs then use Haiku debugger. Follow the below link:

For more detail follow the link below:

As the beginner, to understand the code is not easy and it is expected that the beginner will have no knowledge about it. So, it’s fine to take some time to understand the side and the project with the full concentration.

If you feel the problem you can contact with the community. Feel free to ask me anything which is not clear to you. I feel happy to help you.Β  πŸ™‚

Thank you. πŸ™‚


Debugger in Haiku OS

Hello everyone! Welcome to my blog.

Today I will cover the topic of the debugger in the Haiku OS. When the programming (coding) journey begins, a various error comes. Some are easy to handle, some are not.

As a begging, we don’t know how to find our mistakes in the huge lines of code. It was very difficult to find.Β  Yesterday I gain knowledge about debugger from my mentor. I never use debugger until now. Yesterday he told me to step by step and today I am able to find the error in a very easy way. πŸ™‚ I want to share my knowledge with you all reading my blog. This blog is especially for beginners who are new to Haiku. πŸ™‚

There is a tool that is called the debugger. Basically, what the debugger will do?

A debugger is a software program used to test and find bugs (errors) in the programs.

Let’s start with the debugger journey.

Step1. Go to the following directory:


Step2. Read the files that are marked in the above image:

There are two files UserBuildConfig.ReadMe and UserBuildConfig.sample.

UserBuildConfig.ReadMe: It contains documentation about how to use the debugger.

We can also read from there but, I was writing my blog to share my experience with the beginners.

UserBuildConfig.sample: It contains the sample of how we have to create the file to debug the application.

Step3. Now, Create the new file as same as the UserBuildConfig.a sampleΒ including the text “SetConfigVar DEBUG: HAIKU_TOP src preferences input: 1: global;” (where src preferences input are the path of the file which we have to debug.)


Here, we are declaring the value of DEBUG = 1 which means, to start the debugging of the application mentioned in the above line (input).

Step4. Run jam.

Now, while building it you will see that the paths change from “Haiku/generated/objects/haiku/x86_64/release/preferences/input/Input” to “Haiku/generated/objects/haiku/x86_64/debug_1/preferences/input/Input”. Now, you build your application in debug mode and its time to start source level debugging.


Step5. Use scp cmmand to tranfer the application from local machine to remote machine.

scp [OPTION] [user@]SRC_HOST:]file1 [user@]DEST_HOST:]file2


Step6. Example: Let the application crashes due to the error in the file. WHen you clcik on the application to run. The debug Window comes as shown below:


Step7. Click on the debug option and give the path to the file in the debugger window.. Now, you see in the variable block There is the name of the function which crashes the application. At the same time when you give the path to that file, you will able to see that which line of code crashes the applicatin.


The yellow color indicates the line which crashes the application.


Thank you to all for reading. I will also make a video on it and upload it on youtube soon. πŸ™‚

Added the working of Mouse

Yesterday I have added the MouseView in the window. Today I tried to add its working.

But, when I test the working, its works but after clicking on the button one I got Debug window. After terminating the seetings changed as I change them before the dubugging window. And also, tried to add the working of the other preferencees which are common for mouse and the touchpad. Then, I start playing with the mouse view code. Like I have changed the values of the BPoints which makes the outline of the mouse view.

Now, I think its too late to go sleep. Tomorrow, I will find my mistake in the code ad try to add the proer functioning of the common preference. By, which I have done with my first widow. Then, I move on to the BCardView. And then, start working on the second window(KeyBoard/Keymap). πŸ™‚


One more problem, that I am trying to solve that why the BListView shrinks when I added the tab in the window?


Added the MouseView

Today I was trying to add the mouse tab and unable to add it. I kept on trying but, nothing was happening. Then, I ping to my mentor and ask him to help me where I was wrong in the code. Then, he helped me and told me how to use the debugger. With the help of him, I got success and added the mouse tab. πŸ™‚ Yippeeee!!!!!


First I tried to add only the mouse view in the tab. Then, I added the type of mouse option in it.


This is the final view. But, after adding the view, I recognize that I forgot to add the BMessage in the window. That’s why the mouse is not working. Now, I am trying to add the actions in it. πŸ™‚

Now, I am very happy because I was trying to do the above work from the last week. And today I have done with it. πŸ™‚


Trying to add the BCardView

Today in the morning I go to college, then I send the commit to Gerrit about what I have done yesterday. Then, my mentor reviewed it and give +1 review. Yeee!! πŸ™‚

Now, I am trying to add the BCardView so that the window changes when we click on the items in the menu.

Screenshot from 2019-06-14 11-20-24

I have added the mouse tab also, but I think there is a minor problem in my code or we can say a small error.Β  The code is compiled when I run the ‘jam’ command. But after using ‘scp’ command when I test the code. The ‘input'(the name of my application) is not running the window open when the warning.


First, I will check the error then move on to the BCardView. πŸ™‚

Thank you for reading πŸ™‚


Added the Touchpad tab in the main window

From 2 – 3 days, I was not updating my blogs because I was trying to add the touchpad view in the touchpad tab and BMessage. Today, I have added the touchpad preferences in the tab. But, while working with the BMessage I face one problem. The window didn’t change when I click on the items that are placed on the left side in BListView. Then, I sens the commit and talk with my mentor about that. He gives me the solution to overcome this problem. I will try it tomorrow. Today I start working at 11:00 am to 10:00 pm. Now, I just want to take the rest. Tomorrow I will try to use the BCardLayout and add the Mouse View in the mouse tab in the main window. πŸ™‚

First blog of 6-week training

My training starts on 3 June 2019. I stated to write the combined blog with category Outreachy and Training. From now on, I will write a separate blog. Let’s start training. In the morning we have class from 9:00am to 11:00 am with the first year civil students. I which @Sir teaches the students about the game of life and solid modelling(not yet) using python.

Then, we go to the TCC hall and start working. the first day was not awesome because I have no friend there. 😦

Then, sir asked me to give the seminar on your project. Today, I will give the presentation. When I was in 3rd class up to 10th class I sang the poems in front of the whole students in our school and got prizes also. I was never afraid at that time. But, now, I afraid from presentations 😦 don’t know why.

I have only three presentations in the college till now, from which the only one goes well. The remaining two was very bad. 😦

I practiced yesterday in front of the mirror. Today, I will again practice once then, go to college. Yesterday my elder brother motivates me to give more and more presentations in the college, it increases your confidence. Hope so, it will go well. πŸ™‚

Now, come to work. In the training what I have done till now.

  • I added the vertical box in the left side so that the name of the devices will take place.
  • And also made the UI of the preferences which are common in the mouse and the touchpad.
  • Understand how the items are placed in a good manner as I discussed in my previous blog.
  • Complete the UI of the common preferences, and Add the BScrollView in the main window.
  • Also started to make the UI of the mouse, in which only the mouse view is pending.
  • Now, trying to add the BMessage in it. So, when the user clicks on the Mouse/Touchpad the preference window will appear.

Now, I am going to sleep . Good Night. See you in the next blog. πŸ™‚


Blog at

Up ↑