Rebuild Debian packages from sources, actually rebuild Debian xosview from its source.

xosview (Debian binary package) has no information about my old laptop battery. The  battery status shows

This bug exists on Squeeze testing, but never be fixed now. See 
2010/02/04 - [computer/linux] - Debian Squeeze (testing) Installation Log (progress)

I am using FVWM as a window manager, thus the battery information is important for me and  I decide to fix this bug myself. Thus, I have to build my own package for Debian. 

  • root@coffee:#  apt-get install devscripts build-essential fakeroot 
    root@coffee:# apt-get build-dep xosview
    build-essential and fakeroot are already installed.
  • jhlee@coffee:$ mkdir ~/softwares/xosview_debian;
  • jhlee@coffee:$ cd ~/softwares/xosview_debian
  • apt-get source xosview
  • jhlee@coffee:$ cd xosview-1.8.3+debian/
    jhlee@coffee:$ debuild -us -uc

After debug xosview sources, then I can see the battery status of my old laptop, and submit a bugreport to Debian with the following  commands.
1) In the function bool BtryMeter::getacpi_or_sys_info, there is no /enery_* directories in "/sys/class/power_supply" of my old laptop. All I have is /curret_* directories. Thus, I have no battery information on xosview. I added /charge_full_design, /charge_full, and /charge_now after /energy_full_design, /energy_full, and /energy_now respectively in my local sources. After that, I can see a battery status on xosview. 2) struct battery is not initialized, thus when I tried to debug them by turning on XOSDEBUG, full capacity, remain capacity, rate, and alarm have the same junk numbers on them.
Here the bug fixed screen shots is 


Report a bug to debian   $ reportbug

posted by citadel