c266f5133f
A streaming webserver which serves directories as .zip recursively. Because everything sucks and this is the best way to get dirs delivered to people. Change-Id: I451885cfc5082db12ac32eb0a4bfb04bc983d3c2 Reviewed-on: https://cl.tvl.fyi/c/depot/+/8953 Reviewed-by: Profpatsch <mail@profpatsch.de> Tested-by: BuildkiteCI
73 lines
1.6 KiB
Text
73 lines
1.6 KiB
Text
cabal-version: 3.0
|
|
name: httzip
|
|
version: 0.1.0.0
|
|
author: Profpatsch
|
|
maintainer: mail@profpatsch.de
|
|
|
|
common common-options
|
|
ghc-options:
|
|
-Wall
|
|
-Wno-type-defaults
|
|
-Wunused-packages
|
|
-Wredundant-constraints
|
|
-fwarn-missing-deriving-strategies
|
|
|
|
-- See https://downloads.haskell.org/ghc/latest/docs/users_guide/exts.html
|
|
-- for a description of all these extensions
|
|
default-extensions:
|
|
-- Infer Applicative instead of Monad where possible
|
|
ApplicativeDo
|
|
|
|
-- Allow literal strings to be Text
|
|
OverloadedStrings
|
|
|
|
-- Syntactic sugar improvements
|
|
LambdaCase
|
|
MultiWayIf
|
|
|
|
-- Makes the (deprecated) usage of * instead of Data.Kind.Type an error
|
|
NoStarIsType
|
|
|
|
-- Convenient and crucial to deal with ambiguous field names, commonly
|
|
-- known as RecordDotSyntax
|
|
OverloadedRecordDot
|
|
|
|
-- does not export record fields as functions, use OverloadedRecordDot to access instead
|
|
NoFieldSelectors
|
|
|
|
-- Record punning
|
|
RecordWildCards
|
|
|
|
-- Improved Deriving
|
|
DerivingStrategies
|
|
DerivingVia
|
|
|
|
-- Type-level strings
|
|
DataKinds
|
|
|
|
-- to enable the `type` keyword in import lists (ormolu uses this automatically)
|
|
ExplicitNamespaces
|
|
|
|
default-language: GHC2021
|
|
|
|
|
|
executable httzip
|
|
import: common-options
|
|
|
|
main-is: Httzip.hs
|
|
|
|
build-depends:
|
|
base >=4.15 && <5,
|
|
pa-prelude,
|
|
bytestring,
|
|
text,
|
|
warp,
|
|
wai,
|
|
http-types,
|
|
directory,
|
|
filepath,
|
|
unix,
|
|
wai-conduit,
|
|
conduit,
|
|
conduit-extra,
|
|
binary
|