mirror of
https://github.com/simonmichael/hledger.git
synced 2024-11-07 21:15:19 +03:00
feat: support hledger-ui on windows
Introduced or bumped dependencies: - brick-2.1.1 - vty-6.1 - vty-crossplatform-0.4.0.0 - vty-windows-0.2.0.1 conditionally on windows (current version of vty-crossplatform has 0.2.0.0 as a lower bound, need to put a newer version explcitly; once we get a newer vty-crossplatform, we will be able to drop this conditional) - vty-unix (indirectly via vty-crossplatform)
This commit is contained in:
parent
03808552ff
commit
ce02f20d29
@ -20,7 +20,8 @@ import Data.List (find)
|
||||
import Data.List.Extra (nubSort)
|
||||
import Data.Maybe (fromMaybe)
|
||||
import qualified Data.Text as T
|
||||
import Graphics.Vty (mkVty, Mode (Mouse), Vty (outputIface), Output (setMode))
|
||||
import Graphics.Vty (Mode (Mouse), Vty (outputIface), Output (setMode))
|
||||
import Graphics.Vty.CrossPlatform (mkVty)
|
||||
import Lens.Micro ((^.))
|
||||
import System.Directory (canonicalizePath)
|
||||
import System.Environment (withProgName)
|
||||
|
@ -73,7 +73,7 @@ library
|
||||
ansi-terminal >=0.9
|
||||
, async
|
||||
, base >=4.14 && <4.19
|
||||
, brick >=1.5 && <2
|
||||
, brick >=2.1.1 && <2.2
|
||||
, cmdargs >=0.8
|
||||
, containers >=0.5.9
|
||||
, data-default
|
||||
@ -95,14 +95,16 @@ library
|
||||
, text-zipper >=0.4
|
||||
, time >=1.5
|
||||
, transformers
|
||||
, unix
|
||||
, vector
|
||||
, vty >=5.15 && <6
|
||||
, vty ==6.1.*
|
||||
, vty-crossplatform >=0.4.0.0 && <0.5.0.0
|
||||
default-language: Haskell2010
|
||||
if os(windows)
|
||||
buildable: False
|
||||
build-depends:
|
||||
vty-windows >=0.2.0.1 && <0.3.0.0
|
||||
else
|
||||
buildable: True
|
||||
build-depends:
|
||||
unix
|
||||
|
||||
executable hledger-ui
|
||||
main-is: hledger-ui.hs
|
||||
@ -116,9 +118,5 @@ executable hledger-ui
|
||||
base >=4.14 && <4.19
|
||||
, hledger-ui
|
||||
default-language: Haskell2010
|
||||
if os(windows)
|
||||
buildable: False
|
||||
else
|
||||
buildable: True
|
||||
if flag(threaded)
|
||||
ghc-options: -threaded
|
||||
|
@ -51,7 +51,6 @@ ghc-options:
|
||||
dependencies:
|
||||
- base >=4.14 && <4.19
|
||||
|
||||
when:
|
||||
# curses is required to build terminfo for vty for hledger-ui.
|
||||
# On POSIX systems it might be not present.
|
||||
# On windows it's very likely not present, but possibly it could be.
|
||||
@ -61,12 +60,10 @@ when:
|
||||
# curses
|
||||
# default: True
|
||||
# description:
|
||||
# For now, just don't build hledger-ui on windows
|
||||
- condition: os(windows)
|
||||
then:
|
||||
buildable: false
|
||||
else:
|
||||
buildable: true
|
||||
#
|
||||
# note on windows: the vty-windows (and hence hledger-ui) will reliably work only on the newer backends
|
||||
# like Windows Terminal.
|
||||
# mintty-based backends (default for cygwin/gitbash/msys2) are not supported (yet)
|
||||
|
||||
library:
|
||||
source-dirs: .
|
||||
@ -101,10 +98,16 @@ library:
|
||||
- time >=1.5
|
||||
- transformers
|
||||
- vector
|
||||
# not installable on windows, cf buildable flag below
|
||||
- brick >=1.5 && <2
|
||||
- vty >=5.15 && <6
|
||||
- unix
|
||||
- brick >=2.1.1 && <2.2
|
||||
- vty >=6.1 && <6.2
|
||||
- vty-crossplatform >= 0.4.0.0 && < 0.5.0.0
|
||||
when:
|
||||
- condition: os(windows)
|
||||
then:
|
||||
dependencies: vty-windows >= 0.2.0.1 && < 0.3.0.0
|
||||
else:
|
||||
dependencies: unix
|
||||
|
||||
|
||||
executables:
|
||||
hledger-ui:
|
||||
|
@ -31,3 +31,10 @@ nix:
|
||||
# # "$targets": -Werror
|
||||
# # "$everything": -O2
|
||||
# # some-package: -DSOME_CPP_FLAG
|
||||
extra-deps:
|
||||
- vty-windows-0.2.0.1
|
||||
- vty-crossplatform-0.4.0.0
|
||||
- brick-2.1.1
|
||||
- vty-6.1
|
||||
- vty-unix-0.2.0.0
|
||||
|
||||
|
@ -8,8 +8,12 @@ packages:
|
||||
- hledger-ui
|
||||
- hledger-web
|
||||
|
||||
# extra-deps:
|
||||
|
||||
extra-deps:
|
||||
- vty-windows-0.2.0.1
|
||||
- vty-crossplatform-0.4.0.0
|
||||
- brick-2.1.1
|
||||
- vty-6.1
|
||||
- vty-unix-0.2.0.0
|
||||
nix:
|
||||
pure: false
|
||||
packages: [perl gmp ncurses zlib]
|
||||
|
Loading…
Reference in New Issue
Block a user