diff options
Diffstat (limited to 'TODO')
| -rw-r--r-- | TODO | 49 |
1 files changed, 26 insertions, 23 deletions
| @@ -48,17 +48,6 @@ package.el is quite monolithic, but we may be able to reuse/extend | |||
| 48 | 48 | ||
| 49 | ** add guile-ncurses interface | 49 | ** add guile-ncurses interface |
| 50 | 50 | ||
| 51 | * extend <origin> | ||
| 52 | ** add OpenPGP signatures: | ||
| 53 | |||
| 54 | (origin | ||
| 55 | (method http-fetch) | ||
| 56 | (uri "http://.../foo.tgz") | ||
| 57 | (signature-uri (string-append uri ".sig")) | ||
| 58 | (signer-openpgp-fingerprint "...")) | ||
| 59 | |||
| 60 | ** allow <origin> to be a derivation/package or a file | ||
| 61 | |||
| 62 | * extend <package> | 51 | * extend <package> |
| 63 | 52 | ||
| 64 | ** add ‘recommends’ field | 53 | ** add ‘recommends’ field |
| @@ -84,28 +73,45 @@ create a new ‘dir’. | |||
| 84 | ("i3" ,p3))) | 73 | ("i3" ,p3))) |
| 85 | #+END_SRC | 74 | #+END_SRC |
| 86 | 75 | ||
| 76 | * MAYBE use HOP-like escapes to refer to inputs in build-side code | ||
| 87 | 77 | ||
| 88 | * synchronize package descriptions with GSRC and/or the [[http://directory.fsf.org][FSD]] | 78 | Instead of doing things like: |
| 79 | |||
| 80 | #+BEGIN_SRC scheme | ||
| 81 | (inputs `(("foo" ,foo))) | ||
| 82 | (arguments '(#:configure-flags | ||
| 83 | (list (string-append "--with-foo=" | ||
| 84 | (assoc-ref %build-inputs "foo"))))) | ||
| 85 | #+END_SRC | ||
| 86 | |||
| 87 | Allow things like: | ||
| 88 | |||
| 89 | #+BEGIN_SRC scheme | ||
| 90 | (inputs (list foo)) | ||
| 91 | (arguments ~(#:configure-flags | ||
| 92 | (list (string-append "--with-foo=" $foo)))) | ||
| 93 | |||
| 94 | #+END_SRC | ||
| 95 | |||
| 96 | ... where '~' is 'build-quote' and '$' is 'build-unquote'. Better yet, | ||
| 97 | automatically compute the list of references of an expression passed to | ||
| 98 | 'derivation-expression'. | ||
| 99 | |||
| 100 | Use a [[http://dorophone.blogspot.fr/2011/09/scheme-syntax-is-monad.html][monad]] for the syntax. | ||
| 101 | |||
| 102 | * synchronize non-GNU package descriptions with the [[http://directory.fsf.org][FSD]] | ||
| 89 | 103 | ||
| 90 | Meta-data for GNU packages, including descriptions and synopses, can be | 104 | Meta-data for GNU packages, including descriptions and synopses, can be |
| 91 | dumped from the FSD: | 105 | dumped from the FSD: |
| 92 | http://directory.fsf.org/wiki?title=GNU/Export&action=purge . | 106 | http://directory.fsf.org/wiki?title=GNU/Export&action=purge . |
| 93 | We could periodically synchronize with that. | 107 | We could periodically synchronize with that. |
| 94 | 108 | ||
| 95 | See http://lists.gnu.org/archive/html/bug-guix/2013-04/msg00120.html for info | ||
| 96 | on how to synchronize with GSRC's descriptions. | ||
| 97 | |||
| 98 | * add a guildhall build system | 109 | * add a guildhall build system |
| 99 | 110 | ||
| 100 | The Guildhall is Guile’s packaging system. It should be easy to add a | 111 | The Guildhall is Guile’s packaging system. It should be easy to add a |
| 101 | ‘guildhall-build-system’ that does the right thing based on guildhall | 112 | ‘guildhall-build-system’ that does the right thing based on guildhall |
| 102 | recipes. | 113 | recipes. |
| 103 | 114 | ||
| 104 | * build-expression->derivation: define `%system' in the builder | ||
| 105 | |||
| 106 | Would allow build expressions to have system-dependent code, like | ||
| 107 | `glibc-dynamic-linker'. | ||
| 108 | |||
| 109 | * add ‘allowed-references’ in <package> | 115 | * add ‘allowed-references’ in <package> |
| 110 | 116 | ||
| 111 | [[file:~/src/nix/src/libstore/build.cc::if%20(drv.env.find("allowedReferences")%20!%3D%20drv.env.end())%20{][See how Nix implements that internally]]. | 117 | [[file:~/src/nix/src/libstore/build.cc::if%20(drv.env.find("allowedReferences")%20!%3D%20drv.env.end())%20{][See how Nix implements that internally]]. |
| @@ -126,9 +132,6 @@ run when that is defined. | |||
| 126 | Would download a substitute, and compare its contents against a (hopefully | 132 | Would download a substitute, and compare its contents against a (hopefully |
| 127 | locally-built) copy. | 133 | locally-built) copy. |
| 128 | 134 | ||
| 129 | * guix package | ||
| 130 | |||
| 131 | ** add ‘--list-generations’, and ‘--delete-generations’ | ||
| 132 | 135 | ||
| 133 | * guix build utils | 136 | * guix build utils |
| 134 | ** MAYBE Change ‘ld-wrapper’ to add RPATH for libs passed by file name | 137 | ** MAYBE Change ‘ld-wrapper’ to add RPATH for libs passed by file name |
