Using Xfce4 on my Debian-using Powerbook, rejecting Gnome+Mono
Tuesday, December 22nd, 2009 at 2:13 amGnome on Debian, installed using the meta-package, pulls in Mono. You used to be able to bypass this requirement by installing gnote instead of Tomboy, but Gnome now pulls in many other Mono-using apps, of which there are better replacements.
Since I feel Mono is bloated, slow, and anti-FOSS and Debian doesn’t want to remove the Mono requirement (although, yes, I can just not use the meta-package, but that’s just broken behavior), I have decided to try alternatives.
I purged Gnome the hard way by removing libgtk2 and libglib2 and doing several rounds of deborphan --guess-all | xargs apt-get remove combined with apt-get autoremove. In the long run this removed tons of crap I never used.
Next, I installed Xfce with apt-get install xfce4 xfce4-goodies xorg desktop-base tango-icon-theme xfprint4, and also did apt-get install iceweasel pidgin gwibber network-manager-gnome vim-gtk gtk-engines to get the apps I really did want installed. I also installed Slim as a replacement for GDM.
I changed my GTK, Xfwm, and icon themes to “Clearlooks”, “Default-4.4″, and “Tango” respectively. I set The Xfce Session Manager imported my Gnome Session Manager configuration, so apps I have set to startup on session start was maintained.
I also added the app launchers I had on my Gnome panel to the Xfce panel and moved the virtual desktop chooser to the far left, set my panel to be 24 pixels tall, and enabled composting inside Xfwm.
So, after doing all that, I have to say… everything is faster. Gnome had requirements that caused several daemons to start on boot, which increased the time between bootloader and X start, and GDM takes several more times longer to start than Slim. Xfce also starts near instantly compared to Gnome, yet it has the same functionality.
If I had actually bothered to time it, I would not be surprised if I get a usable desktop in half the time I did with Gnome. Xfce is clearly a better product with a lot less bloat.
Also, memory usage wise, I can run Xfce plus X, Pidgin, and NetworkManager in under 200 megs of RAM. Gwibber uses roughly 150 (I think it might be leaking), and Firefox being open with a single tab open uses around 75. A useful Linux desktop doesn’t have to be a bloated mess.
Update: I swapped out NetworkManager for WICD. WICD in total uses less RAM and doesn’t have the hald dependency. Once Xfce’s Power Manager switches to use the new API instead of through hald, that’ll be one less thing to load on boot (it wastes time, not memory).
I need to find a good replacement for Gwibber though, it leaks like crazy. I’ve been running it almost 11 days now, and it’s using a 1gb of memory.
try pino? http://pino-app.appspot.com/
I’d consider Pino, but its written in Vala, so I won’t touch it with a ten foot pole.
Well, Debfoster and Deborpan have been depriciated by Debians developers for 5.x.x (Lenny) and I always use Aptitude, makes for a cleaner install
The hard way’s never the best way.
Debfoster & Deborphan are wrappers for dpgk and apt, both are designed to look for “orphaned” packages when you run ‘apt-get’ instead of ‘aptitude’. Debfoster makes a “keepers” file of packages to be kept and removes the rest using apt.
why ‘apt-get autoremove’? Debfoster’s a more elegant solution followed by ‘apt-get clean’ to clean the /var file.
now to keep Mono out for good, use Mononono :]
great post, thanks.
I’ve never heard of Debfoster. I’ve been doing it manually for 12 years, I’ll keep doing it manually for another 12.
aptitude purge libmono* libgdiplus cli-common libsqlite0 libglitz-glx1 libglitz1 mono-common libmono0 mono libmono1.0-cil libmono2.0-cil libgtk2 libglib2
aptitude purge -c
aptitude clean
I took the advice of Jo Shields (A Mono dev for Debian/Ubuntu) who suggested these could be removed safely.
Yes, Jo essentially did the same thing I did but he used aptitude instead.
Interesting article. thanks.