packages feed

hmp3-ng-2.19.0: hmp3-ng.cabal

cabal-version: 3.0
name: hmp3-ng
version: 2.19.0
synopsis: A 2019 fork of an ncurses mp3 player written in Haskell
description:
  An mp3 player with a curses frontend.  Playlists are populated by
  passing file and directory names on the command line.  'h' displays
  help.

category: Sound
homepage: https://github.com/galenhuntington/hmp3-ng#readme
bug-reports: https://github.com/galenhuntington/hmp3-ng/issues
author: Don Stewart, Galen Huntington
maintainer: Galen Huntington
license: GPL-2.0-or-later
license-file: LICENSE
build-type: Simple

extra-doc-files:
  README.md

source-repository head
  type: git
  location: https://github.com/galenhuntington/hmp3-ng

common opts
  default-language: GHC2021
  default-extensions:
    BlockArguments
    MultiWayIf
    OverloadedStrings
    RecordWildCards
    -- In GHC2024
    DerivingStrategies
    LambdaCase

  ghc-options:
    -Wall
    -Wprepositive-qualified-module
    -funbox-strict-fields

library
  import: opts
  hs-source-dirs: ./
  exposed-modules:
    Base
    Config
    Core
    Decoder
    Keyboard
    Keymap
    Playlist
    State
    Style
    UI
    Width

  other-modules:
    Paths_hmp3_ng

  autogen-modules:
    Paths_hmp3_ng

  pkgconfig-depends:
    ncursesw

  build-depends:
    array,
    base >=4.16 && <5,
    bytestring >=0.10,
    clock,
    containers,
    directory >=1.3.7.0,
    filepath,
    hscurses,
    mtl,
    posix-paths,
    process,
    random,
    regex-posix,
    unix >=2.8,
    utf8-string,

executable hmp3
  import: opts
  main-is: Main.hs
  hs-source-dirs: app
  ghc-options: -threaded
  build-depends:
    base,
    hmp3-ng,
    optparse-applicative,
    unix,
    utf8-string,

test-suite test
  import: opts
  type: exitcode-stdio-1.0
  main-is: Main.hs
  hs-source-dirs: test
  other-modules:
    BaseSpec
    ConfigSpec
    CoreSpec
    DecoderSpec
    PlaylistSpec
    StyleSpec
    WidthSpec

  build-depends:
    base,
    bytestring,
    clock,
    hmp3-ng,
    tasty >=1.4,
    tasty-hunit >=0.10,
    utf8-string,