diff --git a/cabal2nix.cabal b/cabal2nix.cabal
--- a/cabal2nix.cabal
+++ b/cabal2nix.cabal
@@ -1,5 +1,5 @@
 name:               cabal2nix
-version:            2.15.1
+version:            2.15.2
 synopsis:           Convert Cabal files into Nix build instructions.
 description:
   Convert Cabal files into Nix build instructions. Users of Nix can install the latest
@@ -61,7 +61,7 @@
   other-modules:      Paths_cabal2nix
   hs-source-dirs:     src
   build-depends:      base                 > 4.11
-                    , Cabal                == 3.0.*
+                    , Cabal                == 3.2.*
                     , aeson                > 1
                     , ansi-wl-pprint
                     , bytestring
diff --git a/src/Distribution/Nixpkgs/Haskell/FromCabal.hs b/src/Distribution/Nixpkgs/Haskell/FromCabal.hs
--- a/src/Distribution/Nixpkgs/Haskell/FromCabal.hs
+++ b/src/Distribution/Nixpkgs/Haskell/FromCabal.hs
@@ -7,6 +7,7 @@
   ) where
 
 import Control.Lens
+import Data.Char ( isSpace )
 import Data.Maybe
 import Data.Set ( Set )
 import qualified Data.Set as Set
@@ -31,6 +32,7 @@
 import Distribution.Types.LegacyExeDependency as Cabal
 import Distribution.Types.PkgconfigDependency as Cabal
 import Distribution.Types.UnqualComponentName as Cabal
+import Distribution.Utils.ShortText ( fromShortText )
 import Distribution.Version
 import Language.Nix
 
@@ -104,8 +106,8 @@
                              then fromMaybe (error (display package ++ ": X-Cabal-File-Hash field is missing")) (lookup "X-Cabal-File-Hash" customFieldsPD)
                              else "")
     & metaSection .~ ( Nix.nullMeta
-                     & Nix.homepage .~ homepage
-                     & Nix.description .~ synopsis
+                     & Nix.homepage .~ strip isSpace (fromShortText homepage)
+                     & Nix.description .~ fromShortText synopsis
                      & Nix.license .~ nixLicense
                      & Nix.platforms .~ Nix.allKnownPlatforms
                      & Nix.hydraPlatforms .~ (if isFreeLicense nixLicense then Nix.allKnownPlatforms else Set.empty)
@@ -170,3 +172,6 @@
 
 bindNull :: Identifier -> Binding
 bindNull i = binding # (i, path # ["null"])
+
+strip :: (Char -> Bool) -> String -> String
+strip p = reverse . dropWhile p . reverse . dropWhile p
diff --git a/src/Distribution/Nixpkgs/Haskell/PackageSourceSpec.hs b/src/Distribution/Nixpkgs/Haskell/PackageSourceSpec.hs
--- a/src/Distribution/Nixpkgs/Haskell/PackageSourceSpec.hs
+++ b/src/Distribution/Nixpkgs/Haskell/PackageSourceSpec.hs
@@ -8,6 +8,7 @@
 import Control.Monad.Trans.Maybe
 import Data.Bifunctor
 import qualified Data.ByteString.Char8 as BS
+import Data.Foldable ( toList )
 import Data.List ( isSuffixOf, isPrefixOf )
 import qualified Data.Map as DB
 import Data.Maybe
@@ -261,7 +262,7 @@
   -> BS.ByteString
   -> Either String Cabal.GenericPackageDescription
 runParseGenericPackageDescription fpath
-  = first (unlines . fmap (showPError fpath) . snd)
+  = first (unlines . map (showPError fpath) . toList . snd)
   . snd . runParseResult
   . parseGenericPackageDescription
 
