[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Packaging elm-compiler 0.19.1
From: |
Matthew Kraai |
Subject: |
Re: Packaging elm-compiler 0.19.1 |
Date: |
Sat, 2 Jan 2021 10:37:38 -0800 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Icedove/78.6.0 |
Hi John,
On 12/31/20 10:51 AM, John Soo wrote:
I’m not 100% sure how guix handles the ghc “boot” libraries but I
think time is installed alongside ghc. Doing guix environment --pure
--ad-hoc ghc -- ghc-pkg list gets me time-1.9.3. So I do think the
version bounds should be satisfied without any other dependency. Mind
sharing more of the package definition?
I think that elm-compiler is built with GHC 8.6.5, not GHC 8.8.3. When
I run `guix environment --pure --ad-hoc ghc@8.6.5 -- ghc-pkg list`, its
output contains `time-1.8.0.2`. I tried changing the definition of
`ghc-8` in `haskell.scm` from `ghc-8.6` to `ghc-8.8`, but then
`integer-logarithms` fails to build. Maybe I have to upgrade to the
latest LTS Haskell.
Here is the full package definition:
(define-public elm-compiler
(package
(name "elm-compiler")
(version "0.19.1")
(source
(origin
(method git-fetch)
(file-name (git-file-name name version))
(uri (git-reference
(url "https://github.com/elm/compiler/")
(commit version)))
(sha256
(base32 "1rdg3xp3js9xadclk3cdypkscm5wahgsfmm4ldcw3xswzhw6ri8w"))
(patches
(search-patches "elm-compiler-disable-reactor.patch"))))
(build-system haskell-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'update-constraints
(lambda _
(substitute* "elm.cabal"
(("ansi-terminal >= 0\\.8 && < 0\\.9,")
"ansi-terminal >= 0.8 && < 0.10,")
(("containers >= 0\\.5\\.8\\.2 && < 0\\.6,")
"containers >= 0.5.8.2 && < 0.7,")
(("http-client >= 0\\.5 && < 0\\.6,")
"http-client >= 0.5 && < 0.7,")
(("language-glsl >= 0\\.0\\.2 && < 0\\.3,")
"language-glsl >= 0.0.2 && < 0.4,")
(("network >= 2\\.4 && < 2\\.7,")
"network >= 2.4 && < 2.9,"))
#t)))))
(inputs
`(("ghc-ansi-terminal" ,ghc-ansi-terminal)
("ghc-ansi-wl-pprint" ,ghc-ansi-wl-pprint)
("ghc-edit-distance" ,ghc-edit-distance)
("ghc-file-embed" ,ghc-file-embed)
("ghc-filelock" ,ghc-filelock)
("ghc-http" ,ghc-http)
("ghc-http-client" ,ghc-http-client)
("ghc-http-client-tls" ,ghc-http-client-tls)
("ghc-http-types" ,ghc-http-types)
("ghc-language-glsl" ,ghc-language-glsl)
("ghc-logict" ,ghc-logict)
("ghc-network" ,ghc-network)
("ghc-raw-strings-qq" ,ghc-raw-strings-qq)
("ghc-scientific" ,ghc-scientific)
("ghc-sha" ,ghc-sha)
("ghc-snap-core" ,ghc-snap-core)
("ghc-snap-server" ,ghc-snap-server)
("ghc-time-compat" ,ghc-time-compat)
("ghc-unordered-containers"
,ghc-unordered-containers)
("ghc-utf8-string" ,ghc-utf8-string)
("ghc-vector" ,ghc-vector)
("ghc-zip-archive" ,ghc-zip-archive)))
(home-page "https://elm-lang.org")
(synopsis "Programming language for Web applications")
(description
"This package provides Elm, a statically-typed functional programming
language for the browser. It includes commands for developers such as
@command{elm make} and @command{elm repl}.")
(license license:bsd-3)))
--
Matthew Kraai
- Re: Packaging elm-compiler 0.19.1,
Matthew Kraai <=