heri333
10/17/2013 - 8:20 PM

Software packages and installation snippets for a flexible HTPC.

Software packages and installation snippets for a flexible HTPC.

Targets

  • Usable as classic HTPC and small home server
  • Minimal software stack without "bloat"
  • Easy installation with all required multimedia packages
  • Based on Ubuntu 13.10.

Installation

Basic system based on Ubuntu Minimal CD

Install the [Ubuntu Minimal CD] (https://help.ubuntu.com/community/Installation/MinimalCD), with only the OpenSSH server package to ease the further installation.

UI packages with viewers for the usual multimedia file formats, including Java as dependency for further installations. XFCE was chosen for the best mix of raw speed and feature set.

sudo apt-get install xorg \
       slim \
       xfce4 \
       xfce4-goodies \
       shimmer-themes \
       xfce4-terminal \
       xfce4-power-manager \
       xfce4-volumed \
       xfce4-indicator-plugin \
       xfce4-datetime-plugin \
       xfce4-screenshooter \
       xfce4-xkb-plugin \
       xfce4-mixer \
       xscreensaver-data \
       xscreensaver-data-extra \
       smartmontools \
       galculator \
       alacarte \
       pavucontrol \
       gvfs-fuse \
       thunar-archive-plugin \
       scite \
       xarchiver \
       synaptic \
       vlc \
       gpicview \
       filezilla \
       transmission \
       qpdfview \
       easytag \
       easymp3gain-gtk \
       audacious \
       audacious-plugins \
       firefox \
       firefox-locale-de \
       flashplugin-installer \
       openjdk-7-jdk \
       openjdk-7-source \
       xbmc

Optional first customization steps:

  • Choose a theme (e.g. Greybird), icons, screensaver
  • Enable font anti-aliasing and hinting (smoother fonts)
  • Enable display compositing (basic window shadows and so on)
  • Remove default programs which have been replaced with similar programs from the menu (Ristretto, Mousepad)
  • Add enhanced icon theme, e.g. Faenza.
mkdir -p ~/.icons && \
cd ~/.icons && \
wget https://launchpad.net/~tiheum/+archive/equinox/+files/faenza-icon-theme_1.3.1.tar.gz && \
tar -zxvf faenza-icon-theme_1.3.1.tar.gz && \
cd .. && \
cp -a ~/.icons/faenza-icon-theme-1.3/Faenza* ~/.icons/ && \
rm -rf ~/.icons/faenza-icon-theme_1.3.1.tar.gz

Basic system based on Xubuntu Desktop

Install the [Xubuntu] (http://xubuntu.org/getxubuntu/), install the OpenSSH server package afterwards to ease the further installation.

UI packages with viewers for the usual multimedia file formats, including Java as dependency for further installations. Not needed packages are removed first.

sudo apt-get autoremove \
       abiword \
       evince \
       gnumeric \
       gimp \
       gthumb \
       ristretto \
       simple-scan \
       pidgin \
       thunderbird \
       gmusicbrowser \
       xchat \
       parole \
       gnome-mines \
       gnome-sudoku \
       mousepad \
       xfce4-notes \
       software-center \
       gpicview

sudo apt-get install \
       xfce4-goodies \
       shimmer-themes \
       xfce4-terminal \
       xfce4-power-manager \
       xfce4-volumed \
       xfce4-indicator-plugin \
       xfce4-datetime-plugin \
       xfce4-screenshooter \
       xfce4-xkb-plugin \
       xfce4-mixer \
       xscreensaver-data \
       xscreensaver-data-extra \
       smartmontools \
       galculator \
       alacarte \
       pavucontrol \
       gvfs-fuse \
       thunar-archive-plugin \
       scite \
       xarchiver \
       synaptic \
       vlc \
       gpicview \
       filezilla \
       transmission \
       qpdfview \
       easytag \
       easymp3gain-gtk \
       audacious \
       audacious-plugins \
       firefox \
       firefox-locale-de \
       flashplugin-installer \
       openjdk-8-jdk \
       openjdk-8-source

Potential first customization steps are listed in the previous section.

Conky

Since it's a server, it shall show its stats on the desktop.

sudo apt-get install hddtemp lm-sensors
sudo sensors-detect
sudo apt-get install conky

Make hddtemp accessible as normal user, verify it by executing hddtemp /dev/sda as a normal user.

sudo dpkg-reconfigure hddtemp

Perhaps your hard drive has no temperature sensor or you may have to add it to the hddtemp database, see e.g. ubuntuusers.de wiki for further information.

Continuous integration for Java projects

Basics

sudo apt-get install maven git

Jenkins

See Installing Jenkins on Ubuntu.

wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -
sudo sh -c 'echo deb http://pkg.jenkins-ci.org/debian binary/ > /etc/apt/sources.list.d/jenkins.list'
sudo apt-get update
sudo apt-get install jenkins

It should be accessible on port 8080. Since this is a rather common port for web servers, e.g. a parallel installation of Tomcat, you should change it. The port is defined as the parameter HTTP_PORT in the file /etc/default/jenkins.

SonarQube

See Sonar native packages.

sudo sh -c 'echo deb http://downloads.sourceforge.net/project/sonar-pkg/deb binary/ > /etc/apt/sources.list.d/sonar.list'
sudo apt-get update
sudo apt-get install sonar

Start it with sudo /etc/init.d/sonar start, after some longish startup time it should be accessible on port 9000. By default it is not configured to start automatically.