diff --git a/.travis.yml b/.travis.yml
index fba962b950a578374c37104635dd048299887420..e8496bc283f7c91364045f1cd4a6c5d39dd02f4c 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -21,6 +21,8 @@ cache:
   - pip
   - directories:
       - $HOME/.pre-commit
+      - $HOME/.cabal
+      - $HOME/.ghc
 
 install:
   - sudo apt-get update
@@ -44,6 +46,13 @@ matrix:
     include:
         - env:
             TOXENV: pre-commit
+            PATH: $PATH:$HOME/.cabal/bin
+          addons:
+            apt:
+              packages:
+                - cabal-install
+                - ghc
           install:
+              - cabal update && cabal install shellcheck
               - *pip_install
           sudo: False