Technology Preview: Marble and Vidalia-0.2.0
One of the most requested upgrades to Vidalia is a better map of the world. We looked into a few different technologies and decided on KDE's Marble interface. Marble enables an accurate mapping of nodes according to their geolocation, allows for future enhancements such as "click a country to start or end your Tor circuit", and plugins for extra data views. This also gives us the ability to use Qt's Webkit browser to display custom information about nodes, circuits, or anything else in a pop-up window. An anonymous funder covered the costs involved in developing this feature. We thank them for their support.
I've attached some screenshots to this blog post. You can download the relevant packages from the Vidalia website. If you want marble-enabled Vidalia, look for -marble- in the file name. Please report bugs on Vidalia's Bug Tracker.
One last big change for OS X users is the drag and drop installer. There is no migration of old settings to new, nor do we clean up the old installs in /Library/Tor, /Library/Vidalia, /Library/Torbutton, /Library/Privoxy, etc. Follow these instructions for how to remove the old vidalia-tor bundles from your computer if you want to completely test this alpha branch of Vidalia. We will figure out a better way to do this in the near future.
Remember, this is a technology preview. However, OS X installs are migrating to drag and drop. I've solely used Vidalia 0.2.0 and drag-and-drop installer for 3 months now. I even previously blogged about it.
Additional changes in alpha Vidalia 0.2.0:
- Qt 4.5.0 is used for Win32 and OS X Universal packages.
- We've switched from the Nullsoft Installer to the Microsoft System Installer (msi) for better integration with Microsoft Windows.
- There are non-Marble and Marble-enabled packages for Win32 and OS X Universal. OS X PowerPC based on OS X 10.3.9 isn't supported by Qt 4.5.x, therefore Marble-enabled Vidalia is not available
- Add support for changing UI languages without having to restart Vidalia.
- Add preliminary support for using the KDE Marble widget for the network map. It's currently a compile-time option and is disabled by default.
- Add support for displaying Tor's plaintext port warnings. Also gives the user the option to disable future warnings.
- Add an interface for displaying the geographic distribution of clients who have recently used a bridge operator's relay.
- Add tooltips to tree items in the help browser's table of contents. Some of the help topic labels are a bit long.
- Switch to a simpler About dialog and move the license information to a separate HTML-formatted display.
- Switch to a simpler drag-and-drop installer in the OS X bundles.
- Switch to an MSI-based installer on Windows.
- Clear the list of default CA certificates used by QSslSocket before adding the only one we care about. Suggested by coderman.
- Support building with Visual Studio again.
- Add a Debian package structure from dererk.
- Updated Albanian, Czech, Finnish, Polish, Portuguese, Romanian, Swedish, Turkish and many other translations.
I see high cpu usage in Xorg/X11 sometimes. Any other OS seems to handle it just fine.
Does the usage spike to 20% or constantly stay at that level?
I notice the cpu usage generally while many circuits are building. Once circuits are built, it seems pretty quick to move around.
I checked the behavior now on an Intel Atom N270 @ 1.6 Ghz with two Cores and there it is even worse.
Starting the map causes 80% CPU-usage by the vidalia process for about 1-2 minutes. After that CPU-usage goes completly down.
But as soon as I start to scroll the map or zoom the cpu-usage goes up to 20-30% again.
So if you use the map it is pretty high, if you don't use it it's as usual.
Maybe this is normal for marble under X to consume so much? But it would be cool if the old map could still be further a part of vidalia, so one can choose as compile-time option if he has the rescources to run the marble map or the other one, as it is right now. Also if marble becames vidalias default map it would be cool if one could use --disable-marble to use the older one.
if you're compiling vidalia, you have to set -DUSE_MARBLE=1 to get the marble map, otherwise you get the default 2-D map.
We're well aware that not everyone can handle 3-D graphics with live circuits drawn on them right now. The largest issue appears to be marble and X. Marble and OSX and win32 is rather quick, even on older hardware.
> if you're compiling vidalia, you have to set -DUSE_MARBLE=1 to get the marble > map, otherwise you get the default 2-D map.
I know , I compiled and used it already ;) I just wanted to tell you my expereniece with it and that I think also if this feature becames part of vidalia stable, that there should still be the possibility to switch it off...
But interesting that Marble, a KDE project, runs smoother on MacOS and MS'OS. Maybe some problem with graphiccards and 3D acceleration, so that X does it in software and thus consuming so much cpu?
The problem is that the native graphics system (X11, XRender) is unfortunately very slow on some graphics cards. That's why Qt provides mechanisms to bypass the X-Server using the so called "raster" graphics system.
With recent Marble versions (Marble>= 0.8) you can choose a different graphics system via the settings dialog (Settings->Configure Marble->View->Graphics System: Raster).
This will make Marble on Linux/X11 as fast as on Windows and Mac OS X.