live-sequencer 0.0.6.2 → 0.0.6.3
raw patch · 13 files changed
+92/−75 lines, 13 filesdep +network-uri-flagdep +shell-utilitydep ~basedep ~bytestringdep ~cgi
Dependencies added: network-uri-flag, shell-utility
Dependency ranges changed: base, bytestring, cgi, containers, explicit-exception, midi, network, network-uri, pathtype, stm, strict, transformers, unix, wx, wxcore
Files
- data/base/List/Basic.hs +1/−1
- data/base/ListLive.hs +1/−1
- http/enable/HTTPServer/Option.hs +1/−1
- live-sequencer.cabal +43/−32
- shell.nix +27/−0
- src/Console.hs +1/−1
- src/GUI.hs +1/−1
- src/MPlayer.hs +1/−1
- src/Option.hs +4/−1
- src/Option/Utility.hs +0/−34
- src/Term.hs +2/−1
- src/Type.hs +0/−1
- wxc.nix +10/−0
data/base/List/Basic.hs view
@@ -8,7 +8,7 @@ -} import Bool-import Prelude ( (-), Num, Int, Bool )+import Prelude ( (-), Int, Bool ) infixr 5 ++
data/base/ListLive.hs view
@@ -17,7 +17,7 @@ import Tuple import Function import Bool-import Prelude ( (-), (+), (*), Num, Int, Integer, Integral, Bool, foldr, null, reverse )+import Prelude ( (-), (+), (*), Int, Integer, Integral, Bool, foldr, null, reverse ) cons :: a -> [a] -> [a] ;
http/enable/HTTPServer/Option.hs view
@@ -1,6 +1,6 @@ module HTTPServer.Option where -import Option.Utility ( parseNumber )+import Shell.Utility.ParseArgument ( parseNumber ) import qualified System.Console.GetOpt as Opt import System.Console.GetOpt (ArgDescr(..), )
live-sequencer.cabal view
@@ -1,12 +1,12 @@ Name: live-sequencer-Version: 0.0.6.2+Version: 0.0.6.3 Author: Henning Thielemann and Johannes Waldmann Maintainer: Henning Thielemann <haskell@henning-thielemann.de>, Johannes Waldmann <waldmann@imn.htwk-leipzig.de> Category: Sound, Music, GUI License: GPL License-file: LICENSE-Cabal-Version: >= 1.6-Tested-With: GHC==7.8.4, GHC==8.0.1+Cabal-Version: >= 1.10+Tested-With: GHC==8.2.2, GHC==9.6.3 Homepage: http://www.haskell.org/haskellwiki/Live-Sequencer Bug-Reports: https://hub.darcs.net/thielema/livesequencer Synopsis: Live coding of MIDI music@@ -60,6 +60,8 @@ Extra-Source-Files: Changes.md README.md+ wxc.nix+ shell.nix http/enable/HTTPServer.hs http/enable/HTTPServer/GUI.hs http/enable/HTTPServer/Option.hs@@ -71,7 +73,7 @@ Location: https://hub.darcs.net/thielema/livesequencer Source-Repository this- Tag: 0.0.6.2+ Tag: 0.0.6.3 Type: darcs Location: https://hub.darcs.net/thielema/livesequencer @@ -89,13 +91,15 @@ Library- Hs-Source-Dirs: data/base, data/example+ Default-Language: Haskell98 GHC-Options: -Wall+ Hs-Source-Dirs: data/base, data/example Build-Depends: -- for Render+ midi >=0.2.1 && <0.3, non-negative >=0.0.6 && <0.2, event-list >=0.0.11 && <0.2,- base >=4.2 && <5+ base >=4.10 && <5 Exposed-Modules: Render Bool@@ -132,10 +136,11 @@ ALSA Event InOut+ Exception Module ModuleBase Option- Option.Utility+ ControllerBase Program Rewrite Rule@@ -146,17 +151,19 @@ Time Type Log+ HTTPServer.Option Paths_live_sequencer Other-Modules: Lilypond+ Default-Language: Haskell98 GHC-Options: -Wall -threaded If impl(ghc>=7.0) GHC-Options: -fwarn-unused-do-bind -fwarn-missing-import-lists Build-Depends: stm-split >=0.0 && <0.1, concurrent-split >=0.0 && <0.1,- transformers >=0.2.2 && <0.6,- explicit-exception >=0.1.9 && <0.2,+ transformers >=0.2.2 && <0.7,+ explicit-exception >=0.1.9 && <0.3, parsec >=2.1 && <3.2, pretty >=1.0 && <1.2, midi-alsa >=0.2 && <0.3,@@ -165,25 +172,27 @@ alsa-core >=0.5 && <0.6, data-accessor-transformers >=0.2.1 && <0.3, data-accessor >=0.2.1 && <0.3,- strict >=0.3.2 && <0.4,+ strict >=0.3.2 && <0.6, utility-ht >=0.0.8 && <0.1, non-empty >=0.2 && <0.4, semigroups >=0.1 && <1.0,- containers >=0.3 && <0.6,- bytestring >=0.9 && <0.11,+ containers >=0.3 && <0.8,+ bytestring >=0.9 && <0.13,+ shell-utility >=0.0 && <0.2, process >=1.0 && <1.7, pathtype >=0.8.1 && <0.9,- base >=4.2 && <5+ base >=4.10 && <5 Executable live-sequencer-gui If flag(gui) Build-Depends:- wx >=0.12.1 && <0.93,- wxcore >=0.13.2 && <0.93,- stm >=2.2 && <2.5,+ wx >=0.12.1 && <0.94,+ wxcore >=0.13.2 && <0.94,+ stm-split >=0.0 && <0.1,+ stm >=2.2 && <2.6, concurrent-split >=0.0 && <0.1,- transformers >=0.2.2 && <0.6,- explicit-exception >=0.1.9 && <0.2,+ transformers >=0.2.2 && <0.7,+ explicit-exception >=0.1.9 && <0.3, parsec >=2.1 && <3.2, pretty >=1.0 && <1.2, midi-alsa >=0.2 && <0.3,@@ -192,15 +201,16 @@ alsa-core >=0.5 && <0.6, data-accessor-transformers >=0.2.1 && <0.3, data-accessor >=0.2.1 && <0.3,- strict >=0.3.2 && <0.4,+ strict >=0.3.2 && <0.6, non-empty >=0.2 && <0.4, semigroups >=0.1 && <1.0, utility-ht >=0.0.8 && <0.1,- containers >=0.3 && <0.6,- bytestring >=0.9 && <0.11,+ containers >=0.3 && <0.8,+ bytestring >=0.9 && <0.13,+ shell-utility >=0.0 && <0.2, process >=1.0 && <1.7, pathtype >=0.8.1 && <0.9,- base >=4.2 && <5+ base >=4.10 && <5 Else Buildable: False @@ -214,7 +224,6 @@ Module ModuleBase Option- Option.Utility Controller ControllerBase Program@@ -231,6 +240,7 @@ Utility.Concurrent Utility.WX + Default-Language: Haskell98 GHC-Options: -threaded -Wall If impl(ghc>=7.0) GHC-Options: -fwarn-tabs -fwarn-incomplete-uni-patterns@@ -241,9 +251,10 @@ HTTPServer Build-Depends: httpd-shed >=0.4 && <0.5,- network >=2.6 && <2.7,- network-uri >= 2.6 && <2.7,- cgi >=3001.1 && <3001.4,+ network >=2.6 && <3.2,+ network-uri >= 2.6 && <2.8,+ network-uri-flag == 0.1.*,+ cgi >=3001.1 && <3001.6, html >=1.0 && <1.1 Else Hs-Source-Dirs: http/disable@@ -255,22 +266,22 @@ Executable live-mplayer-control If flag(mplayer) Build-Depends:+ shell-utility,+ pathtype, midi-alsa >=0.2 && <0.3, midi >=0.2 && <0.3, alsa-seq >=0.6 && <0.7, alsa-core >=0.5 && <0.6,- unix >=2.4 && <2.8,- transformers >=0.2.2 && <0.6,- base >=4.2 && <5+ unix >=2.4 && <2.9,+ transformers >=0.2.2 && <0.7,+ base >=4.10 && <5 Else Buildable: False Hs-Source-Dirs: src Main-is: MPlayer.hs - Other-Modules:- Option.Utility-+ Default-Language: Haskell98 GHC-Options: -threaded -Wall If impl(ghc>=7.0) GHC-Options: -fwarn-tabs -fwarn-incomplete-uni-patterns
+ shell.nix view
@@ -0,0 +1,27 @@+{ pkgs ? import <nixpkgs> {} }:++let+ wxc = pkgs.callPackage (import ./wxc.nix pkgs) {};++in+pkgs.mkShell {+ nativeBuildInputs = [+ pkgs.pkg-config+ ];+ buildInputs = [+ wxc+ pkgs.wxGTK32 # wxdirect needs wx-config+ pkgs.libGL # for OpenGLRaw+ pkgs.libGLU # for GLURaw+# for compiling application packages in Nix+ pkgs.haskell.compiler.ghc963+ pkgs.cabal-install+ pkgs.gmp+ pkgs.numactl+ pkgs.alsa-lib+ pkgs.alsa-plugins+ ];+ shellHook = ''+ export ALSA_PLUGIN_DIR=${pkgs.alsa-plugins}/lib/alsa-lib+ '';+}
src/Console.hs view
@@ -29,7 +29,7 @@ import Control.Functor.HT ( void ) import qualified System.IO as IO-import Option.Utility ( exitFailureMsg )+import Shell.Utility.Exit ( exitFailureMsg ) type Term = Term.Term ModuleRange
src/GUI.hs view
@@ -53,7 +53,6 @@ import Program ( Program ) import TermFocus ( TermFocus ) import TermParser ( lexer )-import Option.Utility ( exitFailureMsg ) import Utility.WX ( cursor, editable, notebookSelection, splitterWindowSetSashGravity ) import qualified HTTPServer.GUI as HTTPGui@@ -118,6 +117,7 @@ import Control.Exception ( bracket, finally, try ) import qualified System.IO as IO import qualified System.IO.Error as Err+import Shell.Utility.Exit ( exitFailureMsg ) import qualified System.Path.IO as PathIO import qualified System.Path as Path
src/MPlayer.hs view
@@ -47,7 +47,7 @@ import qualified Text.Printf as Printf -import Option.Utility (exitFailureMsg)+import Shell.Utility.Exit (exitFailureMsg) defltPipeName :: Path.AbsRelFile
src/Option.hs view
@@ -3,8 +3,11 @@ import qualified Module import qualified Time import qualified InOut-import Option.Utility ( exitFailureMsg, fmapOptDescr, parseNumber ) import qualified HTTPServer.Option as HTTP++import Shell.Utility.ParseArgument (parseNumber)+import Shell.Utility.Exit (exitFailureMsg)+import Shell.Utility.GetOpt (fmapOptDescr) import qualified Text.ParserCombinators.Parsec as Parsec
− src/Option/Utility.hs
@@ -1,34 +0,0 @@-module Option.Utility where--import qualified System.Console.GetOpt as G-import qualified System.Exit as Exit-import qualified System.IO as IO---parseNumber ::- (Read a) =>- String -> (a -> Bool) -> String -> String -> IO a-parseNumber name constraint constraintName str =- case reads str of- [(n, "")] ->- if constraint n- then return n- else exitFailureMsg $ name ++ " must be a " ++ constraintName ++ " number"- _ ->- exitFailureMsg $ name ++ " must be a number, but is '" ++ str ++ "'"--exitFailureMsg :: String -> IO a-exitFailureMsg msg = do- IO.hPutStrLn IO.stderr msg- Exit.exitFailure--fmapArgDescr :: (a -> b) -> (G.ArgDescr a -> G.ArgDescr b)-fmapArgDescr f d =- case d of- G.NoArg a -> G.NoArg $ f a- G.ReqArg g str -> G.ReqArg (f.g) str- G.OptArg g str -> G.OptArg (f.g) str--fmapOptDescr :: (a -> b) -> (G.OptDescr a -> G.OptDescr b)-fmapOptDescr f (G.Option short long arg help) =- G.Option short long (fmapArgDescr f arg) help
src/Term.hs view
@@ -19,6 +19,7 @@ import qualified Control.Monad.Exception.Synchronous as ME import Control.Monad.Exception.Synchronous ( Exceptional(Exception) )+import Control.Monad.Fail ( MonadFail ) import Control.Monad ( liftM2, mzero ) import Control.Applicative ( (<$>) ) import Data.Char (isUpper, isLower)@@ -109,7 +110,7 @@ viewNode _ = Nothing -liftMonadFail :: (Monad m) => Exceptional String a -> m a+liftMonadFail :: (MonadFail m) => Exceptional String a -> m a liftMonadFail = ME.switch fail return {- |
src/Type.hs view
@@ -72,7 +72,6 @@ table :: (ParserRange range) => Expr.OperatorTable Char st (Term range) table = map ( map binary ) operators --- duplicate to Term.binary, however, lexer and operatorLetter are different binary :: (ParserRange range) => (String, Assoc) -> Expr.Operator Char st (Term range)
+ wxc.nix view
@@ -0,0 +1,10 @@+pkgs:++pkgs.fetchFromGitHub {+ owner = "wxHaskell";+ repo = "wxHaskell";+ rev = "152d1e0f4ead34d76240727fab87185bc0a89c0b";+ sha256 = "sha256-JYYt1D71jj6BZK8l9tq8he26ZUxXc48TdNBXnm402Ao=";+}+++"/wxc/package.nix"