Skip to content

Latest commit

 

History

History
124 lines (94 loc) · 4.26 KB

TODO

File metadata and controls

124 lines (94 loc) · 4.26 KB

What’s left to do?

-*- mode: org; coding: utf-8; -*-

Copyright © 2012, 2013, 2014 Ludovic Courtès <[email protected]> Copyright © 2019 Mathieu Othacehe <[email protected]>

Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.

MAYBE Add a substituter that uses the GNUnet DHT or libswift

Would be neat if binaries could be pushed to and pulled from the GNUnet DHT or rather libswift (since DHTs aren’t suited for large payloads). Guix users would sign their binaries, and define which binaries they trust.

Use UPnP and similar to traverse NAT, like ‘filegive’ does.

user interface

add guile-ncurses interface

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 environment with ‘guix-package’. For instance, Texinfo’s hook would create a new ‘dir’.

extend ‘propagated-build-inputs’ with support for multiple outputs

(outputs '("out" "include"))
(propagated-build-inputs
  `(((("i1" ,p1 "o1")
      ("i2" ,p2))
     => "include")
    ("i3" ,p3)))

synchronize non-GNU package descriptions with the FSD

Meta-data for GNU packages, including descriptions and synopses, can be dumped from the FSD: http://directory.fsf.org/wiki?title=GNU/Export&action=purge . We could periodically synchronize with that.

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 recipes.

union

Support sophisticated collision handling when building a union: 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.

guix build utils

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

MAYBE Add equivalent to chrpath that uses guile-dlhacks

MAYBE Add a hash-rewriting thing for deep dependency replacement without rebuild

See Shea Levy’s `replace-dependency’ in Nixpkgs.

distro

port to GNU/Hurd, aka. ‘i686-gnu’

Problems include that current glibc releases do not build on GNU/Hurd. In addition, there haven’t been stable releases of GNU Mach, MiG, and Hurd, which would be a pre-condition.

Installer

Fix impossibility to restart on error after cow-store has been started

See https://lists.gnu.org/archive/html/guix-devel/2018-12/msg00161.html.

  • Force reboot upon installer failure
  • Unshare the installer process
  • Run the installer process in a separate namespace

Partitioning

Add RAID support

Add more partitioning schemes

The actual schemes are taken from Debian Installer but some are not implemented yet: like “Separate partitions for /home /var and /tmp”.

Replace wait page “Partition formating is in progress, please wait”

Create a new waiting page describing what’s being done:

[ 20% ] Running mkfs.ext4 on /dev/sda2 …

[ 40% ] Running mkfs.ext4 on /dev/sda3 …

Add a confirmation page before formating/partitioning

Desktop environments

Allow for no desktop environments

Propose to choose between “headless server” and “lightweight X11” in a new page.

Add services selection feature

Add a services page to the configuration. Ask for services to be installed like SSH, bluetooth, TLP in a checkbox list?

Locale and keymap

Try to guess user locale and keymap by probing BIOS or HW (dmidecode)

Timezone

Regroup everything in one single page

Under the form: (UTC + 1) Europe/Paris (UTC + 2) Africa/Cairo …

Display issue

Investigate display issue described here:

https://lists.gnu.org/archive/html/guix-devel/2019-01/msg00305.html