lts-16.13 + maybe call those plugins with make 'srcPlugins' because it's going to be a massive PITA to develop them if I have to build them with ghc --make

This commit is contained in:
Jon Doe 2020-09-13 16:06:16 +02:00 committed by Maciej Bonin
parent 618d7f6cb4
commit aea2f79138
3 changed files with 25 additions and 17 deletions

View File

@ -6,8 +6,8 @@ import Data.Maybe
import Control.Concurrent.STM import Control.Concurrent.STM
import Control.Concurrent.STM.TMVar import Control.Concurrent.STM.TMVar
pluginPath :: IO FilePath srcPluginPath :: IO FilePath
pluginPath = getXdgDirectory XdgData "gypsfulvus/plugins" >>= makeAbsolute srcPluginPath = getXdgDirectory XdgData "gypsfulvus/src_plugins" >>= makeAbsolute
configPath :: IO FilePath configPath :: IO FilePath
@ -21,11 +21,11 @@ configPath = getXdgDirectory XdgConfig "gypsfulvus"
loadCommsPlugins canary collectorChannel = loadCommsPlugins canary collectorChannel =
let potentialPlugins = pluginPath >>= \pp -> listDirectory pp >>= filterM (\fuku -> doesDirectoryExist (pp ++ "/" ++ fuku)) >>= mapM (\fuku -> return (pp ++ "/" ++ fuku)) let potentialPlugins = srcPluginPath >>= \pp -> listDirectory pp >>= filterM (\fuku -> doesDirectoryExist (pp ++ "/" ++ fuku)) >>= mapM (\fuku -> return (pp ++ "/" ++ fuku))
in do in do
pluginPath >>= putStrLn srcPluginPath >>= putStrLn
pluginPath >>= listDirectory >>= mapM putStrLn srcPluginPath >>= listDirectory >>= mapM putStrLn
pluginPath >>= \pp -> listDirectory pp >>= filterM (\fuku -> putStrLn (pp ++ "/" ++ fuku) >> doesDirectoryExist (pp ++ "/" ++ fuku)) srcPluginPath >>= \pp -> listDirectory pp >>= filterM (\fuku -> putStrLn (pp ++ "/" ++ fuku) >> doesDirectoryExist (pp ++ "/" ++ fuku))
pp <- potentialPlugins pp <- potentialPlugins
mapM_ putStrLn pp mapM_ putStrLn pp
ff <- mapM (\d -> findFile [d] "Plugin.hs") pp ff <- mapM (\d -> findFile [d] "Plugin.hs") pp

View File

@ -17,8 +17,8 @@
# #
# resolver: ./custom-snapshot.yaml # resolver: ./custom-snapshot.yaml
# resolver: https://example.com/snapshots/2018-01-01.yaml # resolver: https://example.com/snapshots/2018-01-01.yaml
#resolver: lts-16.13 resolver: lts-16.13
resolver: lts-14.27 #resolver: lts-14.27
# User packages to be built. # User packages to be built.
# Various formats can be used as shown in the example below. # Various formats can be used as shown in the example below.
# #
@ -35,7 +35,8 @@ packages:
# forks / in-progress versions pinned to a git hash. For example: # forks / in-progress versions pinned to a git hash. For example:
# #
extra-deps: extra-deps:
- plugins-1.6.0 - git: git@github.com:v-e-h/plugins.git
commit: e175d3c2ea9a8cc08126d37d9e30a327d8dc8b29
# - acme-missiles-0.3 # - acme-missiles-0.3
# - git: https://github.com/commercialhaskell/stack.git # - git: https://github.com/commercialhaskell/stack.git
# commit: e7b331f14bcffb8367cd58fbfc8b40ec7642100a # commit: e7b331f14bcffb8367cd58fbfc8b40ec7642100a

View File

@ -5,15 +5,22 @@
packages: packages:
- completed: - completed:
hackage: plugins-1.6.0@sha256:5eb50363b5f7a5539d91db5ce245adc2fd5bec634c58ad8c9498fcfd1c183d69,2531 cabal-file:
size: 2531
sha256: 5eb50363b5f7a5539d91db5ce245adc2fd5bec634c58ad8c9498fcfd1c183d69
name: plugins
version: 1.6.0
git: git@github.com:v-e-h/plugins.git
pantry-tree: pantry-tree:
size: 1526 size: 34501
sha256: 2805b6d574a4603833a17ce18974f7fbbdafba3db281dd3400422e3a36cb5762 sha256: bcd754b80924fc9c852557ea2a79947eab426e7fc6ef07ae82bccac9e7c4ab91
commit: e175d3c2ea9a8cc08126d37d9e30a327d8dc8b29
original: original:
hackage: plugins-1.6.0 git: git@github.com:v-e-h/plugins.git
commit: e175d3c2ea9a8cc08126d37d9e30a327d8dc8b29
snapshots: snapshots:
- completed: - completed:
size: 524996 size: 532381
url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/14/27.yaml url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/16/13.yaml
sha256: 7ea31a280c56bf36ff591a7397cc384d0dff622e7f9e4225b47d8980f019a0f0 sha256: 6ee17f7996e5bc75ae4406250841f1362ad4196418a4d90a0615ff4f26ac98df
original: lts-14.27 original: lts-16.13