Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
G
Guix
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Iterations
Wiki
Requirements
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Package registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
ogs
inf
Guix
Commits
5bf6b86f
Commit
5bf6b86f
authored
10 years ago
by
Ludovic Courtès
Browse files
Options
Downloads
Patches
Plain Diff
doc: Update 'ROADMAP'.
Suggested by Omar Radwan <toxemicsquire4@gmail.com>. * ROADMAP: Rewrite.
parent
70e629f5
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
ROADMAP
+64
-54
64 additions, 54 deletions
ROADMAP
with
64 additions
and
54 deletions
ROADMAP
+
64
−
54
View file @
5bf6b86f
...
...
@@ -2,7 +2,7 @@
#+TITLE: Tentative GNU Guix Road Map
Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
Copyright © 2012, 2013, 2014
, 2015
Ludovic Courtès <ludo@gnu.org>
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
...
...
@@ -17,56 +17,66 @@ The goals of the GNU Guix project are two-fold:
GNU/Linux and possibly other GNU variants, with a focus on the
promotion and tight integration of GNU components–the GNU system.
This document lists milestones toward these goals.
The timeline below was written at the end of Dec. 2012. An updated and more
detailed list of the remaining milestones was posted at
https://lists.gnu.org/archive/html/guix-devel/2013-12/msg00120.html .
The actual timeline was of course slightly different than initially
envisioned, and so was the feature set–things like cross-compilation support
and the MIPS64 port were not planned back then. See the news section at
http://www.gnu.org/software/guix/ and ‘NEWS’ for the release history.
* GNU Guix 0.1: Jan. 2013 (was: Dec. 2012)
** basic package management facilities
Including install, upgrade, remove, roll-back, and search.
** self-contained user-land distribution
- GNU/Linux-only, i686 and x86_64; optionally mipsel64
- ~100 non-X11 packages
** maybe integrated Nix code
* GNU Guix 0.2: Feb./Mar. 2013
** improved package management features
- user-environment hooks
- sophisticated handling of collisions when building a union (package
priorities, etc.)
** [[file:TODO::*add%20guix-pull][guix-pull tool]] to quickly update Guix and GNU for normal users
** support for fetching pre-built binaries
- this is known as the "binary-cache substituter" in Nix parlance
** auto-update facility available for GNU packages
** more packages
- Xorg
- Emacs
* GNU Guix 0.9: June 2013
** bootable GNU/Linux-Libre distro
** high-level OS configuration descriptive EDSL, à la NixOS
* GNU Guix 1.0: September 2013 (GNU anniversary release)
** bootable GNU/Linux-Libre distro with non-GUI installer
** usable for a range of hacker-style uses
Since its inception, the project has gone a long way towards that goal. Below
is a list of items we want for version "1.0" of the Guix System Distribution.
There will be a few 0.x releases by then to give the new features more
exposure and testing.
You're welcome to discuss this road map on guix-devel@gnu.org or #guix on
Freenode!
* Features scheduled for 1.0
- larger & more robust build farm
+ we need a powerful, dedicated front-end
+ armhf-linux build machine
+ leave Hydra in favor of 'guix publish' + custom code?
- more OS features
+ LVM support
+ encrypted root
+ configurable name service switch
+ whole-system unit tests, using VMs
- more service definitions
+ mcron, postfix(?), wicd(?), etc.
- better 'guix system'
+ 'reconfigure' should be able to restart non-essential services
+ support for '--list-generations' and '--delete-generations'
- better 'guix pull'
+ using Git to fetch the source instead of re-downloading everything
+ build more quickly
+ install new .mo files and new manual
+ authentication of the Guix source: use signed commits?
- simplified, purely declarative service list in 'operating-system'
+ it should be possible to inspect the service instance declarations and
settings
- GUIs
+ integrate guix-web?
+ guile-ncurses installer?
- 'guix publish'?
* Features for later
- complete GNU/Hurd port
- use content-based addressing when downloading substitutes to reduce
bandwidth requirements
+ design nar v2 format where file contents are replaced by their hashes
+ leverage /gnu/store/.links
- binary origin tracking
+ keep signatures in sqlite.db
+ preserve signatures upon import/export
- peer-to-peer distribution of updates (GNUnet?)
- more deterministic builds
+ identify & fix sources of non-determinism in builds
+ strengthen guix-daemon containers to further increase reproducibility
+ trusting-trust: bootstrap with different tool chains
+ fixed-point: re-bootstrap until fixed point is reached
+ distributed validation: compare contents of store items with others
* resist a hydra.gnu.org compromise
- reproducible containers: mix of 'guix environment' and 'guix system vm'
- execute code with least privilege
+ build containers like guix-daemon does
+ provide a Plash-like interface in Bash
- daemon rewritten in Guile
- more dmd integration
+ monitor network interfaces and start/stop events based on that
+ include a DHCP client written in Scheme
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment