Today i was trying to compile a driver under Infra-Linux distro. Infra-Linux can be usefull for the ones who are encounter with the commercial restriction of Ubuntu trademark policy. My firm is producing laptops and one of the customers asked Linux installed laptops. The trademark policy of Ubuntu doesn’t allow one firm to desitribute products with Ubuntu installed although you will not charge for it. ıt is possible to distribute Ubuntu installed things but this requires some legal agreements. This may have some advantages i am sure. But for the ones who don’t want to deal with such thing there are other solutions. One of them is Infa-Linux. It is developed for to solve this restriction. Based on hardy and with some customizations. They didn’t change the Ubuntu distro a lot just some icon sets, splash screens and some more changes which will not effect using the Hardy repositories. After installing the distro indeed the Hardy repositories are enabled also. The thing is, installation is by default Russian
. For the ones who are looking for using Ubuntu at their commercial products but without restrictions, i can suggest them Infra-Linux.
I know there are other Ubuntu derivatives. You may want to share them also as a comment to this post.
The second thing is the compiling problem i encountered. “no rule to make target” error is a common error when we are using make command for source files. It may be because of some missing packages. The solution for that is installing module-assistant and then running “sudo m-a prepare” command from command line. I was still getting the same error. Then i found that it may be because of the space character at the directory names
. The source file is under a directory which has a space in its name at my system. So i moved it to another place. And voila. It worked.
And a little fun.
I have been watching Avatar for a while. I should say, i really liked it. I think there should be some Cartoon Meme thing also
I have already read the Fridge and saw the new OpenWeek will be held next week. I checked the timetable and found really interesting topics. Planning to attend the Netbook Remix, packaging, bazaar, Python and bug fixing related topics.
And a simple topic. If you have a problem about changing keyboard layout, like although you had changed it from GUI but is not taking effect, then try running oem-config with sudo.
You may be needing to test you computer battery life time and S3 mode like me. There is not a current tool to test S3 mode. Indeed making your computer sleep and waking at a spesific time is really easy from console. So i wrote a small script for the ones who wants to test the S3 mode of their computer. It is run like “./sleeper.sh somenumber”. It waits 90 seconds before entering the suspend mode then enters the suspend mode, make the computer wait at suspend mode 3 minutes and then power up.Change the DATA_DIR before running the script.
EDIT: You will need to add this line to your sudoer’s (run sudo visudo to edit the file) file:
yourusername ALL = NOPASSWD: /bin/bash
The other tool i want to mention is the Battery Life Toolkit. You may be wondering the total amount of time your battery will last if you use it for office applications or play game. So download bltk . To test, you may just download also the OOffice1.4 from the SourceForge site. After extracting and running “make” put the office package under “extern” directory and then run make install. When you run ./bltk -O you will see an OpenOfice simulation. When the battery finishes, it will end the simulation and you will be able to see the bltk report about the battery life time.
This is a general approach to enable the fn+somekey function work.
Lets take into consideration of fn+f1 that enables and disables my wireless adapter. I checked first the syslog output
$ tail -f /var/log/syslog
Use ’setkeycodes e02c <keycode>’ to make it known
Yours may be different that e02c. We should define a keycode for this scan code. e056 is the scancode that our kernel is detected. Open the file /usr/share/hotkey-setup/key-constants and take one the key constants that looks suitable to you. setkeycodes should be run with sudo so to try it is working
$ sudo setkeycodes e02c 218
$ xev
Press the key combination to see whether your X detects the code for the keys after defining the kernel keycodes. You should see the keycodes defined for your key combination. It will be different than 218. Take the x keycode and use it at Xmodmap file.
Create a file under /etc/X11/ with the name Xmodmap.
Just write the keycodes you want to assign something like:
keycode 243 = XF86Launch3
XF86Launch3 is taken from /usr/share/X11/XKeysymDB. Choose an unassigned keysymbol name. XF86Launch ones seem ok.
Then by using gconf-editor define a script to run. So first define XF86Launch3 at the /apps/metacity/global_keybindings/run_command_3 value part. Then define a script path for the value of /apps/metacity/keybinding_commands/command_3. You may create a script that will enable or disable wireless under /usr/loca/bin like
#!/bin/bash
dbus-send –system –type=method_call –dest=org.freedesktop.NetworkManager /org/freedesktop/NetworkManager org.freedesktop.NetworkManager.setWirelessEnabled boolean:true
so just write /usr/local/bin/somescritname.sh at the value part.
Go to terminal windows and write update-gconf-defaults to make your effects work. When you press the key combination the script will launch.
Eskiden iş tanımlarında geçen ibarelerin ne olduğunu pek anlamaz sanırım şu işi yapıyordur derdim. Bugün o kafamdaki muğlak ifadelerden birine bir açıklık getirdim. Bir saha mühendisi ile çalıştık bugün. Saha mühendisi nedir anlatayım. Saha mühendisi sahadaki mühendistir. Bu arkadaşlar mobil çalışabilen insanlar olup sorun çözerler. Ne güzel değil mi? Geziyorsun, sorunları çözüyorsun…
Bu meslek dalının zor tarafı sıkışık zaman dilimlerinde çalışmanızın gerekebileceğidir. Bir fabrikada bir üretim yapılıyor olsun ve üretilen malda kullanılan bir malzemede hata oluşsun. O malzemeyi de size başka firma sağlasın ve olayın esas malzemesi asında o malzeme olsun. İşte o noktada ondan anlayan birinin gelip olayı halletmesi beklenir. Bu noktada sevgili saha mühendisi gelir, gerekirse uyumaz, sabahlar sorunu çözer. Kimse üretim anında bir sorun ile karşılaşmak istemez. Bunun için test ve doğrulama süreci çalışır. Ama hayat bu ya sorun olabilir her zaman. Sorun olmasa da sevgili saha mühendisi gene de sahaya inip eğitim vermek, varsa kritik sorunları helletmekle mükelleftir. Sahalarda gezmeniz işin zevkli tarafı olmakla beraber sorunu kısa sürede halledecek birisi olmanız hissi strese sokabilir.
If you have a freeze problem during startup and the splash bar is not proceeding, edit the grub screen by pressing the “e” button on the keyboard and remove the “splash” and “quiet” parts from the kernel parameters to see what is going on during the kernel boot process. At my situation the problem was related with r8169 module. I had installed Ubuntu Hardy 64bit desktop edition to my laptop. When i checked the messages i realised that just after r8169 loading, boot proces was freezing. So by playing kernel parameters like adding pci=noacpi pci=nopci, somehow i managed to reach the desktop and blacklist the r8169 by adding the line “blacklist r8169″. Then recreated the initramfs by update-initramfs -u. At the next reboot the problem was removed.
Today i realised that there may be some other factors that is causing the problem on your system other than software itself. Let me explain a bit more. I have been working on a netbook project that will be on the market soon with Ubuntu Netbook Remix installed. I have been dealing with the wireless adapter that will be plugged on netbook for a while because although the driver is compiled and installed without errors, somehow it was not possible to use it for Internet connection. Indeed the situation is explained as a bug at Launchpad, and i was not the only one suffering from it. But the driver was working on the Ubuntu Hardy sytem without errors with the same adapter. I was thinking that the reason may be either from the driver itself, because there were some “No Rx description available” messages at the syslog output, or from the kernel itself, because the system was atom based and the kernel is an lpia one. There was also another main problem that the system was not able to come out from suspend mode when the adapter is plugged. I first thought it may be a driver issue and decided to disable the wireless adapter at the sleep scripts. So i checked the /usr/lib/pm-utils/sleep.d directory and added a 01wireless script that will disable and unload the module and if the operation is a resume, will reload the module and up the adapter. It didn’t make any sense at the situation. The next thing was checking the driver. There was also a rtl-wifi drivers on the net and the Realtek one seems a fork of this driver. So i started to check the code, check the dmesg and kern.log outputs to guess what can be the problomatic thing. Then i suddenly remember the suspend problem also happened even i haven’t installed the driver ! I just didn’t give enough importance to that at that time thinking to compile and run the driver as soon as possible. I plugged the adapter out and tried. Now that time it was possible to wake from sleep up. I asked my colleague, who is working on the hardware design, to check the PCB if there are any errors. And voila ! There was a voltage leak, protecting the adapter waking up from sleep. At the new layout this problem was recovered. No one had thought this may be a problem about suspend because at the tests with windows the system was waking up.
Then i changed the PCB with the new one and started to try the adapter on this system. This time the adapter was not able to detect any SSIDs at the wlan ! Same driver same adapter, a few minutes ago were able to scan the wireless network, but now it was not possible. I checked the syslog messages via tail -f and inserting the wireless module to the kernel. The message was strange because it was saying “the driver is not possible to scan SSIDs” ! Then i decided to think what had changed. BIOS was updated to a new release, there may be something wrong. I asked some information about the new release and the BIOS team said they didn’t see any problems with the wireless. Ok what else? Nothing indeed. I decided to be sure the adapter is working correct. There was already an open system which is being used by my BIOS developer colleague. I asked him whether he was able to scan the network via the wireless adapter. He hessitated and said yes, indeed he was not possible at first try, he started to scan after pluging the battery ! Ok my battery is not plugged and this may be a problem. I asked him to try. We plugged the battery, and guess what, there was no scan results. We decided to think what can be the problem. He then started to repeat what he did at that time. One of his actions was suspending the system. After waking up from suspend the adapter was scanning ! It happened on the win$ system. But i was surprised. There was something wrong with the BIOS. I haven’t tested the suspend thing at Ubuntu system yet. But today i learned that there may be hardware or BIOS related problems causing the problem at your system, especially if you are working on an open system that is being developed each time
I was reading the Fridge and checked the presentations at the Ubuntu Developer Week. I haven’t realised that the Developer Week will be held on next week so i checked the wiki also to learn the details about participations and rules. I found many interesting topics to follow during the 5 days. Python related topics, Ubuntu and Gnome tips, bug resolving techniques, intro to MOTU, PPA and BZR were the ones that sound exciting at my first glance.

