1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
|
-- Initial hurl.cabal generated by cabal init. For further documentation,
-- see http://haskell.org/cabal/users-guide/
-- The name of the package.
name: hurl
-- The package version. See the Haskell package versioning policy (PVP)
-- for standards guiding when and how versions should be incremented.
-- https://wiki.haskell.org/Package_versioning_policy
-- PVP summary: +-+------- breaking API changes
-- | | +----- non-breaking API additions
-- | | | +--- code changes with no API change
version: 1.4.1.0
-- A short (one-line) description of the package.
synopsis: Haskell URL resolver
-- A longer description of the package.
description: Retrieves resources for a URI, whether they be HTTP(S), gemini:, file:, or data:.
-- URL for the project homepage or repository.
homepage: https://git.adrian.geek.nz/hurl.git/
-- The license under which the package is released.
license: GPL-3
-- The file containing the license text.
license-file: LICENSE
-- The package author(s).
author: Adrian Cochrane
-- An email address to which users can send suggestions, bug reports, and
-- patches.
maintainer: adrian@openwork.nz
-- A copyright notice.
-- copyright:
category: Network
build-type: Simple
-- Extra files to be distributed with the package, such as examples or a
-- README.
extra-source-files: ChangeLog.md
-- Constraint on the version of Cabal needed to build this package.
cabal-version: >=1.10
Flag http
Description: Support HTTP(S) URIs.
Default: True
Manual: True
Flag gemini
Description: Support gemini: URIs.
Default: True
Manual: True
Flag file
Description: Support file: URIs.
Default: True
Manual: True
Flag data
Description: Support data: URIs.
Default: True
Manual: True
Flag freedesktop
Description: Dispatches unsupported URIs and MIMEtypes to external apps on FreeDesktop.Org-compatible desktops. Works on most non-mainstream/non-proprietary desktops.
Default: True
Manual: True
Flag appstream
Description: Failing to dispatch URIs and MIMEtypes as per `freedesktop`, consults the local AppStream database to suggest apps to install. Only has an effect if the `freedesktop` is also set.
Default: True
Manual: True
Flag rewriters
Description: Support regexp-based URI rewriting/blocking plugins
Default: True
Manual: True
source-repository head
type: git
location: https://git.adrian.geek.nz/hurl.git
library
-- Modules exported by the library.
exposed-modules: Network.URI.Charset, Network.URI.Fetch
-- Modules included in this library but not exported.
other-modules: Network.URI.Locale, Network.URI.Messages
-- LANGUAGE extensions used by modules in this package.
-- other-extensions:
-- Other library packages from which modules are imported.
build-depends: base >=4.9 && <=4.12, text >= 1.2 && <1.3,
network-uri >=2.6 && <2.7, bytestring >= 0.10 && < 0.11,
async >= 2.1 && < 2.3, filepath, directory,
time >= 1.6 && < 1.7
-- Directories containing source files.
hs-source-dirs: src
-- Base language which the package is written in.
default-language: Haskell2010
if flag(http)
CPP-options: -DWITH_HTTP_URI
build-depends: http-client >= 0.6 && <0.7, http-types >= 0.12 && <0.13,
http-client-openssl >= 0.3 && <0.4, HsOpenSSL >= 0.11.4.19 && < 0.12
if flag(gemini)
CPP-options: -DWITH_GEMINI_URI -DWITH_RAW_CONNECTIONS
build-depends: HsOpenSSL >= 0.11.4.19 && < 0.12, openssl-streams >= 1.2 && < 1.3, io-streams >= 1.5 && < 1.6
if flag(file)
CPP-options: -DWITH_FILE_URI
if flag(data)
CPP-options: -DWITH_DATA_URI
build-depends: base64-bytestring >=1.0 && <2.0
if flag(freedesktop)
CPP-options: -DWITH_XDG
build-depends: process >= 1.2 && <2.0
other-modules: Network.URI.XDG.Ini, Network.URI.XDG.MimeApps, Network.URI.XDG.DesktopEntry, Network.URI.XDG
if flag(freedesktop) && flag(appstream)
CPP-options: -DWITH_APPSTREAM
build-depends: xml-conduit >=1.8 && < 1.9, zlib >= 0.6 && < 0.7, containers
other-modules: Network.URI.XDG.AppStream, Network.URI.XDG.AppStreamOutput
if flag(rewriters)
CPP-options: -DWITH_PLUGIN_REWRITES
build-depends: regex >= 1.1 && < 1.2, regex-tdfa >= 1.2 && < 1.4
other-modules: Network.URI.PlugIns.Rewriters
executable hurl
-- .hs file containing the Main module
main-is: Main.hs
-- Other library packages from which modules are imported
build-depends: base >=4.9 && <=4.12, hurl, network-uri, directory
-- Directories containing source files.
hs-source-dirs: .
-- Base language which the package is written in.
default-language: Haskell2010
ghc-options: -threaded
|