
I am currently developing a new project that works a lot with xml files. So I was in need of a fast, leightweight xml parser. I knew of one I already looked at some time ago. Xerxes XML-Parser is a very powerful tool and everything, but it is not leightweight. (Xerxe’s project has 53 MB overall, which is A LOT!)
So I looked for something different on the net. Et voila, I found a small, simple, cross-platform, free and fast c++ XML Parser. It really works damn fast and is very easy to use. The author did a really nice work!
I know that this topic has been discussed all over the internet for a few years now, especially since ubuntu became that popular. There are a lot of great comments and thoughts out there on what linux is and what it isnt, and especially on what it tries to be. But some weeks ago I got a comment on my post “setting up a bridged network for virtualbox on ubuntu linux” which I can’t leave uncommented:
Appreciate the effort and answers but ….
this is exactly the type of thing that will keep linux/ubuntu from ever achieving a significant portion of the mqarket. As long as users have to spend a day searching and patching every application that was not built into the OS distribution then the OS will never make it to the mainstream and it will remain in the realm of hakers, nerds and others that have more time than money.
First of all I am a little bit offended by that. I actually have loads of money and no time at all, if I do something with my linux boxes, then because I choose to do so (some people might call that a hobby). I only have the time to write this comment, since I’m home sick and can’t go to work. And second of all: The Commenter is just so plain wrong, that I can’t say nothing to it (it’s definitely a duty call)! He may be right in one thing though: gnu/linux (any of its various distributions) will never achieve a significant portion of the market. (But hey: who knows!?) But the question here is: who said linux ever wanted to do such a thing. As far as I remember no one ever claimed that portion for linux! Why is that? Well, this is an easy one: nobody is even able to claim a significant portion of the market, because linux itsself leaves you the freedom of choice, so linux will certainly claim for nothing (eventhough it could for a lot!). It’s as simple as that: Take it or leave it!
The one thing people still don’t understand is that linux won’t replace windows, it’s an alternative! The magic about it, is that it does what you want it to do and becomes what you want it to become. There are just so many scenarios in which a running gnu/linux does just plain different things. And the most important things about gnu/linux are the evaluation it takes, the freedom it spreads and the people behind it. But it won’t just replace windows! It’s different. I won’t count the various advantages of linux and disadvantages of windows (in my point of view, for the gamer it’s quite the opposite), but as the author of the comment above pointed out: if all “hackers” and “nerds” are using it, it’s gotta have something. I know there are various scopes with various arguments for and against an operating system, so there is no universal answere. Also there is still a lot left to say, but I’m sick and tired of everyone comparing linux to windows and other systems. The discussion is old and boring. Besides: there is no need for any kind of discussion. Any user, if it’s windows, mac, *nix or whatsoever doesn’t need to justify his choice of OS, because it’s his choice, and not a one someone else should make for him!
Decide for yourself, but never complain about what linux is and what it isn’t, because in the end it’s just what you want it to be!
Just right now I’m setting up my new home server for various things. It’ll do all of my ranking stuff of course, since it’s very easy for me to get a new ip once G is blocking me. Right now most of the scripts are coded in python, but some essentials are still running on php (though not for long), so i need a running lamp (besides torrentflux and so on…). The last time i set up a clean server on gentoo is quite a few years back now. Eventhough it was a lot of fun and always a good chance to learn some things, I must admit it’s gotten quite easy now. It took me quite some time getting the new php5 running with apache a few years ago. Now theres nothing really special you need to do. Just fire up portage and install it. Before you do, you might wanna edit a few files though. First of all make sure you add mysql and apache2 to your global use flags in /etc/make.conf, then you’ll have to think about some apache options. First of all how will the server process run on your system? Since I’ve loads of RAM and don’t really have any traffic except some requests of my one, no virtual hosts, no nothing, I’ll go with a forked apache. For further information refer to the apache manual. For an forked MPM version of apache just do a quick:
#echo "APACHE2_MPMS="prefork" >> /etc/make.conf
There’s one thing left to do: Define what modules you want your apache to run with. As always gentoo provides a very easy way to do that. If you want to know what modules you can install just do a quick
#emerge --pretend --verbose --oneshot apache
to see all available modules. You’ll at least want those to be installed, since they are kind of needed
#echo "APACHE2_MODULES="alias auth_basic auth_digest
rewrite authz_host dir mime" >> /etc/make.conf
Not all of them are mandatory, but you’ll at least need to install authz_host, dir and mime for your apache to run. Now you’re ready to go, just fire up portage with a quick
#emerge apache
Now just install php by firing up portage again, but remember to set the use flags you’ll need by updating your /etc/portage/package.use, since there are quite some options… As always you can see available use flags by executing an pretended oneshot emerge of php! When you’re done, just install php by
#echo "dev-lang/php apache2 bzip2 curl exif ftp gd iconv mysql
mysqli nls pcre session simplexml soap spell spl sqlite ssl
tokenizer truetype unicode xml xmlrpc" >> /etc/portage/package.use
#emerge php
and you’re good to go! Just start your apache with the according init script and everything should work out of the box. You’ll probably want your apache to start automatically too, by adding it to your default runlevel:
#/etc/init.d/apache start
#rc-update add apache default
But just remember: This is a very basic installation of lamp on your system, it’ll work as it is, but you might wanna tune your settings. As always just refer to the man pages and online documentations!
So heres the deal: I wanted to set up phpbb for a group of ~40 people who went to summer vacation together. I also wanted them to be able to upload photos of the trip to some kind of photo album. There is a whole bunch of software out there, that would have filled my needs, but only as a standalone version, which means that my users would have needed to create two seperate accounts, one for phpBB and the other one for the photo album software. That’d clearly suck, so i went searching for a nice phpBB photo album mod. There are a lot of these too, but I didn’t really found any of theme nearly as good as all those standalone packages. After a while I stumbled upon phpBB3 Gallery2 Integration which does what the title says: it integrates phpBB3 (and older versions) with the wonderful Open-Source Project Gallery. Gallery offers a full featured photo album software completely written in php/mysql. It offers a wide range of plugins and is highly configurable. Gallery is set up quickly if you want to test it. So after setting up Gallery and testing it for a while I decided to use the Integration package which will turn off Registration and User-Management of Gallery and will synchronize each phpBB user with your new photo album software, so you’ll only have one login for two very nice pieces of software. I gotta say though, the installation can be a bit tricky, especially when your Gallery is already filled with content and when you use Gallery’s url rewriting package. If you’re familiar with modding your phpBB, the integration will take you about 2 to 3 hours. If youre not familiar with modding, then you’ll most likely need quite more time, especially if youre a newbie to html,php and stuff. Eventhough it’s a lot of work for one integration package, it’s really worth the time, because afterwards you’ll have a lot of fun with your new phpBB with an integrated full featured photo album! The guys over at nukedgallery.net even offer payed support and payed installation, so if you’re too lazy or too much of a newbie, there’s hope for you too!
Don’t forget to backp first!
In order for this to run, you will most likely need a wired network connection, since most wireless-adapters won’t support bridged networking! This description is intended to be used with VirtualBox >= 1.4.0, since earlier versions handle the virtual networking differently due to kernel changes in 2.6.18 and later.
First of all, you’ll have to check the permissions on the device /dev/net/tun . The user running VirtualBox with bridged networking needs to have access to this device. The easiest way to do this is by chown’ing the group vboxusers to it:
sudo chown :vboxusers /dev/net/tun
sudo chmod 0660 /dev/net/tun
You will also have to install the package bridge-utils and uml-utilities:
sudo apt-get install bridge-utils uml-utilities
Now we will create 2 scripts which are executed when the virtual machine starts/stops. I will create those scripts in my home dir. Here is the start script, I called it starttun.sh:
#!/bin/bash
brctl addbr br0
ifconfig eth0 0.0.0.0
brctl addif br0 eth0
#if you have a dhcp-server uncomment this line:
#dhclient3 br0
#If you have a static IP uncomment the following lines and
#change the IP accordingly to your subnet:
#ifconfig br0 192.168.178.5 up
#route add default gw 192.168.178.1
#Now we will create the tap device for the vm,!
# change your username accordingly
tunctl -t tap0 -u simon
#Now add the tap-device to the bridge:
ifconfig tap0 up
brctl addif br0 tap0
Now you’ll have to create the stop script, i called it stoptun.sh
#!/bin/bash
#bring the interfaces down
ifconfig tap0 down
ifconfig br0 down
brctl delif br0 tap0
brctl delbr br0
#now setup your network-interface again
#for dhcp uncomment the following line
#dhclient3 eth0
#For a static IP uncomment the following lines and change them accordingly:
#ifconfig eth0 192.168.178.5
#route add default gw 192.168.178.1 dev eth0
Finally you’ll have to make the scripts executable:
sudo chmod ug+x starttun.sh
sudo chmod ug+x stoptun.sh
It’s time to set up VirtualBox to use the interface. For this go to the SetUp of your Virtual Machine under Network and tell VirtualBox to start/stop thescripts, when the VM is started/stopped. To do this, select “Host Interface” under Attached To. As Interface Name you use “tap0″ and for the startscript you use:
“gksudo /home/YOURHOMEDIR/starttun.sh”
For the stopscript accordingly:
“gksudo /home/YOURHOMEDIR/stoptun.sh”
Note: If you use KDE, you’ll have to use kdesu instead of gksudo



