diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+# 0.4.2 (2021-01-31)
+
+- Fix "Error: ..." message
+
 # 0.4.1 (2020-04-12)
 
 - Set resolver to LTS 15.8 (a79cb02)
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -9,6 +9,9 @@
 Licensor is a program that generates a report of the dependencies and
 transitive dependencies of a Haskell project and their licenses.
 
+NOTE: Currently, [Stack][https://haskellstack.org/] and a `stack.yaml` file are
+required.
+
 ## Description
 
 Choosing a license for a software project or determining whether a
@@ -40,9 +43,11 @@
 - Licensor uses a Cabal library and Stack program approach for
   detecting licenses and listing dependencies, respectively. For a
   Cabal library and program approach, consider using
-  the [cabal-dependency-licenses][rp-01] program.
+  the [cabal-dependency-licenses][rp-01] program or the [cabal-plan][rp-02]
+  utility.
 
 [rp-01]: https://hackage.haskell.org/package/cabal-dependency-licenses
+[rp-02]: https://hackage.haskell.org/package/cabal-plan
 
 ## Installation and usage
 
diff --git a/app/Main.hs b/app/Main.hs
--- a/app/Main.hs
+++ b/app/Main.hs
@@ -87,7 +87,7 @@
             putStrLn "Found stack.yaml..."
             pure Nothing
           else
-            Exit.die "Error: No Cabal file found."
+            Exit.die "Error: No stack.yaml file found."
 
       Just pd -> do
         putStrLn $
@@ -127,4 +127,4 @@
         putStr "Failed: "
         print failed
     _ ->
-      Exit.die "Error: ..."
+      Exit.die "Error: Unable to run 'stack ls dependencies'"
diff --git a/licensor.cabal b/licensor.cabal
--- a/licensor.cabal
+++ b/licensor.cabal
@@ -1,61 +1,61 @@
-cabal-version: 1.12
-
--- This file has been generated from package.yaml by hpack version 0.31.2.
---
--- see: https://github.com/sol/hpack
---
--- hash: 6f7bb1fb7f37e3f143f35b05d83e6602a069aca2b14389e3e7ee6fe2a7b294bd
+cabal-version: 2.2
 
 name:           licensor
-version:        0.4.1
+version:        0.4.2
 synopsis:       A license compatibility helper
 description:    A license compatibility helper.
 category:       Distribution
 stability:      Experimental
-homepage:       https://jpvillaisaza.co/licensor
+homepage:       https://licensor.jpvillaisaza.co/
 bug-reports:    https://github.com/jpvillaisaza/licensor/issues
-author:         Juan Pedro Villa Isaza <jpvillaisaza@gmail.com>
-maintainer:     Juan Pedro Villa Isaza <jpvillaisaza@gmail.com>
-copyright:      2016 Juan Pedro Villa Isaza
+author:         J. P. Villa Isaza <jpvillaisaza@gmail.com>
+maintainer:     J. P. Villa Isaza <jpvillaisaza@gmail.com>
+copyright:      2016 J. P. Villa Isaza
 license:        MIT
 license-file:   LICENSE.md
 build-type:     Simple
+
 extra-source-files:
     CHANGELOG.md
     README.md
 
-source-repository head
-  type: git
-  location: https://github.com/jpvillaisaza/licensor
+common common
+  build-depends:
+      Cabal >= 3.0
+    , base >= 4.8 && < 5
+    , containers
+    , directory
+  default-language: Haskell2010
+  ghc-options:
+      -Wall
 
 library
+  import:
+      common
+  hs-source-dirs:
+      src
   exposed-modules:
       Licensor
   other-modules:
       Paths_licensor
-  hs-source-dirs:
-      src
-  ghc-options: -Wall
+  autogen-modules:
+      Paths_licensor
   build-depends:
-      Cabal
-    , base >=4.8 && <5
-    , containers
-    , directory
-    , process
-  default-language: Haskell2010
+      process
 
 executable licensor
-  main-is: Main.hs
-  other-modules:
-      Paths_licensor
+  import:
+      common
   hs-source-dirs:
       app
-  ghc-options: -Wall -threaded -rtsopts -with-rtsopts=-N
+  main-is:
+      Main.hs
   build-depends:
-      Cabal
-    , base >=4.8 && <5
-    , cmdargs
-    , containers
-    , directory
+      cmdargs
     , licensor
-  default-language: Haskell2010
+  ghc-options:
+      -threaded -rtsopts -with-rtsopts=-N
+
+source-repository head
+  type: git
+  location: https://github.com/jpvillaisaza/licensor
