From 468852410e3881910d803192f13ed13f19a7af41 Mon Sep 17 00:00:00 2001 From: Eugen Wissner Date: Mon, 25 Nov 2024 17:08:28 +0100 Subject: List installed packages from a repository --- lib/SlackBuilder/Trans.hs | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'lib/SlackBuilder/Trans.hs') diff --git a/lib/SlackBuilder/Trans.hs b/lib/SlackBuilder/Trans.hs index dea0d4b..f5697e1 100644 --- a/lib/SlackBuilder/Trans.hs +++ b/lib/SlackBuilder/Trans.hs @@ -10,6 +10,7 @@ module SlackBuilder.Trans ) where import Control.Monad.Trans.Reader (ReaderT(..), asks) +import Data.ByteString (ByteString) import Data.Text (Text) import qualified Data.Text as Text import SlackBuilder.Config @@ -20,11 +21,14 @@ import System.FilePath (()) import Text.URI (URI) import qualified Text.URI as URI import qualified Codec.Compression.Lzma as Lzma +import Text.Megaparsec (ParseErrorBundle(..), errorBundlePretty) +import Conduit (Void) data SlackBuilderException = UpdaterNotFound Text | UnsupportedUrlType URI | LzmaDecompressionFailed Lzma.LzmaRet + | MalformedInfoFile (ParseErrorBundle ByteString Void) deriving Show instance Exception SlackBuilderException @@ -55,6 +59,8 @@ instance Exception SlackBuilderException "No progress is possible" displayException (LzmaDecompressionFailed Lzma.LzmaRetProgError) = "Programming error" + displayException (MalformedInfoFile errorBundle) = + errorBundlePretty errorBundle newtype SlackBuilderT a = SlackBuilderT { runSlackBuilderT :: ReaderT Settings IO a -- cgit v1.2.3