You have a lot of options if what you want is to take screencast (videos of your Desktop) in Linux.
But for me the simplier the better, and that is why I normally use ffmpeg
Just a simple command line, and you are taking your video. Here is the line.
ffmpeg -f x11grab -s 1280x1024 -r 25 -i :0.0 -sameq /tmp/screencast.mpg
You can change the resolution, to whatever fits your needs.
These are the options used here:
-r: Sets the frame rate, means, the number of pictures per second.
-s: Size, in this case 1280x1024 as that is the resolution of my screen.
-i :0.0: is the display.screen number of your X11 server.
-sameq: use video quality as source.
-f x11grab: Tells ffmpeg to capture x11 output, meaning your Desktop.
Now if you want to delay a littel the video, to arrange your screen, use sleep.
sleep 10 && ffmpeg -f x11grab -s 1280x1024 -r 25 -i :0.0 -sameq /tmp/screencast.mpg
Here is a small example of the result, I have limited to 800x600 so only a fraction of my Desktop has been recorded.