summaryrefslogtreecommitdiff
path: root/app/Main.hs
diff options
context:
space:
mode:
Diffstat (limited to 'app/Main.hs')
-rw-r--r--app/Main.hs15
1 files changed, 12 insertions, 3 deletions
diff --git a/app/Main.hs b/app/Main.hs
index 51681b5..46256cc 100644
--- a/app/Main.hs
+++ b/app/Main.hs
@@ -22,6 +22,7 @@ import Text.URI.QQ (uri)
import Data.Foldable (for_)
import qualified Text.URI as URI
import GHC.Records (HasField(..))
+import System.FilePath ((</>), (<.>))
data Package = Package
{ latest :: Package.Updater
@@ -77,12 +78,20 @@ updatePackage Package{..} version = do
uri' <- liftIO $ Package.renderDownloadWithVersion downloadTemplate version
let tarball = "slackbuilds/development/universal-ctags/ctags-#{version}.tar.gz"
checksum <- fromMaybe undefined <$> download uri' tarball
- download' <- liftIO $ mkURI "https://download.dlackware.com/hosted-sources/universal-ctags/ctags-#{version}.tar.gz"
+ download' <- liftIO
+ $ mkURI
+ $ Text.replace "#{version}" version
+ "https://download.dlackware.com/hosted-sources/universal-ctags/ctags-#{version}.tar.gz"
+ repository' <- SlackBuilderT $ asks repository
+ let infoFilePath = repository' </> Text.unpack packagePath
+ </> (Text.unpack name <.> "info")
- liftIO $ Text.IO.writeFile "slackbuilds/#{package.path}/#{package.name}.info"
+ liftIO $ Text.IO.writeFile infoFilePath
$ Package.infoTemplate package' [Package.Download download' checksum False]
updateSlackBuildVersion packagePath version
- uploadCommand (Text.pack tarball) "#{CONFIG[:remote_path]}/universal-ctags"
+
+ remotePath' <- SlackBuilderT $ asks remotePath
+ uploadCommand (Text.pack tarball) $ remotePath' <> "/universal-ctags"
commit packagePath version