Software prerequisites

Let’s install the software prerequisites, including Fossil itself! Feel free to bookmark this guide as a reference for setting up Fossil on your other computers.

The supported operating systems are:

Windows

Fast version!

For this workshop, I’ve prepared a fast almost-entirely-automatic installer! It will set up Cygwin, Fossil, VS Code, and Meld for you.

Since UOttawa wifi is slow, I’ve prepared a bunch of USB drives containing a ZIP file with the install data.

Warning

Please don’t run the installers from the USB drive directly! Doing so could lead to transmission of malware across computers. Instead, use the scripts below as they perform a cryptographic hash check on the material on the USB drive before attempting to use it.

Note

The ZIP file is also available for download here ecd-vcw-2020-02-12.zip. The ZIP file must then be placed in the same folder as the two installer scripts below.

Download the following two scripts (ecd-vcw-installer-2020-02-12.bat and ecd-vcw-installer-2020-02-12.ps1) into the same folder. Then, run the .bat script by double-clicking on it. The scripts will automatically look for the ZIP file on the USB drive.

The rest of the process is automated. The only interactive part is the ActiveTcl installer, as it will require you to click “Next”, “Typical”, “Next”, “Next” (see below for a visual walkthrough).

When you’re done, move on to Shell 101 and ensure that the “Zsh Prompt Here” menu option appears.

Slow step-by-step version

Use this only if the fast installer doesn’t work for some reason, or you don’t trust me.

Cygwin

The default Windows shell (aka “command prompt”) is awful. We’ll instead set up Cygwin and ZSH.

Installing Cygwin

Download the Cygwin installer HERE, then run it, and follow the instructions below.

_images/cygwin-1.png _images/cygwin-2.svg_images/cygwin-3.svg

Pick the following packages in the list (use the search box):

  1. wget
  2. ca-certificates
_images/cygwin-4.svg_images/cygwin-5.svg
Setup script

I wrote a script that does the remainder of the setup automagically. What you need to do is the following:

  1. Right-click on the newly created “Cygwin Terminal” shortcut on your Desktop, and select “Run as Administrator”.

  2. Copy the following line of code in its entirety, then paste into the terminal window (note: <ctrl>-v won’t work, so either use <shift>+<insert> or right-click and select “paste”):

    wget https://static.ecd.space/x/vc-workshop-201805/scripts/setup.sh -O setup.sh && bash setup.sh SETUP_CYGWIN_INSTALL=y SETUP_FOSSIL_SETTINGS=y
    
    _images/paste.png
  3. Press <enter> to run the command.

Other software

These are software packages you just need to download, then mindlessly click-through to install.

Tcl/Tk

ActiveTcl is needed to enable the built-in graphical diff feature in Fossil.

_images/tcl-1.svg_images/tcl-2.svg
Meld

Meld is an excellent graphical diff program. Given two versions of a text file, it allows you to quickly see what changed between them.

VS Code

VS Code is a great text editor (and more).

Mac OS X

In a terminal, copy-paste and run the following command in its entirety:

curl -fsSL -o setup.sh https://static.ecd.space/x/vc-workshop-201805/scripts/setup.sh && bash setup.sh SETUP_BREW_INSTALL=y SETUP_CHSH=y SETUP_FOSSIL_SETTINGS=y

You’re done!

Warning

Note that this changes your shell to ZSH. If you don’t want that, remove the SETUP_CHSH=y part before running.

Warning

This script will overwrite some of the global fossil settings. If you don’t want that, remove the SETUP_FOSSIL_SETTINGS=y part before running.

Debian GNU/Linux

(This might also work on Ubuntu, I haven’t checked.)

In a terminal, copy-paste and run the following command in its entirety:

curl -fsSL -o setup.sh https://static.ecd.space/x/vc-workshop-201805/scripts/setup.sh && bash setup.sh SETUP_CHSH=y SETUP_APT_MISC=y SETUP_APT_FOSSIL_BUILDDEP=y SETUP_BUILD_FOSSIL=y SETUP_FOSSIL_SETTINGS=y

You’re done!

Warning

Note that this changes your shell to ZSH. If you don’t want that, remove the SETUP_CHSH=y part before running.

Warning

This script will overwrite some of the global fossil settings. If you don’t want that, remove the SETUP_FOSSIL_SETTINGS=y part before running.