gnu: gsl: Disable numerically unstable test on i686.
[jackhill/guix/guix.git] / TODO
diff --git a/TODO b/TODO
index bb56da0..8d1dfb1 100644 (file)
--- a/TODO
+++ b/TODO
@@ -41,8 +41,10 @@ Like scripts/build-remote.pl in Nix.
 * user interface
 ** Add a package.el (Emacs) back-end
 
-Unfortunately package.el is monolithic, so most likely we’d have to
-write a new one based on it, as opposed to actually using it.
+package.el is quite monolithic, but we may be able to reuse/extend
+‘package-menu-mode’ or at least ‘tabulated-list-mode’.
+
+** add guile-ncurses interface
 
 * extend <origin>
 ** add OpenPGP signatures:
@@ -57,6 +59,12 @@ write a new one based on it, as opposed to actually using it.
 
 * extend <package>
 
+** add ‘recommends’ field
+
+For instance, glibc, binutils, gcc, and ld-wrapper would recommend each other.
+‘guix package -i’ could ask interactively (?), or allow users to follow all or
+none of the recommendations.
+
 ** add a ‘user-environment-hook’
 
 This should specify builder code to be run when building a user
@@ -76,6 +84,7 @@ create a new ‘dir’.
       ("i3" ,p3)))
 #+END_SRC
 
+
 * synchronize package descriptions with GSRC and/or the [[http://directory.fsf.org][FSD]]
 
 Meta-data for GNU packages, including descriptions and synopses, can be
@@ -83,11 +92,8 @@ dumped from the FSD:
 http://directory.fsf.org/wiki?title=GNU/Export&action=purge .
 We could periodically synchronize with that.
 
-* support cross-compilation
-
-Implement ‘package-cross-derivation’, and add the corresponding code in
-‘gnu-build-system’.  Then, actually bootstrap a cross-compilation
-environment–e.g., a cross-GNU environment.
+See http://lists.gnu.org/archive/html/bug-guix/2013-04/msg00120.html for info
+on how to synchronize with GSRC's descriptions.
 
 * add a guildhall build system
 
@@ -95,19 +101,6 @@ 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
 recipes.
 
-* gnu-build-system: produce a ‘debug’ derivation
-
-Set a .gnu_debuglink in the main derivations to point to the sibling
-file name (only the basename, to not retain a dependency on the ‘debug’
-derivation.)
-
-For /nix/store/xyz-foobar/bin/foo, we should have
-/nix/store/abc-foobar-debug/lib/nix/store/xyz-foobar/bin/foo.debug (info
-"(gdb) Separate Debug Files").
-
-Users should have a default GDB setting with ~/.guix-profile/lib/debug
-as their ‘debug-file-directory’.
-
 * build-expression->derivation: define `%system' in the builder
 
 Would allow build expressions to have system-dependent code, like
@@ -123,6 +116,16 @@ Support sophisticated collision handling when building a union: check
 whether the colliding files are identical, honor per-package priorities,
 etc.
 
+* add GUIX_ALLOW_EXPENSIVE_TESTS
+
+Tests that need to download stuff or otherwise take a long time would only be
+run when that is defined.
+
+* add "guix challenge"
+
+Would download a substitute, and compare its contents against a (hopefully
+locally-built) copy.
+
 * guix package
 
 ** add ‘--list-generations’, and ‘--delete-generations’