Browse Source

Update 'TODO'.

Ludovic Courtès 7 years ago
1 changed files with 26 additions and 23 deletions
  1. +26

+ 26
- 23
TODO View File

@@ -48,17 +48,6 @@ package.el is quite monolithic, but we may be able to reuse/extend

** add guile-ncurses interface

* extend <origin>
** add OpenPGP signatures:

(method http-fetch)
(uri "http://.../foo.tgz")
(signature-uri (string-append uri ".sig"))
(signer-openpgp-fingerprint "..."))

** allow <origin> to be a derivation/package or a file

* extend <package>

** add ‘recommends’ field
@@ -84,28 +73,45 @@ create a new ‘dir’.
("i3" ,p3)))

* MAYBE use HOP-like escapes to refer to inputs in build-side code

* synchronize package descriptions with GSRC and/or the [[][FSD]]
Instead of doing things like:

#+BEGIN_SRC scheme
(inputs `(("foo" ,foo)))
(arguments '(#:configure-flags
(list (string-append "--with-foo="
(assoc-ref %build-inputs "foo")))))

Allow things like:

#+BEGIN_SRC scheme
(inputs (list foo))
(arguments ~(#:configure-flags
(list (string-append "--with-foo=" $foo))))

... where '~' is 'build-quote' and '$' is 'build-unquote'. Better yet,
automatically compute the list of references of an expression passed to

Use a [[][monad]] for the syntax.

* synchronize non-GNU package descriptions with the [[][FSD]]

Meta-data for GNU packages, including descriptions and synopses, can be
dumped from the FSD: .
We could periodically synchronize with that.

See for info
on how to synchronize with GSRC's descriptions.

* add a guildhall build system

The Guildhall is Guile’s packaging system. It should be easy to add a
‘guildhall-build-system’ that does the right thing based on guildhall

* build-expression->derivation: define `%system' in the builder

Would allow build expressions to have system-dependent code, like

* add ‘allowed-references’ in <package>

[[file:~/src/nix/src/libstore/"allowedReferences")%20!%3D%20drv.env.end())%20{][See how Nix implements that internally]].
@@ -126,9 +132,6 @@ run when that is defined.
Would download a substitute, and compare its contents against a (hopefully
locally-built) copy.

* guix package

** add ‘--list-generations’, and ‘--delete-generations’

* guix build utils
** MAYBE Change ‘ld-wrapper’ to add RPATH for libs passed by file name