Saturday, June 29, 2013

10 things to do after installing Debian Wheezy XFCE

Debian Wheezy is a great operating system, and XFCE is a great desktop environment- especially for older computers, and for people who prefer a traditional desktop paradigm- but it does have a few quirks. I've just installed it on my old Presario 900 laptop, and I'm going to mention a few things I did after installing to make the computer more usable and nicer looking.

1. Install necessary firmware

Debian doesn't come with non-free firmware installed by default. On booting after installation, I noticed some warnings about firmware not found. Enabling the non-free repository and installing the firmware-linux package and its dependency firmware-linux-nonfree got my graphics card (such as it is) working.

2. Put a volume control icon in the panel

I don't know why this isn't there by default, but it's easy to rectify: right click on the panel, select Panel and then Add New Items, and add the Mixer. Click on it and then on Select Controls. Tick Master or PCM- whichever works best for you.

3. Sort out screensaver and power management

XFCE in Debian Wheezy comes with two applications capable on controlling power management, which can result in some perplexing behaviour.
  • The screensaver comes on, but the screen doesn't shut down after the set period.
  • The screen blanks, but the backlight stays on, leaving a ghostly illumination.
  • VLC is set to disable power management, but the screen blanks 10 minutes into a video.
I suspect that Power Manager works if a screensaver (set in Screensaver) is off, but if a screensaver is set in Screensaver, it doesn't, except in VLC. If a screensaver is set in Screensaver, then the power management settings in the  Screensaver Advanced tab are the only way to shut down the screen.

Confused? You should be!

There's more. A random screensaver is enabled by default, but not all of the screensavers selected are installed, meaning that sometimes a screensaver will start, some times the screen will blank.

Practically, if you want to use a screensaver, enable power management in Screensaver (note that all three settings, Standby, Suspend and Off are the same- this sems to be fine for a laptop anyway) and make sure the On AC > Monitor > Put display to sleep when computer is inactive for: value is greater than that set in Screensaver.

[Update: although this originally worked for me, my screen started going blank while watching videos again a few days ago. I don't know why, because the settings seem to be the same and I haven't had this problem for months.  Setting the XFCE Power Manager slider to Never seems to have fixed it. Not sure why I didn't do that in the first place.]

If you don't use a screensaver, Power Manager Monitor settings can be used to shut down the screen.


4.  Create some special folders icons for the Tango icon theme

Tango is the default icon theme for XFCE, yet it has a very annoying bug: it has no icons for special folders in the home directory, meaning that these folders are displayed with an icon from the Gnome icon set. You can of course use another icon set that does include special folder icons, but I rather like Tango. The only solution I have found is to copy the default folder in the Tango theme and rename it for all the special folders. (Well, actually creating symlinks would be a more elegant solution, come to think of it...) You can see what I've done in this screenshot.

Of course what is really needed is for somebody to produce some special folder icons for Tango...

[Update: if changes don't take effect, update the icon cache,
gtk-update-icon-cache /path/to/theme/directory/
as described on XFCE Docs.]

5. Enable anti-aliasing

If fonts look bitty, go to Settings > Appearance > Fonts and enable anti-aliasing. Experiment with the level of hinting for the best appearance.

[Update: also see this post on enabling LCD hinting (it's not a GUI option).]

6. Enable the compositor

Go to Settings > Window Manager Tweaks to enable compositing. XFCE has its own fairly minimal compositor. It provides windows shadows and transparency, and will enable docks that require compositing to run.

Although the compositor on XFCE is very minimal, I found that video lagged severely with compositing enabled on this laptop. Watch out for this issue on older hardware (10 years in this case).

7. Enable multimedia

Enabling multimedia in Debian used to be a big issue, but not any more. Debian now has multimedia support. Wheezy plays my music and video files out of the box. There are only a couple of things to mention here.

Install flashplugin-nonfree if you want to view Flash content on web pages.

To enable DVD playback, download and install libdvdcss2 as described on debian.org.

8. Install a nice theme

Debian doesn't pay any attention to making XFCE look nice, but XFCE itself is very customisable. xfce-look.org has lots of themes. Themes need to be set in Appearance and Window Manager. Themes can be placed in /home/user/.themes, but for system applications like Synaptic, they need to be in usr/share/themes. Some themes may require additional engines to display correctly. GTK3 applications like Network Manager will require GTK3 support to display correctly.

Here's my own desktop. Keeping it minimal, this theme doesn't require additional engines. Its a modification of the Axiom theme with added GTK3 support. The icon theme is Tango, but with panel icons from the Elementary icon theme.

9. Enable the Print Screen button

The prt sc button is not enabled by default. The excellent ArchLinux XFCE Wiki describes how to enable it. Add the command as described then press the prt sc key to bind it to that key.

10. Enable quick search in Synaptic

Install apt-xapian-index. Building and rebuilding the index may take some CPU time, but will speed up searches.

19 comments:

  1. Really good points! The only thing that I can't figure out on my Wheezy install is installing flashplugin-nonfree. Even after enabling nonfree, it just doesn't exist, can't find it...

    It does look like flash is working in the browser, but nothing with 'flash' in the package name is installed.

    ReplyDelete
    Replies
    1. Did you updated cache after have enabled the non-free repo ? (sudo apt-get update)

      Delete
    2. add contrib repository

      Delete
  2. After using Gnome 2 for many years, now I am using XFCE after moving to Debian Wheezy. I think it is such a great desktop.

    However, I needed to tweak it a little. I wrote a simple tutorial explaining the changes I did to adapt it to my own taste:

    http://cosmolinux.no-ip.org/raconetlinux2/xfce_wheezy.html

    I wish it is useful to someone else, since my tweaks are different from yours.

    ReplyDelete
    Replies
    1. Thanks!

      Got my touchpad working for me.

      I'm sure the other tips will be useful for other readers too.

      Delete
  3. Excellent article. Thank you for writing it.

    ReplyDelete
  4. no 8. it's not xfcelook.org the correct one is xfce-look.org

    ReplyDelete
  5. Very helpful. Thanks heaps.

    ReplyDelete
  6. I would think that number one would be setting up printing, which is not enabled or configured by default. In my case, I am trying to connect to a networked Brother laser printer. Any ideas?

    ReplyDelete
    Replies
    1. Maybe try Google?

      http://lmgtfy.com/?q=network+printer+linux

      Delete
    2. I have Brother HL-1440 with Netgear PS121. Select Applicatins Menu->System->printing. clck on + menu Aitjemtocate. Select Network Printer and again "Find network Printer" and put IP address of the printer. Clcik Forward button and follow the instruction.

      Delete
    3. Thanks for that. It's difficult to offer any advice when you don't use the same printer.

      Delete
  7. To install Xfce on debian 7 wheezy
    # apt-get install xorg xfce4 xfce4-goodies thunar-archive-plugin synaptic gdebi wicd

    To install extra XFCE packages
    # apt-get install xdg-utils xfce4-power-manager xfce4-goodies htop bzip2 zip unzip unrar-free

    http://namhuy.net/1085/install-gui-on-debian-7-wheezy.html

    ReplyDelete
  8. 10 things to do for loosers

    ReplyDelete
  9. i am new to linux, Does anyone help me for point no 1: Install necessary firmware, how to do this, just explain by terminal commands..thanks in advance

    ReplyDelete
    Replies
    1. If you are new to Linux and want to try Debian, you could always try the unofficial non-free CDs including firmware packages at:
      http://cdimage.debian.org/cdimage/unofficial/non-free/cd-including-firmware/
      If you want to try the standard installer, make a note of any firmware notifications during installation, or after installation during boot.
      Make sure you have non-free sources enabled.
      Here is an easy way to do it:
      http://dontsurfinthenude.blogspot.co.uk/2013/12/debian-sources-list-generator.html
      Then install the firmware packages you need.
      # apt-get install firmware-linux firmware-linux-nonfree
      for example.
      Google any firmware for extra instructions.

      Delete
    2. Thanks for reply, i installed Debian 7.6 using USB drive, downloaded gnome.x.x.x.iso image & put it in usb, during installation it asked for non free firmware, at that time i skip that step... now i using debian since last 10 days & love it... i removed windows from laptop completely... i have already used debian source list generator for adding repositories in /etc/apt/source.list....i am also using ubuntu but it never asked non-free firmware during installation... my question is again same how to install necessary firmware using terminal commands... if possible plz write step by step for more clarity... thanks in advance again

      Delete
    3. As I said before, you first need to find out which firmware you need: you only need firmware for hardware that you have on your computer.
      If you can't remember the messages you got during installation, you need to look for messages about missing firmware while the computer is booting.
      And of course you need to check what is not working on your installation. Does wifi work, for example?
      I gave you the command line code for the firmware package need by many video cards in my previous comment. Before that, do:
      # apt-get update, to update the list of available packages.
      The command was:
      # apt-get install firmware-linux firmware-linux-nonfree
      "#" of course means you should be root.
      You can use the following command to identify hardware:
      $ lspci
      This tells me I have Intel Corporation PRO/Wireless 3945, and Googling for that + Debian + firmware I find that I need firmware-iwlwifi.
      The command to install that would be:
      #apt-get install firmware-iwlwifi
      If this is not clear, let me know and I can do a blog post with screen shots to help you.

      Delete