Rewrote TODO to make it clearer and added a ton of new items to it.
authorChris Gianelloni <wolf31o2@wolf31o2.org>
Thu, 8 Jan 2009 23:45:13 +0000 (15:45 -0800)
committerChris Gianelloni <wolf31o2@wolf31o2.org>
Thu, 8 Jan 2009 23:45:13 +0000 (15:45 -0800)
ChangeLog
TODO

index 330a265119f0ee9a2f99b0d578e33ec3caaebd76..e89f458e44cca5eb6187736fd1c439c3540687f2 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,6 +1,10 @@
-# Copyright 2002-2009 Gentoo Foundation; 2008 Chris Gianelloni, Andrew Gaffney
+# Copyright 2002-2008 Gentoo Foundation
+# Copyright 2008-2009 Chris Gianelloni, Andrew Gaffney
 # Distributed under the GPL v2
 
+  08 Jan 2009; Chris Gianelloni <wolf31o2@wolf31o2.org> TODO:
+  Rewrote TODO to make it clearer and added a ton of new items to it.
+
   02 Jan 2009; Andrew Gaffney <agaffney@gentoo.org>
   modules/generic_stage_target.py:
   screw you python...hard
diff --git a/TODO b/TODO
index b221f297b58669d62322d46885ec16909267b1d1..8537fae35fb80a5071bed1e1721beb2ca8a8147b 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,26 +1,81 @@
+This file is a rough list of changes that need to be made to catalyst.  If you
+have questions about any of these items, or wish to help with development, send
+them to the gentoo-catalyst@lists.gentoo.org mailing list.  Bug reports should
+be filed at http://tinyurl.com/79slrk (http://bugs.gentoo.org) under the
+Catalyst component.
+
+Global:
 - Remove spec_prefix from all exported variables
-- sign materials automatically
-- create logs
-- send emails
-- add multiple target support
+  - variables without spec_prefix are global and used in all targets
+  - variables with spec_prefix only apply to that target
+- add multiple target support for spec files
+  - target: stage1
+  - targets: stage1 stage2 stage3 stage4 livecd netboot
+- add more validation and checking for code which affects both host and target
+  - setup defaults if host isn't configured
+  - allow configuration globally (catalyst.conf), per-spec, or per-target
+  - ccache
+    - check host settings (size, location, etc) and restore them when done
+  - distcc
+    - check host settings (distcc_hosts, etc) and restore them when done
+  - icecream
+    - check host settings (icecream_hosts, etc) and restore them when done
+- add support for new portage features
+  - Cache backends
+    - metadata_overlay
+       - sqlite
+  - Jobs
+  - Load Average
+  - Dependency checking
+    - Deep checking
+       - Complete Graph
+       - Build-time dependencies
+  - USE changes
+    - newuse versus changed-use
+  - Failure detection
+    - Add --keep-going support
+- detect GCC version in seed stages for supported settings (CFLAGS)
+
+Config:
+- security
+  - sign materials automatically
+- logging
+  - add logging support
+    - file-based
+       - syslog
+  - add notification capabilities
+    - email
+       - snmp trap
 - separate out options that control catalyst versus the package manager
-- add a new livecd/type for livedvd
-  - make livedvd type perform several actions automatically
+  - options key should specify catalyst options
+  - new keys for package managers
+    - portage_features
+       - pkgcore_features
+
+Targets:
+- add support for livedvd
+  - do we use livecd/type or something new
+  - make livedvd type perform several actions automatically, if configured
     - auto-fetch distfiles
        - automatically pull stages
-- check that distcc_hosts is set before enabling distcc
-- allow setting of distcc_hosts in catalyst.conf with override in the specs
-- check ccache settings, such as size, and ensure we don't overwrite them
-- perform user management via a loop in livecd-stage2
-- add portage jobs support
-  - --jobs
-  - --keep-going
-  - --load-average
-- perform GCC version detection in seed stages to determine supported settings
-- build bootloaders for targets on-demand, rather than using pre-built tarballs
-- support for placeholders in spec file, both automatic and user-specifed
-  - %DATESTAMP% could be automatic
-  - %BUILDDIR% would be nice for livecd/iso instead of specifying full path
-- switch to "mix-in" cdtar files
-  - rebuilding 5 cdtar files to bump memtest86+ is stupid
-  - livecd/cdtar: isolinux elilo memtest86+
+         - local disk via absolute or relative path
+         - URI
+- change user creation to be more flexible
+  - stage4 and netboot support
+- build boot software for targets on-demand
+  - removes cdtar requirement
+  - allows one to specify multiple bootloaders
+    - boot/loader: grub elilo
+       - netboot/boot/loader: pxelinux elilo
+       - livecd/boot/loader: isolinux elilo
+  - add ability to specify other "bootables" to build/install, like memtest86+
+       - livecd/boot/image: memtest|/path/to/image
+       - do we also need a way to specify an initrd with this?
+- add variable support for spec files
+  - automatic substitution
+    - %DATESTAMP%
+       - %BUILDDIR%
+  - user-defined
+    - %DISTRIBUTION%
+       - %AUTHOR%
+