diff --git a/diagrams-postscript.cabal b/diagrams-postscript.cabal
--- a/diagrams-postscript.cabal
+++ b/diagrams-postscript.cabal
@@ -1,5 +1,5 @@
 Name:                diagrams-postscript
-Version:             1.4
+Version:             1.4.1
 Synopsis:            Postscript backend for diagrams drawing EDSL
 Description:         This package provides a modular backend for rendering
                      diagrams created with the diagrams EDSL using Postscript.
@@ -22,8 +22,8 @@
 Bug-reports:         http://github.com/diagrams/diagrams-postscript/issues
 Category:            Graphics
 Build-type:          Simple
-Cabal-version:       >=1.10
-Tested-with:         GHC == 7.6.3, GHC == 7.8.4, GHC == 7.10.3, GHC == 8.0.1
+Cabal-version:       1.18
+Tested-with:         GHC == 7.8.4, GHC == 7.10.3, GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.2
 Source-repository head
   type:     git
   location: https://github.com/diagrams/diagrams-postscript.git
@@ -34,9 +34,8 @@
                        Diagrams.Backend.Postscript.CmdLine
                        Graphics.Rendering.Postscript
   Hs-source-dirs:      src
-  Build-depends:       base >= 4.2 && < 4.10,
+  Build-depends:       base >= 4.2 && < 4.12,
                        mtl >= 2.0 && < 2.3,
-                       filepath,
                        dlist >= 0.5 && < 0.9,
                        diagrams-core >= 1.3 && < 1.5,
                        diagrams-lib >= 1.3 && < 1.5,
@@ -45,7 +44,7 @@
                        split >= 0.1.2 && < 0.3,
                        monoid-extras >= 0.3 && < 0.5,
                        semigroups >= 0.3.4 && < 0.19,
-                       lens >= 4.0 && < 4.16,
+                       lens >= 4.0 && < 4.17,
                        containers >= 0.3 && < 0.6,
                        hashable >= 1.1 && < 1.3
   if impl(ghc < 7.6)
diff --git a/src/Diagrams/Backend/Postscript.hs b/src/Diagrams/Backend/Postscript.hs
--- a/src/Diagrams/Backend/Postscript.hs
+++ b/src/Diagrams/Backend/Postscript.hs
@@ -1,3 +1,4 @@
+{-# LANGUAGE CPP                       #-}
 {-# LANGUAGE DeriveDataTypeable        #-}
 {-# LANGUAGE DeriveGeneric             #-}
 {-# LANGUAGE FlexibleContexts          #-}
@@ -121,10 +122,14 @@
 restore :: RenderM ()
 restore = liftC C.restore >> SS.restore
 
+instance Semigroup (Render Postscript V2 Double) where
+  C x <> C y = C (x >> y)
+
 instance Monoid (Render Postscript V2 Double) where
   mempty  = C $ return ()
-  (C x) `mappend` (C y) = C (x >> y)
-
+#if !MIN_VERSION_base(4,11,0)
+  mappend = (<>)
+#endif
 
 instance Backend Postscript V2 Double where
   data Render  Postscript V2 Double = C (RenderM ())
