In part 1 of this article series I’ve described a minimal Debian installation using network install image. I started with a regular server, added the desktop environment, and installed some more common desktop applications. In this article I will continue with several enhancements to the previous setup. Most of the information in these articles applies to other desktop environments as well.
The default install of LXDE does not enable desktop icons. This is how I would set up the classic Home/Trash/Internet trio.
I add an empty file on the desktop (right-click on empty space on the screen), I open it in Leafpad and copy the following text in the file:
[Desktop Entry] Type=Application Exec=pcmanfm Icon=user-home Terminal=false StartupNotify=true MimeType=x-directory/normal;inode/directory; Name=Home
Similarly, I create a new Trash.desktop file with the following content:
[Desktop Entry] Icon=user-trash Type=Application Exec=pcmanfm trash:/// Categories=FileManager;Utilities;GTK; Terminal=False StartupNotify=true MimeType=x-directory/normal;inode/directory; Name=Trash
/usr/share/applications stores desktop files for all installed GUI applications. I copy iceweasel.desktop file in ~/Desktop folder.
$ cp /usr/share/applications/iceweasel.desktop ~/Desktop/.
You can change the icon theme by running LXAppearance utility from the menu Preferences/Customize Look and Feel. Several icon themes are provided by default, you can install more using apt-get, for example Oxygen icon theme (apt-get install oxygen-icon-theme):
To configure automatic login open /etc/lightdm/lightdm.conf in a text editor and add the following line in [SeatDefaults] section:
To configure password-less partition mount open
/usr/share/polkit-1/actions/org.freedesktop.udisks.policy and change allow_active XML tag value to yes for filesystem-mount-system-internal.
<action id="org.freedesktop.udisks.filesystem-mount-system-internal"> <description>Mount a system-internal device</description> <message>Authentication is required to mount the device</message> <defaults> <allow_any>no</allow_any> <allow_inactive>no</allow_inactive> <allow_active>yes</allow_active> </defaults> </action>
Mutter is the current Gnome 3 window manager. It is OpenGL-enabled, the visual effects are subtle, understated, and perform flawlessly.
Mutter can replace Openbox in LXDE, and bring a modern, elegant look to your desktop. To experiment with it, install the software package and start it:
# sudo apt-get install mutter # setsid mutter --replace &
To return to Openbox, you will need to logout and login again. To make the change permanent go into /etc/xdg/lxsession/LXDE/autostart and add the following line at the end of the file:
If the kernel supports the hardware-accelerated video card, the extra memory required to run Mutter is small. On my computer with a Nvidia card (nouveau driver) Mutter added 11MB to desktop RAM consumption. For a computer where the video card is not recognized by the kernel, the amount of memory increases. In my experiments on Debian “wheezy” the increase was 40MB of memory.
One of the easiest way of using a VNC server on Debian is by sharing you desktop with Vino VLC. You are alerted every time a user tries to connect, and you can specify if the user can control the desktop or not. This is how you install and configure Vino:
$ sudo apt-get install vino $ vino-preferences
You can also create an icon on your desktop for vino-preferences:
$ cd ~/Desktop $ cp /usr/share/applications/vino-preferences.desktop .
I usually start (/usr/lib/vino/vino-server &) and stop (pkill vino-server) Vino manually. This way I have additional access control over the server. To access such a server, use any vnc viewer available. In Debian you can install one using:
$ sudo apt-get install vncviewer
To start a program automatically when you login, all you have to do is to create a .desktop file in ~/.config/autostart/ directory. As an example, this is an autostart entry for vino VNC server described above:
$ cat ~/.config/autostart/vnc-start.desktop [Desktop Entry] Name=VNC server Comment=VNC server autostart Exec=/usr/lib/vino/vino-server Terminal=false Type=Application $
Debian “wheezy” is not a cutting-edge distribution. On the desktop side you can catch up to the latest and greatest software for some packages using Debian backports. To enable backports add the following lines to /etc/apt/sources.list:
deb http://mozilla.debian.net/ wheezy-backports iceweasel-release deb http://ftp.us.debian.org/debian/ wheezy-backports main contrib non-free deb-src http://ftp.us.debian.org/debian/ wheezy-backports main contrib non-free
To install packages from backports add the arguments -t wheezey-backports to apt command, for example:
apt-get install -t wheezy-backports iceweasel apt-get install -t wheezy-backports linux-image-amd64 apt-get install -t wheezy-backports vlc
With backports enabled I am able to run Linux kernel 3.12.9, VLC 2.1.2, Firefox 27.0.1 (latest Firefox version released by Mozilla at the time of writing). The official page with all the packages available on backports can be found here.
Some of the settings presented in this article will also work on other desktop environments. If you are looking for a lightweight desktop for your Debian box, this is a memory chart you can use. I did the measurements on my computer immediately after a fresh boot and login.