LinHES (Linux Home Entertainment System) is a distribution heavily based on Arch, centered around MythTV designed for Home Theater PCs (HTPCs) use. The expressed goal of LinHES is to provide a HES-appliance feel to your HTPC. Most if not all of the system configuration and operation can be accomplished via your remote control. Users can go from a blank system to a fully functional MythTV system in 15-20 minutes. LinHES makes use of mythvantageTemplate:Linkrot for easy configuration and modification. There is a service menu accessible right from the mythtv GUI where users can configure most of the machine right from their couch via their remote control.

Divergence from the Arch Way

LinHES is meant to be an appliance and is targeted at Linux neophytes. As such, it is noteworthy to mention that although LinHES is based on Arch, LinHES doesn't conform to the Arch Way. For example:

LinHES implements pacman's abilities more broadly philosophically.

Pacman under LinHES can and does modify package config files/other files for the user without the user's need to do so manually as is the Arch Way. Additionally, some LinHES packages will modify files owned by other LinHES packages. Both of these examples represent a divergence from the Arch Way that might not sit well with some experienced Arch users. On its own, neither example represents a "bad" thing, but they should be documented for the afore mentioned niche community.

Brief History

The predecessor to LinHES is Knoppmyth (KM). As its name implies, the initial releases of Knoppmyth were based on Knoppix, but the latest incarnations are not, although the brand-name "KnoppMyth" has been retained. From the knoppmyth wiki:

"Knoppix itself is an adaptation of the Debian Linux distribution, Knoppmyth therefore is another project that has spiralled off into its own domain. These days it would be more correct to call KnoppMyth a specialized and heavily customized Debian derivative, as there is very little Knoppix left."

The first release of KM was on 09-Aug-2003 (R1) and was based on MythTV 0.10. The latest stable incarnation of KM is R5.5 which was released on 06-Jul-2008 and is based on MythTV 0.21.2. The first release of LinHES (R6) went gold (stable) on the 26-Sept-2009, version R6.01.00 being officially released.

Both LinHES and KM can be installed and function on almost any "modern" computer. There are a set of components that constitute the so-called, "Knoppmyth Reference Platform" which is nothing more than a set of hardware that is known and certified to work out-of-the-box with KM. The hardware specifications are completely open and published here.

Development on KM has halted and all efforts are focusing on LinHES. That said, KM R5.5 is still a very robust Mythtv-Distro.

Version History of KM/LinHES

Since the first release in 2003, there have been about a dozen major and minor versions of KM.

R5.5/R6.x Differences Table and Equivalent Commands

This section intends to capture the differences between R5.x and R6.x as well as capture some equivalent shell commands for the user familiar with the R5 series.

Startup Scripts
It is noteworthy to mention that /etc/rc.local does NOT get called at boot as it does under Arch. Instead, LinHES uses /etc/runit/1.local for startup scripts.

Core Components

Component

R5 Uses...

R6 Uses...

"The Brand"

Knoppmyth

LinHES

Parent Linux Distro

Debian

Arch Linux

Webserver

Apache2

Lighttpd

Miscellaneus Components/Shell Examples

Component

R5 Uses...

R6 Uses...

R5 Example

R6 Example

Adding a Daemon

update-rc.d

add_service.sh

# update-rc.d daemonname defaults

$ sudo add_service.sh daemonname

Removing a Daemon

update-rc.d

remove_service.sh

# update-rc.d -f daemonname remove

$ sudo remove_service.sh daemonname

Init System

sysv init

runit

# /etc/init.d/webmin start

$ sudo sv start webmin

Diskless Frontend

NFS root, shared /usr

pacman -S diskless-legacy ; config_diskless_frontend.bash

knoppmyth_diskless_frontend.bash

Package Management/Shell Examples

Package Task

R5 Uses...

R6 Uses...

R5 Example

R6 Example

Update package list

dpkg and apt-get

pacman

# apt-get update

$ sudo pacman -Sy

Install a Package

dpkg and apt-get

pacman

# apt-get install packagename

$ sudo pacman -S packagename

Remove a Package

dpkg and apt-get

pacman

# apt-get remove packagename

$ sudo pacman -Rs packagename

Location of repos

/etc/apt/sources.list

/etc/pacman.conf

Location of Package Cache

/var/cache/apt/archives

/data/var/cache/pacman/pkg

Upgrade All Installed Packages

dpkg and apt-get

pacman

# apt-get dist-upgrade

$ sudo pacman -Syu

Install from local pacakge

dpkg

pacman

# dpkg -i <file>

$ sudo pacman -U <file>

Configuration Settings

Component or configuration file

R5 Uses...

R6 Uses...

R5 example

R6 Example

/etc/fstab

device names

UUID

/dev/sda1

UUID=a6b1c6b8-eebf-4e28-8020-!309cf441bfcc

Required Hardware

A LinHES system can use most modern and "semi-modern" hardware. Some users report a fully functional system driven by an antiquated AMD Athlon (800 MHz)/nforce2 CPU/MB. For HD-playback one will need a more powerful CPU or a GPU capable of VDPAU such as an NVIDIA 8400GS, 9500GT, or GF 210. For a complete table of NVIDIA cards and their VDPAU support, see this table. Intel Atom-based PCs are also popular among LinHES users for their low heat output and ultra low power consumption. Again, this low-power CPU needs to be paired with a VDPAU compatible GPU or else view HD content will not be possible. Most Atom MB/CPU combos are paired with one, for example, see offerings by Intel and Zotac.

LinHES can also run in a virtual machine (verified to work in Virtual Box v3.0.10) if would-be users would prefer to test drive it in a sandbox.

R6 Installation Walk-through (Brief)

Boot the LinHES CD or USB media.

Screen 1: Select the "Install or Upgrade" option. If upgrading, you will go directly to screen 10 and everything will be processed automatically based on your backups.

Warning: If upgrading from an R5.x box, make sure that you run the mythbackup script before you attempt an install of R6.

Screen 2: Select a target file-system

Screen 3: Select the type of install (Full/auto or Upgrade). Also assign partition sizes for the OS, swap, and data partitions. The defaults should be fine. Users can also select which file-system format is used. Currently the default is for ext3, but other options such as ext4/RFS/XFS/JFS are also available.

Screen 4: Assign a host-name

Note: Make sure you are satisfied with the host-name you select since you cannot easily change it after the installation due to a number of other configuration files/mysql tables that will depend on it.

Screen 5: Setup the network options. Users may select from wired or wireless configurations with all the standard options such as dynamic IP/static IP, devices, mtu size, etc.

Note: For more of MTU sizes a.k.a jumbo frames, see the Jumbo Frames article.

Screen 6: Setup host options. Choices here include system configuration (standalone/frontend/master backend/slave backend). Initial resolution (i.e. SDTV or HDTV) and remote configure are also on this screen. The setup GUI contains many options for remote controls that are preconfigured for you. Users also set the option to use or not use mythwelcome on this screen.

Note: Make sure you understand the architecture of mythtv networks. A selection of standalone should only be made if this is and will be the only mythtv box on your network. For more on this, see [insertlink this] page on the official mythtv wiki.

Warning: Make sure to create a non-mythtv account, assign a root password and assign a mythtv password on this screen before you continue. Under R6.02.00 and higher, the screen is lacking, passwords and user creation shall be managed later through CLI.

Screen 10: Sanity check/"Are you sure you wish to continue?" screen.

This concludes the installation. The scripts will take over and in about 5 min you will reboot into your LinHES installation.

Interview with Cecil Watson - Written interview with Cecil Watson (20-Jan-2009) by Gareth J. Greenaway (SCALE). The interview was done in preparation for SCALE 2009; this is where Cecil disclosed the name change in R6.

Interview with Cecil Watson - Quarter-long interview with Cecil Watson (30-Oct-2005), starting at 23', by Leo Laporte (The Tech Guy Labs). At the time, a re-mastered Knoppmix distribution was seen as a breakthrough innovation in the HTPC field.

KnoppMyth R5.5 Demo Install Video - Showcases the ease of installation of R5.5; note that the R6 installation process is very different from the R5.5 installation process!