Message ID | 20220419233214.275789-6-philip@philipmcgrath.com |
---|---|
State | Accepted |
Headers | show |
Series | gnu: elm: Update to 0.19.1. Add build system & importer. | expand |
Context | Check | Description |
---|---|---|
cbaines/comparison | success | View comparision |
cbaines/git branch | success | View Git branch |
cbaines/applying patch | success | View Laminar job |
cbaines/issue | success | View issue |
Philip McGrath <philip@philipmcgrath.com> skribis: > + (package > + (name "elm-virtual-dom") [...] > + (properties '((upstream-name . "elm/virtual-dom"))))) Could/should the importer infer the upstream name from the Guix name by default? That way, we’d only need to specify that property where the automatic Guix->upstream name mapping wouldn’t work.
Hi, On 5/1/22 16:37, Ludovic Courtès wrote: > Philip McGrath <philip@philipmcgrath.com> skribis: > >> + (package >> + (name "elm-virtual-dom") > > [...] > >> + (properties '((upstream-name . "elm/virtual-dom"))))) > > Could/should the importer infer the upstream name from the Guix name by > default? > > That way, we’d only need to specify that property where the automatic > Guix->upstream name mapping wouldn’t work. It could, but the heuristics seemed a bit brittle. To pick a few examples: 1. elm-virtual-dom -> "elm/virtual-dom" 2. elm-explorations-markdown -> "elm-explorations/markdown" 2. elm-terezka-intervals -> "terezka/intervals" We could add a special case for the "elm-explorations/*" namespace, but at least one of the others would need an explicit property. I *think* most of the packages in the "elm/*" namespace are single-element (e.g. "elm/html"), so maybe we could require the property for e.g. "elm/virtual-dom" and "elm/project-metadata-utils" ... -Philip
diff --git a/gnu/packages/elm.scm b/gnu/packages/elm.scm index b61d238cff..af12804301 100644 --- a/gnu/packages/elm.scm +++ b/gnu/packages/elm.scm @@ -155,3 +155,24 @@ (define-public elm-json-bootstrap (delete 'build) (delete 'validate-compiled)) #:implicit-elm-package-inputs? #f))))) + +(define-public elm-virtual-dom + (package + (name "elm-virtual-dom") + (version "1.0.2") + (source + (elm-package-origin + "elm/virtual-dom" + version + (base32 "1d6pqv6cvrsk2cp3dxxrq82vwrij4hrgjazg3lh93z75jkpvywhl"))) + (build-system elm-build-system) + (propagated-inputs (list elm-json elm-core)) + (home-page "https://package.elm-lang.org/packages/elm/virtual-dom/1.0.2") + (synopsis + "Elm's low-level virtual DOM implementation") + (description + "This package provides a virtual DOM implementation that backs Elm's +core libraries for HTML and SVG. You should almost certainly use those +higher-level libraries directly.") + (license license:bsd-3) + (properties '((upstream-name . "elm/virtual-dom")))))