Cygwin Shepherd

Install CYGWIN and Shepherd in Windows 8

Full process for running CygWin from within Windows 8:

1. Install CYGWIN from

Run setup.exe and follow the instructions.  Apart from the defaults make sure you click on the devel and perl branches to install those as well. Search for Vi and cron and install them also.

After the install has finished you can click on the Cygwin icon on your desktop to setup your shell (terminal window) which is where we are going to do most of our compiling.

You can check your install by typing: perl -h

2. Download the required files:

A. The actual Shepherd script. Type this in your shell:


B. XMLTV and XMLTV prereqs:
Goto and download these two files:


If you use your browser to download these make sure you place them in your cygwin home directory so when you type ls in your shell you should be able to see them.

C. Perl Dependencies:
You will need the following dependecies: Algorithm-Diff, Digest-SHA1, List-Compare

Just type these into your shell:

wget -c
wget -c
wget -c

3. Unzip all our downloaded files:
Type these commands:

bunzip2 -c xmltv-0.5.63.tar.bz2 | tar -xvf -
bunzip2 -c xmltv_prereq-8.tar.bz2 | tar -xvf -
tar -xvf Algorithm-Diff-1.15.tar.gz
tar -xvf List-Compare-0.37.tar.gz
tar -xvf Digest-SHA1-2.13.tar.gz

Note: If pasting the above commands you need to delete the – at the end of the bunzip2 commands and re-type it or the command won’t work.

4. Compile our scripts:
OK, this where we do the (un)interesting bit.

We now need to compile EACH one of our downloaded scripts individually.
To compile a script we need to go into each directory and type these 3 commands:

perl Makefile.PL
make install

You should compile the scripts in this order:

xmltv_prereq-8 (every directory in this folder separately)

You will notice that the xmltv_prereq-8 contains a number of other directories. You need to compile these directories in order. That is, 00_* first, then 01_*, then the rest…

You don’t need to compile the directories with TK as you will not be using the GUI. And another thing I forgot to mention is that you may get some warnings along the way, don’t worry too much about them.

5. Adjust the shepherd script:

Open the shepherd script in a text browser and change the get_full_path sub (line 971):


sub get_full_path
my $path = shift;
my $real = realpath($path);
return $path if (!$real);
return $real;


sub get_full_path
my $path = shift;
return $path;

6. Get OZTivo to work in shepherd.
In the shell window type the following command and follow the prompts

cpan HTTP::Cache::Transparent

7. You are done..!!!

You should now be able to configure shepherd by typing this command:

perl shepherd

By Myles Freeman

Just me, nothing to see here..