Wednesday, December 31, 2008

enabling 3d (drm) on an ati 3D Rage Pro AGP (8M memory)

to enable the kernel driver you need to follow this advice (driver is missing in debian and ubuntu )

mach64 driver for xorg is already packaged for newer distributions (> hardy or debian unstable)

also in my case i had to do an
$sudo depmod -a
and added mach64 in
/etc/modules

after that i can see that direct rendering is enabled
$ glxinfo | grep direct
direct rendering: Yes
and with glgears i get 140FPS
and now i can play openredalert on this old pc

Monday, December 22, 2008

Hello world from firebird php on windows

download windows setup for firebird
in my case i test 2.0.5 rc2
http://www.firebirdsql.org/download/prerelease/win32/Firebird-2.0.5.13206_0_win32_RC2.exe
Download flamerobin
in my case 0.9.1.x
ttp://ovh.dl.sourceforge.net/sourceforge/flamerobin/flamerobin-snapshot-0.9.1.1822-setup.exe
download php zip or setup version from php.net
http://ar.php.net/distributions/php-5.2.8-Win32.zip
in my case i have unziped on d:\php5.2.x
rename the default ini to php.ini
uncomment the line with interbase.dll

extension=php_interbase.dll
run cmd.exe
Start->Run
cmd.exe
d:
cd php5.2.x
run
or php -m to see if interbase module is enabled

next create an test script
like this one

and run it like
php test.php from command line
next you need to install apache or nginx and enable them on windows
read the install.txt from php dir

http://gist.github.com/39050

Saturday, December 20, 2008

enabling snow extra effect in compiz

Here is the fuzzy video

until i can youtube enable hd on my account

Friday, December 19, 2008

enabling snow extra effect in compiz

install Compiz Config Settings Manager

System -> Administration -> Synaptic Package Manager

and search ccsm (Compiz Config Settings Manager)

install simple-ccsm

and compiz-fusion-plugins-unsupported

Then goto System Preferences -> Compiz Config Settings Manager

Extras-> enable Snow

then press Win key and F3 (Special Key and F3)
you will see the snow
Tips for using nvidia 180.x on ubuntu intrepid with 2.6.28 vanilla kernel

Download the driver from nvidia

remove nvidia drivers from ubuntu repository
in my case i removed restricted drivers

sudo apt-get remove linux-restricted-modules-generic , also search whatever nvidia related
packages are already installed (see it in synaptic)

then run the install script

sh NVIDIA-Linux-x86-180.06-pkg1.run
after it is finished

add into /etc/X11/xorg.conf

Section "ServerFlags"
Option "ignoreABI" "True"
EndSection

Seems to be an issue with the new xorg just imported in jaunty alpha

Another thing is the old driver seems to remove xorg if i remove nvidia-glx-177

https://wiki.ubuntu.com/JauntyJackalope/TechnicalOverview
http://ubuntuforums.org/showthread.php?t=1011847&page=7


also i see there is an packaged 180 into ubuntu archive and that I will test later
with default ubuntu kernel

search for http://packages.ubuntu.com/source/jaunty/nvidia-graphics-drivers-180

here are the results on my board after all was finished
glxinfo | grep OpenGL
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce 6100 nForce 405/PCI/SSE2/3DNOW!
OpenGL version string: 2.1.2 NVIDIA 180.06
OpenGL shading language version string: 1.20 NVIDIA via Cg compiler
OpenGL extensions:
upgrade to my borkstation 64 @home

I went from an single core athlon 64 3000+ on am2 socket and asrock motherboard with nvidia 6100 gpu (on board) and 1G ddr2 (noname)
to an dual core athlon x2 5400+ with 1M cache level2 and an beautiful asus motherboard + kingstone 1G ddr2 @800 mhz


why i love this motherboard ? it comes with linux in bios + firefox and skype (just in case you drives are dead or you need to reinstall the thing) also the layout looks nice with solid state capacitors (they seems to last longer than the electrolytic ones)

The funny story about these caps is that my old motherboard and cpu will replace an barton 2500+ soltek nforce2 motherboard with caps blowed (leaking)

I replaced the motherboard and cpu , 
the bad: linux 2.6.22 doesn't boot with this new chipset (seem to be an s-ata  issue) so the tuner winfast tv200 global xp doesn't have sound with the 2.6.27 or 2.6.28 kernels even after i put the right firmware

the good : the second cpu really helps when there are cpu intensive tasks like bittorrent or linuxdcpp (flash)
the sound is really better than the old motherboard and i love it when i play music with xmms
the bad: video performance is not on pair with the old integrated gpu ! at least there are some issues with 
compiz , for now i disabled the advanced effects and all is ok but there are times where when scrolling in arrora the screen is not rendered si fast (painting lag)
I have an paralell port printer and there is only one socket on the motherboard , you need to buy the cables and the interface , So i was lucky to have an old computer (k6-2) and i took what i needed from there.
the very good: now i have accelerated kvm ! so it will be easier to play with it than with qemu + kqemu 
I have already remove kqemu so I will have an accelerated virt-manager
The Weird: I can hear the caps singing when i scroll the web pages , seems to be an interference issue with the motherboard ?

Wednesday, December 17, 2008

How to kill iexplorer gandhi way

What will happen if we refuse to optimize and test sites for ie6 -> ie8?

This is a call for all webdevelopers and all people who write code for the web
Refuse to optimize for ms ie, refuse to test , and tell the customers that this is an good decision
and you protect them ,also show them all the good things you can do in webkit and firefox (ogg , canvas, no activeX, speed)

http://www.theopensourcerer.com/2008/12/16/bbc-internet-explorer-security-alert/


this is an new revolution , i see web3.0 without flash and silvernowhere , without iexplorer6 ->8

I see in 3d version with vrml and open source from webservers trough webrowser and back
http://openvrml.org/index
or see these ideas
http://vrmlengine.sourceforge.net/

Monday, December 15, 2008

Net Provider 1.7 on Ubuntu Intrepid

I hope you have Firebird 2.1 already installed with examples :)

Install Monodevelop and Mono
In my case was something like this on Intrepid

$sudo apt-get install mono-gmcs mono-gac mono-utils monodevelop monodoc-browser monodevelop-nunit monodevelop-versioncontrol monodoc-gtk2.0-manual

You must download the .Net Provider 17.x sourcecode
I downloaded this 7zip archive http://downloads.sourceforge.net/firebird/FirebirdNETProvider-1.7.2-Src.7z

$ wget http://internap.dl.sourceforge.net/sourceforge/firebird/FirebirdNETProvider-1.7.2-Src.7z
$ 7z x FirebirdNETProvider-1.7.2-Src.7z
$ cd NETProvider/NETProvider_17/builds/linux/
$make

Create an new C# Console Project with the main looking like this
http://gist.github.com/35930
Then add the Firebird .net assembly to the test project
References-> Edit References -> .Net Assembly
browse to the
FirebirdSql.Data.Firebird.dll
in my case was in
~/work/mono/NETProvider/NETProvider_17/builds/linux/mono-linux$
then click Add button



Also Add the System Data reference



Then build the solution and if all ok

click run after the solution is build and the result should be like this

Wednesday, December 10, 2008

nginx spotted at sf.net

seems that sf.net uses now nginx web server


Wolfenstein Qt. Qt widgets in a 3D environment

my new 3d desktop

Thursday, December 04, 2008

Success with arora 0.4+qt4.5 and flash 10

Here is my script for installing arora 0.4 + qt4.5 from git . Flash 10 for 64bits is already installed by hand.

If you get an error there is an issue with BR translation that will be solved soon



Wednesday, December 03, 2008

Compiling 2.6.28 rc9 Vanilla on Hardy - Ubuntu/Debian Way

This article is about compiling a Kernel on Ubuntu systems. It describes how to build a custom kernel using the latest unmodified kernel sources from www.kernel.org (Vanilla Kernel) so that you are independent from the kernels supplied by your distribution.

Rc kernel patches are generated from the base stable release.

For example: to create the 2.6.28-rc9 kernel, you must:

  • download 2.6.27 (not 2.6.28.x)
  • and then apply the 2.6.28-rc9 patch.

Yes, you want 2.6.27 not 2.6.28. Remember, that's an -rc kernel, as in, 2.6.28 doesn't exist yet. :)

seems tha the kernel you want is prepatch , choose B from this area "The latest prepatch for the stable Linux kernel tree is" also choose 2.6.28-rc9 the same area.

$ cd /usr/src

$ sudo su

# wget --continue http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.27.tar.bz2

# tar jxvf linux-2.6.27.tar.bz2

# wget http://www.kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.28-rc9.bz2

# bunzip2 patch-2.6.28-rc9.bz2

# cd linux-2.6.27

# patch -p1 < ../patch-2.6.28-rc9

#cd ..
#mv linux-2.6.27 linux-2.6.28-rc9

# cd linux-2.6.28-rc9/

# cp /boot/config-`uname -r` ./.config

# make menuconfig

Enable Preemptition Model for Low Latency (near realtime)

Processor Type and Features> Preemptiton Model (Preemtible Kernel(Low-Latency Desktop))

You must disable xen support

Processor Type and Features -> Paravirtualized Guest Support -> Xen

support otherwise you will get this error

$ sudo make-kpkg clean
$ sudo fakeroot make-kpkg --initrd --append-to-version=-vanillaice kernel_image kernel_headers
$ cd ..

dpkg -i linux-image-2.7.28-* in my case

$shutdown -r

now you can install the headers too from /usr/src/linux-headers-2.6.28*

If you want to build it Vanilla way without debian tools then consult this page http://kernelnewbies.org/KernelBuild

Compiling 2.6.27.x Vanilla Final on Hardy/Intrepid - Ubuntu/Debian way

This article is about compiling a kernel on Ubuntu systems. It describes how to build a custom kernel using the latest unmodified kernel sources from www.kernel.org (vanilla kernel) so that you are independent from the kernels supplied by your distribution.

$ cd /usr/src
$ sudo wget --continue http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.27.9.tar.bz2
$ sudo tar jxvf linux-2.6.27.9.tar.bz2
$ cd linux-2.6.27.9

$ sudo cp /boot/config-`uname -r` ./.config
$ sudo make menuconfig

Disable xen
Processor Type and Features -> Paravirtualized Guest Support -> Xen

support otherwise you will get this error

$ sudo make-kpkg clean
$ sudo fakeroot make-kpkg --initrd --append-to-version=-vanillaice kernel_image kernel_headers
$ cd ..
$sudo dpkg -i linux-image-2.6.27.x-*
$sudo shutdown -r now

you can install the headers too from /usr/src/linux-headers-2.6.27.x-*
in my case i can show you how the packages are named
ls *.deb

Thursday, November 27, 2008

Ubuntu 8.10 Release Party and Presentations in Targu-Mures

The event was held at "teatru74" theater on 8 November 17:00

Here is the text in Hungarian language
http://hup.hu/node/62829
Here is the text in Romanian language , it was published on
http://cultura.inmures.ro/
http://cultura.inmures.ro/typo3temp/pics/bdb75f2db6.jpg
http://ubuntu.ro/stiri/2008.10.31/ReleaseParty-TgMures

other blogs related
http://www.mylro.org/content/view/1392/1/
http://www.softwareliber.ro/2008/11/04/prezentare-ubuntu-la-targu-mures/

Here is the gallery for the event
http://gallery.razius.org/main.php?g2_itemId=13
http://picasaweb.google.com/mapopa/UbuntuIntrepid810ReleasePartyTarguMures#

Adi Roiban talked about launchpad and the romanian team role,also what should be done in the future (translation, bug fixing),
Jani Monoses talked about http://kiwilinux.org and how it was created, OpenOffice3 will be included in December release.
Marius Popa talked about the new features in ubuntu with live demo about them 3g network connection to local providers,new compiz sphere effect, openoffice3.0 from ppa,new gnome empathy,nautilus tabs,new 2.7.27 kernel with improoved wireless connection with real example everex cloudbook support .
Demoed the bigbuckbunny moviemade with ubuntu also theYo Frankie! game , also a new game made by szaby.
New local lug created after that with many more regular meetings where we discuss about our favorite distro.
An local tv station was there at the event (Realitatea TV) and we did an interview for local station Radio Mures.
Next time we wil invite all the people from the bar (some people were affraid the get upstairs in the conference theatre room)

Here is my presentation



a here is the intro but users were to advanced :)

nginx passes 3Million hosts mark on the November 2008 Web Server Survay

compare it with July one

slow byt steady the graphs for apache and iis will not look good

the small webservers will kill the phat ones




Check the other category
http://news.netcraft.com/archives/2008/11/19/november_2008_web_server_survey.html

Wednesday, November 26, 2008

kexec-tools added a few interesting in grub lines
(the ones with crashkernel)
http://fedoraproject.org/wiki/FC6KdumpKexecHowTo
so now i removed that with
$sudo apt-get remove kexec-tools
i did an
$sudo update-grub

Thursday, November 20, 2008

VIA is actively collaborating with the OpenChrome development team on their Open Source graphics driver - initially assisting with multi-head support and RandR function." The OpenChrome driver does even support 3D

OpenChrome Gets A TODO List, Clarifies Work
I like the new gmail terminal :)





at the beginning i thought it was an bug in the arora browser rendering
but no the default theme is now enabled

Tuesday, November 18, 2008

cache-control / deflate optimizations in apache

these lines can be used in .htaccess too

now we get better results with firebug/yslow (B performance grade is now , before was an F grade )

before we had 700k of html code transfered over the wire
now is ~40K for example


#Enable Cache control http://httpd.apache.org/docs/2.2/mod/mod_expires.html
ExpiresActive On
ExpiresByType image/jpeg "access plus 1 month"
ExpiresByType image/gif "access plus 1 month"
#ExpiresByType text/html "access plus 2 days"
ExpiresByType text/css "access plus 1 year"
ExpiresByType application/x-javascript "access plus 1 year"
# compress all text & html http://httpd.apache.org/docs/2.2/mod/mod_deflate.html
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/x-javascript text/css
# Insert filter
SetOutputFilter DEFLATE

# Don't compress images
SetEnvIfNoCase Request_URI \
\.(?:gif|jpe?g|png)$ no-gzip dont-vary 


ps: a good idea is to disable the parameters after css !
for example we had style.css?=200
so it reloaded all background images everytime even if we specified expire time in apache

Installing phpbb3 on firebird and ubuntu server

Installing phpbb3 on firebird and ubuntu server


1.create a database with flamerobin
/var/lib/firebird/2.5/data/phpbb3.fdb
or with isql-fb

SQL> create database "/var/lib/firebird/2.5/data/phpbb3.fdb" pagesize 8192 user 'SYSDBA' password 'SYSDBAPASSWORD';
SQL> quit
CON>; 



you need to choose the page size 8192

2.then download phpbb3

wget http://www.phpbb.com/files/release/phpBB-3.0.11.tar.bz2

3.unzip-ip in your www dir /var/www

tar -jxf phpBB-3.0.11.tar.bz2

chown -R www-data.www-data phpBB3

4.run the installer from http://localhost/phpBB3
pointing to the new created database

Database name :/var/lib/firebird/2.5/data/phpbb3.fdb
Database user :somedba
Database password :*********






6.After all is configured you must delete de install folder inside phpbb3 directory

rm -rf install

Friday, November 14, 2008

my to do maintain /etc on all servers with git/hg



Maintain /etc with mercurial on Debian
Here is another one with git this time

here is article copy pasted (site seems to be down)

Anyway, here is how you can track your /etc directory with git, and have apt update it
automatically each time a package is installed.




The following steps require root access:




  • install git



    apt-get install git-core

  • initialize /etc to be a git repo



    cd /etc
    git init-db
    chmod og-rwx .git

  • ignore a few files



    cat > .gitignore
    *~
    *.dpkg-new
    *.dpkg-old

  • commit the current state



    git add .
    git commit -a -m"initial import"

  • install a snapshot script for apt to call



    cat > apt/git-snapshot-script
    #!/bin/bash
    set -e
    caller=$(ps axww | grep "^ *$$" -B3 | grep " apt-get " | head -n1 | sed 's/^.*\(apt-get .*\)/\1/' )
    git-add .
    git-commit -a -m"snapshot after: $caller"


    ... make it executable ...



    chmod +x apt/git-snapshot-script

  • configure apt to track changes



    cat >> /etc/apt/apt.conf
    DPkg {
    Post-Invoke {"cd /etc ; ./apt/git-snapshot-script";};
    }

  • track these two files



    git add .
    git commit -a -m"apt will track /etc automagically using git"



... and you're done.



Note that the chmod og-rwx /etc/.git step is very important. Your /etc/.git directory should
only be accessible to root. If not, it's as good as giving everyone access to your /etc/shadow
and other secrets that hide in /etc. Should you clone this repository to another box, you
have to make sure that the same precautions are taken.



Now when you install a package, it will be tracked in the git repository.



    # apt-get install mercurial
...
Created commit daa7de7264b65cd073a1ef0f75ba50aa488d5af2
3 files changed, 409 insertions(+), 0 deletions(-)
create mode 100644 bash_completion.d/mercurial
create mode 100644 mercurial/hgrc
create mode 100644 mercurial/hgrc.d/hgext.rc


You can see what changed...



    # git whatchanged -1
commit daa7de7264b65cd073a1ef0f75ba50aa488d5af2
Author: Bart Trojanowski <bart@jukie.net>
Date: Mon Mar 12 16:09:18 2007 -0400

snapshot after: apt-get install mercurial

:000000 100644 0000000... a7f4740... A bash_completion.d/mercurial
:000000 100644 0000000... dfc3400... A mercurial/hgrc
:000000 100644 0000000... 8f2d526... A mercurial/hgrc.d/hgext.rc





And lastly, it should be noted that debian now has an etckeeper that trackes /etc in git.





ps: i started with /etc/httpd and works well with git

Thursday, November 13, 2008

Installing jaws php cms on ubuntu and firebird backend

Installing jaws-cms on ubuntu and firebird backend

$ cd /var/www
$ wget http://bits.jaws-project.com/releases/jaws-0.8.6/jaws-complete-0.8.6.tar.gz
$ tar -zxvf jaws-complete-0.8.6.tar.gz
$ mv html jaws

sudo chmod -R g+rw jaws
sudo chown -R www-data.www-data jaws

create an new database with flamerobin /var/lib/firebird/2.1/data/jaws.fdb

crate a symlink , seems that if you put only jaws.fdb in the database field
then it needs to be located in jaws/data

$ cd /var/www/jaws/data
$ ln -s /var/lib/firebird/2.1/data/jaws.fdb

start the installer http://localhost/jaws/install/
fill in the username for database and password
at database put jaws.fdb

Some screen shots o took during install and configuration

Wednesday, November 12, 2008

What if the neo must learn Ubuntu ?

Watch the Jackie Chan style scene at the end of the movie ...

http://www.collegehumor.com/video:1886349

Thursday, November 06, 2008

PHP ships with Mac OS X by default 

I spoted this over this page 
http://www.phoronix-test-suite.com/?k=downloads

it's about php-cli
so php programmers could do scripts easier
than writing them in bash/perl/php or python

Here are some examples of scripts that i have created to automate
installation on new ubuntu server nodes

http://github.com/mariuz/firebird_scripts/tree/master

I wish php was there by default because almost all the scripts needs
to install php-cli first

I posted an new idea to the brainstorm area

http://brainstorm.ubuntu.com/idea/15590/

 

Wednesday, November 05, 2008

Chris Rock won the elections from USA

I voted for him from Romania

http://uk.youtube.com/watch?v=-tyK9Pgtznk

http://uk.youtube.com/watch?v=3erEqfFxTlE

and the only song that cames to my mind dedicated to his oponents is

Nigger from Clawfinger
http://uk.youtube.com/watch?v=D6zyOGqxxs4

Saturday, November 01, 2008

Enabling frequency scaling on my everex cloudbook
after the upgrade to ubuntu intrepid ibex (kernel 2.6.27.x) i have good sound and the syste is moving faster
maybe is because of the new io sheduler 
but the frequency scaling is not enabled (default cpu speed is 600mhz)
so i have compile it 
download the latest stable kernel from kernel.org

in my case  
$wget http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.27.4.tar.bz2
$tar -jxvf linux-2.6.27.4.tar.bz2
$cd /usr/src/linux-2.6.27.3/arch/x86/kernel/cpu/
$sudo mv cpufreq /opt/build/
$ cd /opt/build/cpufreq

$vi Makefile
default:
$(MAKE) -C /lib/modules/`uname -r`/build M=`pwd` modules
clean:
rm -rf *.o .*.cmd *.ko *.mod.c .tmp_versions Module.symvers
obj-m += e_powersaver.o

Now you need to make it 
$make
$cp e_powersaver.ko /lib/modules/2.6.27-7-generic/kernel/drivers/cpufreq/
$ sudo depmod -ae
$ sudo modprobe e_powersaver
$ cpufreq-set -g performance

now my cpu is idling at 1200 mhz 
cat /proc/cpuinfo
processor : 0
vendor_id : CentaurHauls
cpu family : 6
model : 13
model name : VIA C7-M Processor 1200MHz
stepping : 0
cpu MHz : 1199.952
cache size : 128 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge cmov pat clflush acpi mmx fxsr sse sse2 tm nx up pni est tm2 xtpr rng rng_en ace ace_en ace2 ace2_en phe phe_en pmm pmm_en
bogomips : 2399.92
clflush size : 64
power management:

a good idea is to put the module at startup too 
in 
/etc/modules
add 
e_powersaver

another good command line 
cpufreq-info

analyzing CPU 0:
  driver: e_powersaver
  CPUs which need to switch frequency at the same time: 0
  hardware limits: 400 MHz - 1.20 GHz
  available frequency steps: 400 MHz, 500 MHz, 600 MHz, 700 MHz, 800 MHz, 900 MHz, 1000 MHz, 1.10 GHz, 1.20 GHz
  available cpufreq governors: ondemand, userspace, conservative, powersave, performance
  current policy: frequency should be within 400 MHz and 1.20 GHz.
                  The governor "performance" may decide which speed to use
                  within this range.
  current CPU frequency is 1.20 GHz.

or if you need an low noise system 
$ cpufreq-set -g ondemand
This post is about an interview with Ales Katona (also known as Almindor) - A contributor to FPC, Lazarus and have few of his own open source projects as well such as Lentilwars and lnet. I have asked Ales to have an interview with me regarding the open source projects and some information about himself, and I hope you all find it interesting as I have.

Friday, October 31, 2008

Tutorial of the Week: How to Install OpenOffice.org 3.0 on Ubuntu 8.10


I guess everyone already knows that OpenOffice.org 3.0.0 will not be available  for the Intrepid Ibex (Ubuntu 8.10), because the developers did not wanted to include it could create new bugs
and delayed the release 

 What do I need to get started? Ubuntu 8.10 (32-bit or 64-bit)...

 
 Read the full tutorial here.

I like it to do it from the command line 

sudo gedit /etc/apt/sources.list.d/openoffice.list
add
deb http://ppa.launchpad.net/openoffice-pkgs/ubuntu intrepid main
sudo apt-get update
sudo apt-get dist-upgrade






Vote for a beautiful, usable Ubuntu

If you'd like to see this theme https://wiki.ubuntu.com/Artwork/Incoming/Intrepid/Wall-light instead of the current Intrepid theme, please let them know!

read more | digg story

How to make money with free software...

An awesome story of designing the new 5 euro commemorative coin with the theme 'Netherlands and Architecture', using free software.

read more | digg story

Thursday, October 23, 2008

Why pascal ?

it’s all the power of the simplicity (oo pascal follows the kiss philosophy and in a way is better than c++ for example)

Most of the time you have to rewire and damage your brain for c++

but pascal is focused to be an learning tool and it’s easier for the brain it seems close to pseudo code and the way brain works

Just go in an computer science class and ask students what they like:c++ or pascal
I’m not talking about the genius but the average guy
The same is with php or java script it’s easier to catch and learn them than java or c++

Check the tiobe index and you will see how the scripting languages take over the work

http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

Wednesday, October 22, 2008

Frames in Lazarus

If you miss the Delphi frames now you can use them in Lazarus too if you are doing Delphi/pascal style programming

http://wiki.lazarus.freepascal.org/IDE_Development#Working_3

Tuesday, October 21, 2008

speeding up kernel/firebird compile on my home machines

cpu on laptop is a little bit slower (c7@1.2) so i started to use the cpu on the desktop too (athlon3000+) with the help of distcc

http://www.debian-administration.org/articles/112

http://code.google.com/p/distcc/

Here is the debian way to build the kernel with distcc
http://www.docunext.com/blog/2007/10/11/more-distcc-and-ccache-notes/

Also is good for building mozilla or other c++ programs (firebird)

http://www.docunext.com/blog/2008/02/06/swiftweasel-on-the-via-c7/

The Mono team has released their better version so far, including a number of huge improvements such us .NET 2.0 compatibility (yes, generics and everything), the initial Moonlight (Silverlight for Linux) and many more.

But the best is yet to come: they already have LINQ and lambda expressions (.NET 3.5) almost there, ParallelFX (the multi-core .NET library) and totally new stuff.

When people talk about Mono, they normally focus on its compatibility with the .NET platform and how good it is for a number of companies tied to the Microsoft stack. But let me look at it from a different perspective.

[I like their new C#shell, and the fact that it works ok with firebird 2.1 on all platforms:macosx,linux,windows ]

http://dobbscodetalk.com/index.php?option=com_myblog&show=Its-not-monkey-business.html&Itemid=29

I saw Delphi Developers Guide by Steve Teixeira and , Xavier Pacheco in an Book shop

and it is translated to Romanian language
I had tears in my eyes because I remember the days when I learned the Delphi/OOPascal/Interbase(Firebird) and all the examples are still fresh in my memory

This book I took it everywhere at school/at work /at home

Of course there are many other good books but today for me the free pascal docs are enough and the source

ps: also from the firebird conference I got the Marcu Cantu's book : Essential Pascal with his signature on it :)

Delphi/Free Pascal could be 2008 Language of the Year

It seems that Delphi Programming is an popular thing
and we must push it more (Delphi + Firebird)

http://www.delphi.org/2008/10/delphi-language-of-the-year-2008/
check the tiobe

http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

I wonder when i will start an kernel module in pascal :)
imagine some kernel components on the components panel

Monday, October 20, 2008

Artport an good and beautiful idea

There are not many sites in Romania where you can buy art and combines the gallery idea with the bazar one

I like the religious paintings but i will look soon on the other items

http://www.artport.ro/index.php?mcategory=Categories&pn=search_res&category_id=17

Sunday, October 19, 2008

64M of memory used for kernel crashes !

[ 0.000000] Reserving 64MB of memory at 16MB for crashkernel (System RAM: 441MB)


so you need to remove that from /boot/grub/menu.lst


crashkernel=384M-2G:64M@16M,2G-:128M@16M

Saturday, October 18, 2008

i wish the changes to ubuntu repositories to be done faster
and i think the core distro can stay unchanged a little bit longer
but some apps should and must move faster than the rest of the distro
like:openoffice , firebird 2.1, lazarus , fpc

because stable releases are already there and the intrepid is already dated at the release

also i think the gentoo ideea with continuous upgrade to be good
at least for me is better to have latest stable applications and kernel

also backports in ubuntu is completely broken so is better to use the next release or debian experimental to be up to date with all apps
building process for free pascal compiler

http://www.stack.nl/~marcov/buildfaq.pdf

it's amazing how much work is done behind compiling your applications
Also this is an amazing team that progressed from an simple compiler
to an truly cross platform one (arm/x86,windows,x64,macosx,linux) and is really fast.
Howto use Lazarus 0.9.26 in Ubuntu Hardy/Intrepid
You can install the new version and you don't need to wait another 6 months to be included
in next Ubuntu release
if you have an "old" stable lazarus 0.9.24
you can install/upgrade to latest stable by using
the official lazarus repository

In my case i created an getlazarus bash script with this content


#!/bin/sh
gpg --keyserver hkp://pgp.mit.edu:11371 --recv-keys 6A11800F
gpg --export 6A11800F | apt-key add -
echo "deb http://www.hu.freepascal.org/lazarus/ lazarus-stable universe" \
>/etc/apt/sources.list.d/lazarus.list
apt-get update
apt-get install lazarus


then
$chmod +x getlazarus
$sudo ./getlazarus

also you must be sure to have te fpc source so here is how i usually install

sudo apt-get install fp-units-db fp-units-gfx fp-units-gnome1 fp-units-misc fp-units-net fpc-source fp-compiler fp-docs fp-utils lazarus



then start it with
$lazarus-ide in console or from the menu
Applications -> Programming -> Lazarus




To update all free pascal related packages from the new repository (I had old fpc2.2.0 and lazarus from intrepid repository)

$sudo apt-get dist-upgrade

In my case I got this message

The following packages will be upgraded:
fp-compiler fp-docs fp-ide fp-units-base fp-units-db fp-units-fcl
fp-units-fv fp-units-gfx fp-units-gnome1 fp-units-gtk fp-units-gtk2
fp-units-misc fp-units-multimedia fp-units-net fp-units-rtl fp-utils fpc
fpc-source lazarus-doc lazarus-ide lazarus-src



What is next ? Try to use it with firebird

And seems that works without problems.

Saturday, October 11, 2008

My quote for the Firebird conference Ending

"In the early days of my career, I wondered why software engineers and their managers occasionally traveled when we had email, instant messaging, wikis and video conferencing. Gradually, I've figured out that face-to-face meetings facilitate trust, collaboration and unity more effectively.

For me, the success of this conference re-emphasizes the value of face-to-face communication."

http://lwn.net/Articles/300306/

I can repeat the same for the conference , why I went there and when i could use emails/gtalk/skype ? Maybe is another sense that we have developed and you can't trust people if you don't see them , also the communication is better when you are not in the office . My problem now is going back to normal stuff or
routine doing stuff that usually must be done it's like going from heaven to earth . Going back to daily work . Now i understand better what is the future of firebird and maybe i understand better what core developers are thinking and what is on their roadmap and maybe i can help with that.
Installing flash plugin on debian
Here is an nice howto

Testing Firebird 2.1 on Debian experimental

Testing Firebird 2.1 on Debian experimental

Update: There is now Firebird 2.5 final in experimental
also if you want 2.1 is already in testing and unstable (no need for experimental repository)

Here is my sources.list
cat /etc/apt/sources.list

deb http://ftp.us.debian.org/debian/ unstable main
deb-src http://ftp.us.debian.org/debian/ unstable main

Add:

deb http://ftp.us.debian.org/debian/ experimental main
deb-src http://ftp.us.debian.org/debian/ experimental main

Then:
# apt-get update -t experimental
# apt-get install -t experimental firebird2.1-classic
or install super-server
# apt-get install -t experimental firebird2.1-classic
Install examples and flamerobin
apt-get install -t experimental firebird2.1-examples flamerobin

follow the examples extaction procedure from this page [Scrooll down and ignore the apt sources.list lines]
https://help.ubuntu.com/community/Firebird2.1


With firebird2.1-classic i have this error when i try to connect to employee.fdb

Engine Code : 335544653
Engine Message :
cannot attach to password database


This is a caveat with classic server and not a bug in Flamerobin.

This is the recipe to reproduce it:
* install Debian classic-server package
* (before anything else) connect to any database using a direct path
to the database, not server:/path/to/db using any program linked
with libfbembed, for example the firebird-supplied tools (sql,
gfix etc)
- this starts the lock manager as the currently running user
(let's name it 'X', which most probably is *not* 'firebird')
* try to connect to any database either using the server:/path/to/db
connection string, or using an utility that is linked with
libfbclient (which preepends localhost: on raw connection
strings), for example flamerobin
- you can't as that utility would connect via the fb_inet_server,
which runs as user 'firebird' by default and cannot open the
lock files created by the user 'X'.

To avoid this

* always use localhost: in front of any paths. this way the lock
files and the shared memory segment will be owned by the
'firebird' user.


Testing debian installer on windows box

I had at Lechinta an wubi installer but the cpu is too slow for ntfs-ng
so i decided to install debian/ubuntu on an native partition

So i installed the debian on windows and after it finished it rebooted and started
the classic debian installer (graphic mode)

I installed the base system then i dist-upgraded to lenny (testing)
and then to sid(unstable)

Just replace etch with testing in /etc/apt/sources.list
#apt-get update ; apt-get dist-upgrade
#reboot
Just replace testing with unstable in /etc/apt/sources.list
#apt-get update ; apt-get dist-upgrade
#reboot




so now i have an modern distro
The space is small on this p3 machine @500Mhz so i had to install an lightweight window manager
so i installed xfce4 from command line

#apt-get install xfce4 xorg gdm
#/etc/init.d/gdm start

Then i needed an browser so i typed
#sudo apt-get install iceweasel

That is firefox3.0.x under debian , they didn't accepted mozilla firefox restrictions and EULA so they decided to name it that way


Next install synaptic and it should give you an starting point to installing packages
#sudo apt-get install synaptic

Here is how to install flash player under debian

Friday, October 10, 2008

Here is how the libdbi example should look for firebird

I have installed libdbi and libdbi-driver for firebird
http://mapopa.blogspot.com/2008/10/installing-and-libdbi-for-c-and-libdbi.html

Here is the example i try to test for firebird

http://libdbi.sourceforge.net/docs/programmers-guide/quickstart-code.html



gedit employee.c

#include
#include

int main() {
dbi_conn conn;
dbi_result result;

double threshold = 4.333333;
unsigned int idnumber;
const char *fullname;

dbi_initialize(NULL);
conn = dbi_conn_new("firebird");

dbi_conn_set_option(conn, "host", "localhost");
dbi_conn_set_option(conn, "username", "SYSDBA");
dbi_conn_set_option(conn, "password", "masterkey");
dbi_conn_set_option(conn, "dbname",
"/var/lib/firebird/2.1/data/
employee.fdb");
dbi_conn_set_option(conn, "encoding", "UTF-8");

if (dbi_conn_connect(conn) < 0) {
printf("Could not connect. Please check the option settings\n");
}
else {
result = dbi_conn_queryf(conn, "SELECT EMP_NO, FIRST_NAME FROM EMPLOYEE");

if (result) {
while (dbi_result_next_row(result)) {
idnumber = dbi_result_get_uint(result, "ENP_NO");
fullname = dbi_result_get_string(result, "FIRST_NAME");
printf("%i. %s\n", idnumber, fullname);
}
dbi_result_free(result);
}
dbi_conn_close(conn);
}

dbi_shutdown();

return 0;
}

gcc -lm -ldl -ldbi employee.c

for the moment it crashes
Installing and libdbi layer for c api and libdbi-driver for firebird

I wish firebird was more simpler to use similar to dbi api for example that i use in perl world

You can see more about libdbi C api in the bacula manual


The according to libdbi (http://libdbi.sourceforge.net/) project:
libdbi implements a database-independent abstraction layer in C,
similar to the DBI/DBD layer in Perl. Writing one generic set of code,
programmers can leverage the power of multiple databases and multiple
simultaneous database connections by using this framework.

Here is how the Firebird libdbi driver is implemented and you can see how the layer is made over the standard
firebird api

sudo apt-get install libostyle-dev libfbembed2.1 firebird2.1-dev

wget http://heanet.dl.sourceforge.net/sourceforge/libdbi/libdbi-0.8.3.tar.gz
tar -zxvf libdbi-0.8.3.tar.gz
cd libdbi-0.8.3/
./configure --prefix=/usr
make
sudo make install
cd ..


wget http://heanet.dl.sourceforge.net/sourceforge/libdbi-drivers/libdbi-drivers-0.8.3-1.tar.gz
tar -zxvf libdbi-drivers-0.8.3-1.tar.gz
cd libdbi-drivers-0.8.3-1/
./configure --with-firebird --with-firebird-dir=/usr --prefix=/usr --disable-docs


make
sudo make install
make check
libdbi-drivers test program: $Id: test_dbi.c,v 1.46 2008/02/06 16:22:44 mhoenicka Exp $
Library version: libdbi v0.8.3

libdbi driver directory? [/usr/lib/dbd]
1 drivers available: firebird
test which driver? firebird

database administrator name? SYSDBA

database administrator password? masterkey
database directory? [.] /var/lib/firebird/2.1/data

database hostname? [(blank for local socket if possible)]
database name? [libdbitest]

Driver information:
-------------------
Name: firebird
Filename: /usr/lib/dbd/libdbdfirebird.so
Desc: Firebird/Interbase database support
Maintainer: Christian M. Stamgren
URL: http://libdbi-drivers.sourceforge.net
Version: dbd_firebird v0.8.3-1
Compiled: Oct 10 2008
Use CONNECT or CREATE DATABASE to specify a database
CREATE DATABASE '/var/lib/firebird/2.1/data/libdbitest';

...

Thursday, October 09, 2008

Compiling 2.6.27 RC9 Vanilla on Hardy - Ubuntu/Debian Way

This article is about compiling a Kernel on Ubuntu systems. It describes how to build a custom kernel using the latest unmodified kernel sources from www.kernel.org (Vanilla Kernel) so that you are independent from the kernels supplied by your distribution.

-rc kernel patches are generated from the base stable release.

For example: to create the 2.6.27-rc9 kernel, you must:

  • download 2.6.26 (not 2.6.26.x)
  • and then apply the 2.6.27-rc9 patch.

Yes, you want 2.6.26 not 2.6.27. Remember, that's an -rc kernel, as in, 2.6.27 doesn't exist yet. :)



seems tha the kernel you want is prepatch , choose B from this area "The latest prepatch for the stable Linux kernel tree is" also choose 2.6.27-rc9 the same area.

cd /usr/src
wget --continue http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.26.tar.bz2
tar jxvf linux-2.6.26.tar.bz2
get the patch
wget http://kernel.org/pub/linux/kernel/v2.6/testing/patch-2.6.27-rc9.bz2
bunzip2 patch-2.6.27-rc9.bz2
cd linux-2.6.26
patch -p1 < ../patch-2.6.27-rc9
cd ..
mv linux-2.6.26 linux-2.6.27-rc9
cd linux-2.6.27-rc9/
cp /boot/config-`uname -r` ./.config
make menuconfig or if you want to compile old config without questions make oldconfig
make-kpkg clean
fakeroot make-kpkg --initrd --append-to-version=-custom kernel_image kernel_headers cd ..
I had to disable the nvidia postinstall scripts

chmod -x /etc/kernel/postinst.d/nvidia-common

dpkg -i linux-image-2.7.27-* in my case
sudo dpkg -i linux-image-2.6.27-rc9-custom_2.6.27-rc9-custom-10.00.Custom_amd64.deb shutdown -r
now you can install the headers too from /usr/src/linux-headers-2.6.27*

If you want to build it Vanilla way without debian tools then consult this page http://kernelnewbies.org/KernelBuild

Miguel de Icaza Interview: Mono 2.0

GNOME founder Miguel de Icaza discusses Mono's use as an iPhone and Wii gaming engine, and "uber-awesome" features like "C## eval," in this detailed interview with DesktopLinux.com.

read more | digg story
dyndns setup on ubuntu
I have setup the dyndns this way

http://mexpolk.wordpress.com/2008/01/29/ubuntu-gutsy-dyndns-client-setup/

now my home computer can be visible to the outside world :)

http://matzy.ath.cx
compiling 2.6.26 vanilla on hardy - ubuntu way

This article is about compiling a kernel on Ubuntu systems. It describes how to build a custom kernel using the latest unmodified kernel sources from www.kernel.org (vanilla kernel) so that you are independent from the kernels supplied by your distribution.

cd /usr/src
wget --continue http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.26.6.tar.bz2
tar jxvf linux-2.6.26.6.tar.bz2
ln -s linux-2.6.26.6 linux
cd linux
cp /boot/config-`uname -r` ./.config
make menuconfig
make-kpkg clean
fakeroot make-kpkg --initrd --append-to-version=-custom kernel_image kernel_headers
cd ..
dpkg -i linux-image-2.6.26.6-*
shutdown -r now

you can install the headers too from /usr/src/linux-headers-2.6.26.6-*
in my case i can show you how the packages are named
ls *.deb
linux-headers-2.6.26.6-custom_2.6.26.6-custom-10.00.Custom_amd64.deb
linux-image-2.6.26.6-custom_2.6.26.6-custom-10.00.Custom_amd64.deb

Wednesday, October 08, 2008

getting/building php6 from git

time sudo git clone git://chinstrap.eu/srv/git/php/php-tsrm-ze2.git
Initialized empty Git repository in /opt/build/php-tsrm-ze2/.git/
remote: Counting objects: 378 time sudo git clone git://chinstrap.eu/srv/git/php/php-tsrm-ze2.git
Initialized empty Git repository in /opt/build/php-tsrm-ze2/.git/
remote: Counting objects: 378786, done.
remote: Compressing objects: 100% (75006/75006), done.
remote: Total 378786 (delta 302801), reused 378786 (delta 302801)
Receiving objects: 100% (378786/378786), 128.79 MiB | 1651 KiB/s, done.
Resolving deltas: 100% (302801/302801), done.
Checking out files: 100% (11007/11007), done.

real 4m35.256s
user 2m41.826s
sys 0m7.860s
786, done.
remote: Compressing objects: 100% (75006/75006), done.
remote: Total 378786 (delta 302801), reused 378786 (delta 302801)
Receiving objects: 100% (378786/378786), 128.79 MiB | 1651 KiB/s, done.
Resolving deltas: 100% (302801/302801), done.
Checking out files: 100% (11007/11007), done.

real 4m35.256s
user 2m41.826s
sys 0m7.860s

mariuz@borkstation64:/opt/build/php-tsrm-ze2$ sudo ./buildconf
using default Zend directory
buildconf: checking installation...
buildconf: autoconf version 2.61 (ok)
buildconf: Your version of autoconf likely contains buggy cache code.
Running cvsclean for you.
To avoid this, install autoconf-2.13.
rebuilding aclocal.m4
rebuilding configure
rebuilding acconfig.h
rebuilding main/php_config.h.in
autoheader: WARNING: Using auxiliary files such as `acconfig.h', `config.h.bot'
autoheader: WARNING: and `config.h.top', to define templates for `config.h.in'
autoheader: WARNING: is deprecated and discouraged.
autoheader:
autoheader: WARNING: Using the third argument of `AC_DEFINE' and
autoheader: WARNING: `AC_DEFINE_UNQUOTED' allows one to define a template without
autoheader: WARNING: `acconfig.h':
autoheader:
autoheader: WARNING: AC_DEFINE([NEED_FUNC_MAIN], 1,
autoheader: [Define if a function `main' is needed.])
autoheader:
autoheader: WARNING: More sophisticated templates can also be produced, see the
autoheader: WARNING: documentation.

sudo apt-get install libicu-dev

create configure script
to look this way
cat conf.sh
#! /bin/sh
#
# Created by configure

'./configure' \
'--disable-all' \
'--with-interbase' \
'--prefix=/opt/php5.3' \
'--disable-cgi' \
'--disable-cgi' \
'--enable-debug' \
'--enable-maintainer-zts' \
"$@"


$ sudo sh conf.sh

$ sudo su
#make test > out.err

inspect the out.err

install it
# make install


/opt/php5.3/bin/php -v
PHP 6.0.0-dev (cli) (built: Oct 8 2008 22:50:48) (DEBUG)
Copyright (c) 1997-2008 The PHP Group
Zend Engine v3.0.0-dev, Copyright (c) 1998-2008 Zend Technologies

Tuesday, October 07, 2008

Firebird 2.1.x Mingw build successfully

Firebird 2.1.x Mingw build successfully

First some screnshots with the proof that it works and i will continue with the Howto



Here are the binaries that resulted from the build , You must put the icu dll in system folder




How it was done ? and why

Is painful for an open source project to require an proprietary compiler
I think all these projects could donate time and money to speed up an
good compiler and improve an common c++ IDE but this will be a future goal

Another issues is that IBM, Intel and others they sell c++ compilers
too so they are not so interested to invest too much in g++
maybe google have some interest in it who knows (to make it better)

But many other projects that they realy use mingw for their windows ports
From my head vlc inkscape and thousands of others
http://wiki.inkscape.org/wiki/index.php/Win32Port
http://wiki.videolan.org/Win32Compile

Milan B. told me that is possible to build firebird with mingw compiler so you
have the choice to build firebird binaries with that and release them

The official Firebird minGW build has been supported and updated many times and it started
several years ago (Blas Rodriguez, Dmitry Sibiryakov, etc). It's not
maintained as often as the official build files for Windows, but it's not
abandoned.[ED: so there is still hope]

Here is my starting point with mingw
I Downloaded mingw and msys
http://heanet.dl.sourceforge.net/sourceforge/mingw/MinGW-5.1.4.exe
http://voxel.dl.sourceforge.net/sourceforge/mingw/MSYS-1.0.10.exe

At mingw installer i choose G++

I started cmd.exe and then from the

c:\msys\1.0
I started msys.bat

I have added mingw binaries to the path

PATH=$PATH:/c/mingw/bin

check it with echo $PATH

I downloaded Firebird 2.1.x Source Code

http://sourceforge.net/projects/firebird/files/firebird/2.1.4-Release/Firebird-2.1.4.18393-0.tar.bz2/download


and unziped it in c/msys/1.0/home/mariuz$

tar -jxvf Firebird-2.1.*

now run ./configure and i waited a lot :)

I run this under wine but the steps should be the same on windows
xp for example

./configure part is [OK]
and it runs the compiling part


It stopped at the icu testing
I tried even with g++ 4.3.0 and still got some crashes with building icu
even with ones from ibm 3.8.1

here is the crash log with icu 3.8.1
http://mapopa.blogspot.com/2008/10/i-killed-mingw-compiler-with-icu-3.html

Alex Told me to use the --with-system-icu option in configure

I saw that perl6/parrot is using system icu with mingw when compiling

I downloaded ICU 3.8.1 (similar to the one used in ubuntu/debian)
http://www.icu-project.org/download/3.8.html#ICU4C

run cmd.exe then
mkdir c:\usr\lib

unziped the icu downloaded from here

http://download.icu-project.org/files/icu4c/3.8.1/icu4c-3_8_1-Win32-msvc8.zip

in c:\usr\lib

export PATH=$PATH:/c/usr/lib/icu/bin:
/c/usr/lib/icu/lib:/c/usr/lib/icu
export CPPFLAGS="$CPPFLAGS -I /c/usr/lib/icu/unicode"


run ./configure --with-system-icu --enable-superserver

it compiles but seems to ignore the CPPFLAGS

-c ../src/jrd/unicode_util.cpp -o ../temp/boot/jrd/unicode_util.o
../src/jrd/unicode_util.cpp:39:29: unicode/ustring.h: No such file or directory



quick hack was to modify after configure

make.rules in gen dir and to add to cppflags -I /c/usr/lib/icu/include
and now compilation goes on

i moved the icu/libs into /mingw/lib/

seems that is how msys expects
http://archives.free.net.ph/message/20060609.163929.d99106c3.en.html

and continues until the linking

c:\mingw\bin\..\lib\gcc\
mingw32\3.4.5\..\..\..\..\mingw32\bin\ld.exe:
cannot find -licudata

I modified in
make.defaults

ICU_LIBS = -licuuc -licudt -licuin
and seems that compiling continues

And is this part is DONE you saw the screenshots

Here is the full thread on firebird-devel mailing list


What is next ?
I should do some QA with python
and next finish Linux-> Windows cross compiling (seems that is faster to build on linux)
make an install using scripts from builds/win32 dir

Test Cross Compiling from ubuntu with codeblocks/eclipse
http://wiki.codeblocks.org/index.php?title=Installing_Code::Blocks#Ubuntu
http://article.gmane.org/gmane.comp.gnu.mingw.user/27671

Monday, October 06, 2008

installing awn in intrepid

Remove bottom pannel and let only the above one (in gnome)

Add these lines to a new file/etc/apt/sources.list.d/reacocard-awn.list

deb http://ppa.launchpad.net/reacocard-awn/ubuntu/ intrepid main
deb-src http://ppa.launchpad.net/reacocard-awn/ubuntu/ intrepid main

sudo apt-get update
sudo apt-get install avant-window-navigator-bzr awn-core-applets-bzr awn-manager-bzr

avant-window-navigator

Sunday, October 05, 2008

installing openttd on ubuntu hardy

sudo apt-get install openttd


vi /usr/share/doc/openttd/README.Debian

cd ~/Desktop/Transport Tycoon Deluxe
sudo cp *.grf /usr/share/games/openttd/data
sudo cp *.cat /usr/share/games/openttd/data
cd gm/
sudo cp * /usr/share/games/openttd/gm/

$ openttd

Transport Tycoon Deluxe on wine ubuntu hardy

download the game http://www.abandonia.com/en/games/240
unzip it on desktop
run and import the registry key from zip Runme!.reg with
regedit from wine
$ regedit
and choose the import option from menu




start an terminal
run
cd ~/Desktop/Transport Tycoon Deluxe
wine cmd.exe
SET LANG=english
Transport Tycoon Deluxe.exe



Friday, October 03, 2008

I killed the mingw compiler with icu 3.8 or icu 3.0.x when compiling firebird 2.1.x

decimfmt.cpp: In member function `icu_3_8::UnicodeString& icu_3_8::DecimalFormat::toPattern(icu_3_8::UnicodeString&, UBool) const':
decimfmt.cpp:2966: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See for instructions.


or if you prefer

norm.cpp: In function `UNormalizationCheckResult _quickCheck(const UChar*, int32_t, UNormalizationMode, UBool, const icu_3_0::UnicodeSet*, UErrorCode*)':
unorm.cpp:3108: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See for instructions.


Seems that i need to use the icu from the system like they are using on perl6/parrot and i will see if mingw compiles firebird 2.x

Here is my shot with mingw+wine on ubuntu hardy




Thursday, October 02, 2008

HowTo boot linux in 5 seconds ,

I will add some optimizations to my everex cloudbook so it can boot faster http://lwn.net/Articles/299088/

This is my QOD:

"We hate splash screens. By the time you see it, we want to be done." The development time that distributions spend on splash screens is much more than the Intel team spent on booting fast enough not to need one.


Wednesday, October 01, 2008

pidgin broken in hardy backports and is segfaulting

So get pidgin 2.5.1 from source

purge old pidgin from ubuntu

$sudo apt-get purge pidgin pidgin-data libpurple0

$wget http://garr.dl.sourceforge.net/sourceforge/pidgin/pidgin-2.5.1.tar.bz2
$tar -jxvf pidgin-2.5.1.tar.bz2

and
$./configure ; make ; sudo make install

Tuesday, September 30, 2008

testing tccboot with qemu/kvm
TCCBOOT, a hack where TCC loads and boots a Linux kernel from source in about 10 seconds. That is to say, it is a "boot loader" which reads Linux kernel source code from disk, writes executable instructions to memory, and begins running it.

wget http://bellard.org/tcc/tccboot.iso

for realy fast booting
kvm -cdrom tccboot.iso
for slow booting and to see what parts of the kernel are compiled
qemu -cdrom tccboot.iso

Monday, September 29, 2008

Firebird Conference 2008


I think is the best conference I have ever atended and with people from various contries , Some of them
From Japan , Brazil , South Africa , France, Russia , Holland, Germany and even Dominican Republic. I didn't listed all of the contries but you can get the picture about the diversity.

From another presentation i found that Foundation needs more money and sponsors because they need to pay the core developers and driver developers (like python, jdbc, .net ,php ...) and they don't need to do other things like support or working as an secondary job .
So the best way if you are using firebird or if you want to help this open source project is to donate Development Time and Money to the project

And is quite easy to do , just join and to donate and become an sponsor
http://firebirdsql.org/index.php?op=ffoundation

Another way to help is to write documentation or doing translations for main documents


In the conference I have seen some presentations about Firebird internals and with an very good roadmap
You might know that Firebird 2.5 is the most stable release EVER (Dimitry Yemanov words) because it ran many more tests in QA team and SAS institute got some threading tests passed and that didn't happened before with 2.1 or other versions.
From Japanese Team i found that they tried firebird classic 1.5.2 on an 32 core sun machine and Firebird was the fastest
in select tests against Postgresql or mysql , of course that is an ancient version and i'm curious about some 2.5 tests on that machine , also they tested 32 bit version , So i think 2.5 Super Classic would crush them even more
in Select tests , we have to see .
Dimitry Yemanov talked about 2.5 , and the future 3.0 and is quite interesting that with Firebird Super Classic 2.5 the power of multicore and threads is unleashed for super server arhitecture so if you want speed you need to use Super Classic , If you want to be Safe and quite fast then use Classic model where each tread is in fact an process but it useses a lot of System resources but if one process is killed the others are isolated from that crash and they keep going

Monday, September 22, 2008

broken php packages delivered to ubuntu intrepid

so i can't build ffmpeg as extension , so i must build php from source and vanilla

/configure: line 4735: LTOPTIONS_VERSION: command not found
./configure: line 4736: LTSUGAR_VERSION: command not found
./configure: line 4737: LTVERSION_VERSION: command not found
./configure: line 4738: LTOBSOLETE_VERSION: command not found
checking for a sed that does not truncate output... (cached) /bin/sed
./configure: line 4828: syntax error near unexpected token `lt_decl_varnames,'
./configure: line 4828: `lt_if_append_uniq(lt_decl_varnames, SED, , ,'


http://pecl.php.net/bugs/bug.php?id=14609
using everex cloudbook as an wireless router for nokia i810

add an new wireless network from Network Manager and it must be Ad-Hoc and call it foobar
and put the ip 10.0.0.1 to the wlan0 network
with gateway 10.0.0.1
dns 10.0.0.1
and netmask 255.255.255.0

it should look something like this

ip ro show dev wlan0
10.0.0.0/24 proto kernel scope link src 10.0.0.1
ip addr show wlan0

3: wlan0: mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:15:af:54:2a:af brd ff:ff:ff:ff:ff:ff
inet 10.0.0.1/24 brd 10.0.0.255 scope global wlan0
inet6 fe80::215:afff:fe54:2aaf/64 scope link
valid_lft forever preferred_lft forever


install dhcpd server
sudo apt-get install dhcp3-server
sudo vi /etc/default/dhcp3-server
INTERFACES="wlan0"
sudo vi /etc/dhcp3/dhcpd.conf
ddns-update-style ad-hoc;
default-lease-time 3600;
max-lease-time 9000;
authoritative;
subnet 10.0.0.0 netmask 255.255.255.0 {
range 10.0.0.2 10.0.0.30;
option routers 10.0.0.1;
option domain-name-servers 10.0.0.1;
}
sudo /etc/init.d/dhcp3-server stop
sudo /etc/init.d/dhcp3-server start

install bind server for dns requests

sudo apt-get install bind9

add in etc/bind/named.conf.options
recursion yes;


allow-recursion {
127.0.0.1;
10.0.0.0/24;
};

allow-query {
127.0.0.1;
10.0.0.0/24;
};

and test it
dig debian.org @10.0.0.1

do the snat

sudo su
echo "1" > /proc/sys/net/ipv4/ip_forward
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

check the traffic with tcpdump
sudo tcpdump -i wlan0
Disabling apparmor

Killing AppArmor module - failed, AppArmor is builtin: Failed.

one more thing to build vanilla kernels without the crappy security solutions

sudo /etc/init.d/apparmor stop
sudo update-rc.d -f apparmor remove

Removing any system startup links for /etc/init.d/apparmor ...
/etc/rcS.d/S37apparmor

https://help.ubuntu.com/community/AppArmor#Disable%20AppArmor%20framework

Now the bind9 works for caching

dig debian.org @localhost
wirless network is now installed on the everex cloudbook and is pretty fast , tested with airodump-ng and works ok $ sudo airodump-ng wlan0

Now i have to configure the webcam


http://ubuntuforums.org/showthread.php?t=593231

DISABLE SCROLLKEEPER on ubuntu - is good for updates at least on systems with slow hard drives like everex

ScrollKeeper is a cataloging system for documentation on open systems. Hardly anyone ever uses it and it takes ages every time you install anything. Disable it and your installs will fly! Finally add a diversion to stop dpkg from overwriting your changes.

sudo mv /usr/bin/scrollkeeper-update /usr/bin/scrollkeeper-update.real
sudo ln -s /bin/true /usr/bin/scrollkeeper-update
sudo find /var/lib/scrollkeeper/ -name \*.xml -type f -exec rm -f '{}' \;
sudo dpkg-divert --local --divert /usr/bin/scrollkeeper-update.real --add /usr/bin/scrollkeeper-update

TWEAKS TO MAKE BETTER USE OF THE Everex cloudbook'S SMALL SCREEN:

There are various methods that will help you make better use of the Cloudbook's small screen. One of the most important is being able to move windows that are too large to fit on the screen at once. To move a hidden part of the window into view, click and drag with the left mouse button on any part of the window while holding down the ALT key. However, you won't be able to drag windows so the top of the window is above the top of the screen. To fix that, enter the following in a terminal window:

gconftool-2 --set /apps/compiz/plugins/move/allscreens/options/constrain_y --type bool 0


inspired by this page

https://help.ubuntu.com/community/AspireOne#Step%203:%20Tweak%20/%20Fix

Sunday, September 21, 2008

Two items to discuss from the ubuntu weekley news

First Mark and Firefox team made a big mistake with firefox EULA , so these tactics will not work in the open source world , behind doors agreements and other weird stuff with the codecs,
I wish Mark had the power to remove firefox from the distro , now that what i call to vote with your pocket.

Shuttleworth defends Firefox licence in Ubuntu - In response to some of the criticism that's been going around about the EULA for Firefox, Mark Shuttleworth wrote, "Mozilla Corporation asked that this be added in order for us to continue to call the browser 'Firefox'." Stating that since Firefox is their trademark, which we intend to respect, we have the choice of working with Mozilla to meet their requirements or switching to an unbranded browser. Shuttleworth added that a package called "abrowser" was being developed in Intrepid Ibex which uses Firefox's code base without the Firefox trademark. http://news.zdnet.co.uk/software/0,1000000121,39488217,00.htm?r=1


I guess the codecs will become messier in ubuntu , All i want is to play the movies for free
and not to pay stupid taxes , I guess he could fight for the right of free codecs
maybe an law in usa or remove software patents , that is the root of evil .

Is Ubuntu about to become yet another restrictive commercial OS? - The author of DC: Infowarrior and Xubuntuphile is contesting the selling of licenses to popular multimedia codecs. The concern voiced on his site is that these commercial, proprietary codecs would eventually be rolled into the actual release instead of the open source software that accomplishes the same goals. He quotes an article by Kristin Shoemaker and one by Gerry Carr, the Marketing Manager at Canonical. http://darthchaosofrspw.wordpress.com/2008/09/21/is-ubuntu-about-to-become-yet-another-restrictive-commercial-os/

https://wiki.ubuntu.com/UbuntuWeeklyNewsletter/Issue109
first steps to compile linux 0.0.1 on ubuntu

wget http://draconux.free.fr/download/os-dev/linux0.01/linux-0.01-rm-3.x/linux-0.01-rm-3.3.tgz
tar -zxvf linux-0.01-rm-3.3.tgz
cd linux-0.01-rm-3.3/
make


seems that i miss the as86

sudo apt-get install bin86

make

This is on amd64 hardy box

as -o boot/head.o boot/head.s
gcc -Wall -O -fstrength-reduce -fomit-frame-pointer -fno-stack-protector \
-nostdinc -Iinclude -c -o init/main.o init/main.c
In file included from init/main.c:2:
include/unistd.h:256: warning: ‘struct dirent’ declared inside parameter list
include/unistd.h:256: warning: its scope is only this definition or declaration, which is probably not what you want
include/unistd.h:257: warning: ‘struct dirent64’ declared inside parameter list
In file included from init/main.c:3:
include/time.h:39: warning: conflicting types for built-in function ‘strftime’
/tmp/cceutlRx.s: Assembler messages:
/tmp/cceutlRx.s:315: Error: suffix or operands invalid for `push'
/tmp/cceutlRx.s:316: Error: suffix or operands invalid for `push'
/tmp/cceutlRx.s:317: Error: suffix or operands invalid for `pushf'
/tmp/cceutlRx.s:318: Error: suffix or operands invalid for `push'
/tmp/cceutlRx.s:319: Error: suffix or operands invalid for `push'
make: *** [init/main.o] Error 1

This is the error on athlon i386 box

make
(echo -n "SYSSIZE = (";ls -l tools/system | grep system \
| cut -c31-37 | tr '\012' ' '; echo "+ 15 ) / 16") > tmp.s
cat boot/boot.s >> tmp.s
as86 -0 -o boot/boot.o tmp.s
00001 0000002C SYSSIZE = (44 2008 + 15 ) / 16
***** right parentheses expected..............................^
00286 /*
00287 * This procedure turns off the floppy drive motor, so
00288 * that we enter the kernel in a known state, and
00289 * don't have to worry about it later.
00290 */
00001 0000002C SYSSIZE = (44 2008 + 15 ) / 16
***** right parentheses expected..............................^
00286 /*
00287 * This procedure turns off the floppy drive motor, so
00288 * that we enter the kernel in a known state, and
00289 * don't have to worry about it later.
00290 */

00001 errors
00000 warnings
make: *** [boot/boot] Error 1

UPDATE now is fixed with linux-0.01-rm-3.3.tgz
http://mapopa.blogspot.com/2008/09/linux-0.html
17 years of linux - 0.0.1

http://alexandrubucur.com/2008-09-17/17-years-linux
you can still run linux 0.0.1 on an qemu/bochs machine , in kvm seems to crash the vm

http://kerneltrap.org/Linux/Dusting_Off_the_0.01_Kernel




here is the kvm crash , i should submit to them the bug
Jeos + kvm + ubuntu

this is the virtual machine i have created with qemu manager (see the previous screenshots from the blog)

I started this way
/media/MULTIMEDIA/Downloads/jeos_ubuntu$ sudo kvm -hda jeos.dsk




Ok is not so sexy but i will add xfce and flamerobin on it quite fast :)

Writing a crawler with WWW::Mechanize

A pragmatic approach to writing a mp3 crawler in perl

read more | digg story

Saturday, September 20, 2008

I love the qemu manager on windows

http://www.davereyn.co.uk/download.htm

Is very easy to create an ubuntu/windows virtualmachine and is quite similar with virtualbox 
in usage and for me is quite fast on an athlon64x2 with 2G of ram