Saturday, May 10, 2014

Minimal Xubuntu 14.04 LTS installation

I have previously described the process of minimal Xubuntu Desktop installation with versions 13.04 and 13.10. Now it's time to install Xubuntu 14.04 LTS!

Note: There's already a newer article – Xubuntu 16.04 LTS minimal installation

As before download a Ubuntu 14.04 mini.iso netboot iso depending on the architecture and dd it onto a thumb drive. Start the installer and choose - Install. It is possible to use WLAN iface during installation but installer only supports WPA, WEP or no encryption. If you use WPA2/PSK security on your router then it can temporary be changed to WPA or a guest network can be created.

The installation process is straight forward and I can only suggest the following mount settings for the root partition:
[*]  discard
[*]  noatime
[*]  nodiratime
Discard option is only used with partitions on a SSD drive.

When installer asks to select Software to install don't select anything and continue with installation of the base system. So it is not necessary to select 'Manual Package Selection' any longer like it was before. I also didn't have any problem with GRUB installation this time.

The base system is 389 installed packages and since 13.04 they have added more into it. Packages like bash-completion, aptitude, ppp are part of the base system now.

They have also changed some dependencies of the xubuntu-desktop package. For instance software-center package in not a direct dependency any longer. So the desktop installation step has also changed a bit. Here how it's done:

The first thing to do is to disable installation of the recommended packaged for the apt-get. With this change it won't be necessary to write --no-install-recommends over and over again:
echo 'APT::Install-Recommends "false";' | sudo tee /etc/apt/apt.conf.d/60recommends
I should state that disabling recommends is perfectly legal and the right thing to do. If a package requires a dependency to work properly then such a dependency shall not be in the Recommends section! This is what happened for example with the menulibre package. They didn't put xdg-utils into its direct dependencies list thinking that it'll be installed somehow anyway. But menulibre doesn't work correctly without xdg-utils package and this is a bug that shall be fixed on the package side and not the --no-install-recommends flag that is guilty! Enough said, here comes the desktop:
# update packages list first
sudo apt-get update

# dasktop base
sudo apt-get install \
             xubuntu-desktop \
             xfce4-terminal \
             xfce4-volumed \
             xfce4-power-manager \
             xfce4-indicator-plugin \
             xfce4-datetime-plugin \
             xfce4-cpugraph-plugin \
             xfce4-netload-plugin \
             xfce4-xkb-plugin \
             xfce4-screenshooter \
             xubuntu-icon-theme \
             xfwm4-themes \
             plymouth-theme-xubuntu-logo \
             file-roller \
             mousepad \
             thunar-archive-plugin \
             indicator-sound \
             indicator-power \
             indicator-application \
             catfish \
             pavucontrol \
             menulibre \
             librsvg2-common \
             hicolor-icon-theme \
             xdg-utils \
             libgtk-3-bin \
             gvfs-backends \

# xdg-utils is for the menulibre to work correctly
# libgtk-3-bin is to generate icon caches. Without them some icons aren't shown.
# gvfs-backends is for the thunar to work with network resources
# gvfs-fuse transparently translate GIO network paths to POSIX paths
And the network manager:
# network manager
sudo apt-get install network-manager-gnome \
                     network-manager-openvpn-gnome \
                     mobile-broadband-provider-info \
                     usb-modeswitch \
                     modemmanager \

# nm needs gnome-keyring. Without it nm won't remember wifi passwords
sudo apt-get install gnome-keyring  
If no VPN and HSDPA USB modem support is needed then installing network-manager-gnome would be sufficient.

After restart you should have perfectly working desktop environment!

Note: don't forget to delete network interface that is added by the installer
from the /etc/network/interfaces as I explained before

I have some statistics this time. Installing xubuntu-desktop by default (with all recommended packages) would result in 1126 packages installed and 419MB to download. Without recommended packages xubuntu-desktop + network-manager is 466 packages and 121MB to download!

I do not have packages below installed but they belong to the Desktop and I'd recommend to install it (especially Software Center):
# recommended desktop software
sudo apt-get install fonts-liberation fonts-droid
sudo apt-get install software-center
sudo apt-get install gtk-theme-config
# if avahi or other mdns client is used then the lib
# below is needed for it to work. It reolves host names
# to ip addresses
sudo apt-get install libnss-mdns 

The list of software below is optional and is mainly for myself to remember what additional software I install:
# firefox
sudo apt-get install firefox flashplugin-installer
# recommended additional desktop software
sudo apt-get install galculator # calculator
sudo apt-get install evince     # default ubuntu pdf viewer
sudo apt-get install gucharmap  # default ubuntu font viewer
sudo apt-get install gpicview   # small and fast picture viewer
sudo apt-get install guvcview   # uvc web camera video viewer
sudo apt-get install gparted    # partition managment tool
sudo apt-get install xchm       # chm file viewer

# indicator-keylock
sudo add-apt-repository ppa:tsbarnes/indicator-keylock && sudo apt-get update
sudo apt-get install indicator-keylock

# optional software utils
sudo apt-get install gufv                 # gui for ufw (linux firewall)
sudo apt-get install hardinfo             # generates full system info + benchmarks
sudo apt-get install xfce4-sensors-plugin # shows lm-sensors in the panel
sudo apt-get install htop                 # interactive ncurses based process viewer
sudo apt-get install powertop             # power consumption diagnostic
sudo apt-get install xdotool xsel         # automatisation utils
sudo apt-get install xdot                 # dot files visualizer 
sudo apt-get install ssmtp                # small and simple send-only sendmail alternative
sudo apt-get install davfs2 encfs rar libnotify-bin \
                     htop cifs-utils ethtool iw vim

# linssid 2.1 - wifi scanning and visualization
# get it from
sudo apt-get install libqwt6 libqt4-svg
sudo dpkg -i Downloads/linssid_2.1-1_amd64.deb

# java runtime environment
sudo apt-get install default-jre

# needed for the virtualbox deb package
sudo apt-get install libcurl3 libqt4-opengl

# needed for opengl development
sudo apt-get install mesa-common-dev libgl1-mesa-dev libglu1-mesa

After installation steps

There are some things to fix after desktop is installed.

First of all panels have to be fixed. As far as I do not install xfce4-whiskermenu-plugin the upper panel is almost empty just after the installation. Add the 'Applications Menu' applet into the upper menu. The quick launch panel is completely missing in 14.04 so create a new panel and add two separators as the first and last items of the panel. Make these separators transparent and select expand on them. Other items should be added between these separators like it is shown on the picture below:
Adding missing quick launch panel
Their idea was that the quick launch panel would be obsolete if whiskermenu is installed. I personally prefer the old look and I don't like whiskermenu.

The next thing is missing desktop background picture. Go to 'Settings Mangager -> Desktop -> Background'. Select 'Folder -> Other', point it to /usr/share/backgrounds/xfce and click on the image. Additional Xubuntu desktop wallpapers can be installed with xubuntu-wallpapers and xubuntu-community-wallpapers packages. 

Now these scripts can be removed:
# remove unwanted scripts
sudo rm /etc/cron.daily/popularity-contest 
sudo rm /etc/cron.daily/update-notifier-common 
sudo rm /etc/cron.weekly/update-notifier-common
sudo rm /etc/cron.weekly/mlocate
# if discard option is used fstrim can be deleted too
sudo rm /etc/cron.weekly/fstrim 
As far as I do updates manually I do not need cron scripts for that.

I also do not install 'Users and Groups' GUI with the gnome-system-tools because this package has lots of strange dependencies. To auto login with a user the following two lines should be added into the /etc/lightdm/lightdm.conf.d/10-xubuntu.conf

Refer to the Xubuntu 14.04 release notes

There are still some useful information in my previous Xubuntu installation posts like power management. So check them out too.


Vertux said...

Dear Alex,

thanks again for this nice tutorial. I couldn't wait for your feedback though, so I tried to do it myself. Everything seemed to be ok, but I didn't install indicator-application package, and I couldn't figure out what it is necessary for. Could you please explain that point ?

I don't do automatic updates either (what's more I don't understand the 'phased updates' concept in a distro I never had one issue of stability) so I got rid of update-manager and notifier a while back and I do manual updates in terminal. But maybe one could change permissions to the scripts you are talking about here instead of removing them (just in case you change your mind)? For example turn one off with 'sudo chmod -x /etc/cron.daily/update-notifier-common', and then turn it back on with 'sudo chmod +x /etc/cron.daily/update-notifier-common'.

alex said...

The only reason why I installed indicator-application was the NetworkManager applet showing strange icons for my Desktop style. Additionally NetworkManager would show all its setting in a menu by a left mouse click. Otherwise it shows some settings by left mouse click and some by right mouse click. Regarding removing scripts - yes, one can just reset executable flag from them. But it is also very easy to restore them. First find out the package a file belong with 'dpkg -S package_name'. Then call 'sudo apt-get -o Dpkg::Options::="--force-confmiss" install --reinstall package_name'

Vertux said...

Ok, thanks, as I have no issue with network manager, I think I will remove indicator-application.
And for the nice command line with dpkg...waow ! :-)

alex said...

I meant 'dpkg -S file_name' of course

Rodrigo Tenorio said...

Hi Alex,
Thanks for the tutorial!

When I'm whating anything in fullscreen, after a time, my laptop turn off the screen, even when I disable the screen power savings. The system, somehow isn't respecting settings.

I found some scripts but all work with screensavers. And I noticed that no screensaver is installed by following your steps.

Do you have any advice?

Rodrigo Boechat

alex said...

Hi Rodrigo,

yeah, I've been experiencing the same behavior and I thought this must be a bug in the xfce4-power-manager. But it seems like adding additional xorg setting like described in this thread (comment 8 ) should help. I didn't try it myself yet

alex said...

I've added a simple script to the Application Autostart to solve screen blanking problem:

xset -dpms;xset s 0 0;xset s off

It is indeed xfce4-power-manager bug -

Rodrigo Tenorio said...


The script work.

Thanks for your help and information.

Rodrigo Boechat