diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+## MMark CLI 0.0.5.2
+
+* Maintenance release with more minimal dependencies.
+
 ## MMark CLI 0.0.5.1
 
 * Dropped support for GHC 8.6 and older.
diff --git a/Setup.hs b/Setup.hs
deleted file mode 100644
--- a/Setup.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Main (main) where
-
-import Distribution.Simple
-
-main :: IO ()
-main = defaultMain
diff --git a/app/Main.hs b/app/Main.hs
--- a/app/Main.hs
+++ b/app/Main.hs
@@ -9,30 +9,30 @@
 import Control.Applicative
 import Control.Monad
 import Data.Aeson (Value (..), (.=))
-import qualified Data.Aeson as Aeson
-import qualified Data.Aeson.KeyMap as Aeson.KeyMap
-import qualified Data.ByteString.Lazy.Char8 as BL
+import Data.Aeson qualified as Aeson
+import Data.Aeson.KeyMap qualified as Aeson.KeyMap
+import Data.ByteString.Lazy.Char8 qualified as BL
 import Data.List (intercalate)
 import Data.Text (Text)
-import qualified Data.Text as T
-import qualified Data.Text.IO as T
-import qualified Data.Text.Lazy as TL
+import Data.Text qualified as T
+import Data.Text.IO qualified as T
+import Data.Text.Lazy qualified as TL
 import Data.Version (showVersion)
 import Data.Void
 import Development.GitRev
-import qualified Lucid as L
+import Lucid qualified as L
 import Options.Applicative hiding (ParseError)
 import Paths_mmark_cli (version)
 import System.Directory (makeAbsolute)
 import System.Exit (exitFailure)
 import Text.MMark (MMarkErr)
-import qualified Text.MMark as MMark
-import qualified Text.MMark.Extension.Common as Ext
+import Text.MMark qualified as MMark
+import Text.MMark.Extension.Common qualified as Ext
 import Text.Megaparsec (ParseErrorBundle (..), Parsec, SourcePos (..))
-import qualified Text.Megaparsec as M
-import qualified Text.Megaparsec.Char as MC
-import qualified Text.Megaparsec.Char.Lexer as MCL
-import qualified Text.Mustache as U
+import Text.Megaparsec qualified as M
+import Text.Megaparsec.Char qualified as MC
+import Text.Megaparsec.Char.Lexer qualified as MCL
+import Text.Mustache qualified as U
 
 -- | Entry point of the program.
 main :: IO ()
diff --git a/mmark-cli.cabal b/mmark-cli.cabal
--- a/mmark-cli.cabal
+++ b/mmark-cli.cabal
@@ -1,11 +1,11 @@
-cabal-version:   1.18
+cabal-version:   2.4
 name:            mmark-cli
-version:         0.0.5.1
-license:         BSD3
+version:         0.0.5.2
+license:         BSD-3-Clause
 license-file:    LICENSE.md
 maintainer:      Mark Karpov <markkarpov92@gmail.com>
 author:          Mark Karpov <markkarpov92@gmail.com>
-tested-with:     ghc ==8.8.4 ghc ==8.10.5 ghc ==9.0.1
+tested-with:     ghc ==9.4.7 ghc ==9.6.3 ghc ==9.8.1
 homepage:        https://github.com/mmark-md/mmark-cli
 bug-reports:     https://github.com/mmark-md/mmark-cli/issues
 synopsis:        Command line interface to the MMark markdown processor
@@ -29,26 +29,26 @@
     main-is:          Main.hs
     hs-source-dirs:   app
     other-modules:    Paths_mmark_cli
-    default-language: Haskell2010
+    autogen-modules:  Paths_mmark_cli
+    default-language: GHC2021
     build-depends:
         aeson >=0.11 && <3,
-        base >=4.13 && <5.0,
-        bytestring >=0.9.2 && <0.12,
+        base >=4.15 && <5,
+        bytestring >=0.9.2 && <0.13,
         directory >=1.2.2 && <1.4,
-        ghc-syntax-highlighter >=0.0.1 && <0.1,
         gitrev >=1.3 && <1.4,
-        lucid >=2.6 && <3.0,
-        megaparsec >=7.0 && <10.0,
+        lucid >=2.6 && <3,
+        megaparsec >=7 && <10,
         mmark >=0.0.6 && <0.1,
         mmark-ext >=0.2 && <0.3,
-        optparse-applicative >=0.14 && <0.17,
-        stache >=2.0 && <3.0,
-        text >=0.2 && <1.3
+        optparse-applicative >=0.14 && <0.19,
+        stache >=2 && <3,
+        text >=0.2 && <2.2
 
     if flag(dev)
         ghc-options:
-            -Wall -Werror -Wcompat -Wincomplete-record-updates
-            -Wincomplete-uni-patterns -Wnoncanonical-monad-instances
+            -Wall -Werror -Wredundant-constraints -Wpartial-fields
+            -Wunused-packages
 
     else
         ghc-options: -O2 -Wall
