| 1 | -*- mode: org; coding: utf-8; -*- |
| 2 | |
| 3 | #+TITLE: Tentative GNU Guix Road Map |
| 4 | |
| 5 | Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org> |
| 6 | |
| 7 | Copying and distribution of this file, with or without modification, |
| 8 | are permitted in any medium without royalty provided the copyright |
| 9 | notice and this notice are preserved. |
| 10 | |
| 11 | The goals of the GNU Guix project are two-fold: |
| 12 | |
| 13 | - to build a purely functional package manager, based on Nix and |
| 14 | Guile; |
| 15 | |
| 16 | - to use it to build a practical 100% free software distribution of |
| 17 | GNU/Linux and possibly other GNU variants, with a focus on the |
| 18 | promotion and tight integration of GNU components–the GNU system. |
| 19 | |
| 20 | This document lists milestones toward these goals. |
| 21 | |
| 22 | The timeline below was written at the end of Dec. 2012. An updated and more |
| 23 | detailed list of the remaining milestones was posted at |
| 24 | https://lists.gnu.org/archive/html/guix-devel/2013-12/msg00120.html . |
| 25 | |
| 26 | The actual timeline was of course slightly different than initially |
| 27 | envisioned, and so was the feature set–things like cross-compilation support |
| 28 | and the MIPS64 port were not planned back then. See the news section at |
| 29 | http://www.gnu.org/software/guix/ and ‘NEWS’ for the release history. |
| 30 | |
| 31 | * GNU Guix 0.1: Jan. 2013 (was: Dec. 2012) |
| 32 | |
| 33 | ** basic package management facilities |
| 34 | |
| 35 | Including install, upgrade, remove, roll-back, and search. |
| 36 | |
| 37 | ** self-contained user-land distribution |
| 38 | |
| 39 | - GNU/Linux-only, i686 and x86_64; optionally mipsel64 |
| 40 | - ~100 non-X11 packages |
| 41 | |
| 42 | ** maybe integrated Nix code |
| 43 | |
| 44 | * GNU Guix 0.2: Feb./Mar. 2013 |
| 45 | |
| 46 | ** improved package management features |
| 47 | |
| 48 | - user-environment hooks |
| 49 | - sophisticated handling of collisions when building a union (package |
| 50 | priorities, etc.) |
| 51 | |
| 52 | ** [[file:TODO::*add%20guix-pull][guix-pull tool]] to quickly update Guix and GNU for normal users |
| 53 | ** support for fetching pre-built binaries |
| 54 | |
| 55 | - this is known as the "binary-cache substituter" in Nix parlance |
| 56 | |
| 57 | ** auto-update facility available for GNU packages |
| 58 | |
| 59 | ** more packages |
| 60 | |
| 61 | - Xorg |
| 62 | - Emacs |
| 63 | |
| 64 | * GNU Guix 0.9: June 2013 |
| 65 | |
| 66 | ** bootable GNU/Linux-Libre distro |
| 67 | ** high-level OS configuration descriptive EDSL, à la NixOS |
| 68 | |
| 69 | * GNU Guix 1.0: September 2013 (GNU anniversary release) |
| 70 | |
| 71 | ** bootable GNU/Linux-Libre distro with non-GUI installer |
| 72 | ** usable for a range of hacker-style uses |