# ChangeLog for Gentoo Linux Installer # Copyright 2005-2008 Gentoo Foundation; Distributed under the GPL v2 # $Id: $ 03 Apr 2008; Andrew Gaffney src/GLIArchitectureTemplate.py: Create /dev/tty1 with dynamic stage3 28 Feb 2008; Andrew Gaffney src/GLIArchitectureTemplate.py, src/GLIPortage.py, src/fe/dialog/gli-dialog.py: Switch to running vdb_to_fake_binrepo.py instead of reading systempkgs.txt remove all references to systempkgs.txt 28 Feb 2008; Andrew Gaffney -src/runtimedeps.py, +src/vdb_to_fake_binrepo.py: Add vdb_to_fake_binrepo.py script from the always awesome zmedico 03 Dec 2007; Andrew Gaffney src/GLIPortage.py: force livecd and bindist USE 03 Dec 2007; Andrew Gaffney src/GLIArchitectureTemplate.py: add in metadata_overlay for faster dep calculation 26 Nov 2007; Andrew Gaffney src/fe/gtk/ExtraPackages.py: comment out kernelpkgs stuff in gtkfe 25 Nov 2007; Preston Cody src/fe/dialog/gli-dialog.py: adding commmand-line option for advanced mode which allows full functionality. 18 Nov 2007; Preston Cody src/fe/dialog/gli-dialog.py: attempting to throw in kernpkgs support. will see how this goes. 18 Nov 2007; Andrew Gaffney src/fe/gtk/OtherSettings.py: pre-create conf.d/xdm 17 Nov 2007; Andrew Gaffney src/GLIUtility.py: use proper file name for kernel packages 17 Nov 2007; Andrew Gaffney src/fe/gtk/Networking.py: s/install_logger/install_logging_daemon/ 17 Nov 2007; Andrew Gaffney src/fe/gtk/LocalMounts.py: import GLIUtility 17 Nov 2007; Andrew Gaffney src/fe/gtk/gtkfe.py: start with Partitioning screen 17 Nov 2007; Andrew Gaffney src/fe/gtk/ExtraPackages.py, src/fe/gtk/LocalMounts.py, src/fe/gtk/Networking.py, src/fe/gtk/OtherSettings.py, src/fe/gtk/RootPass.py, src/fe/gtk/Timezone.py, src/fe/gtk/gtkfe.py: rearrange a bit of code for gtkfe networkless-only transition 17 Nov 2007; Andrew Gaffney src/GLIUtility: add get_kernpkgs_from_cd() function 17 Nov 2007; Andrew Gaffney src/GLIInstallProfile.py: add xdm, gdm, and kdm to package list 17 Nov 2007; Andrew Gaffney src/fe/dialog/gli-dialog.py: modify root mountpoint check in gli-dialog to use a for/else and notify the user why they're not being allowed to leave the screen 17 Nov 2007; Andrew Gaffney src/templates/x86ArchitectureTemplate.py: move around parentheses to fix bug 179528 17 Nov 2007; Andrew Gaffney src/fe/gtk/InstallFailed.py: correct bugzilla location for bug 178144 17 Nov 2007; Andrew Gaffney src/GLIArchitectureTemplate.py, src/fe/gtk/gtkfe.py: fix error in debug mode for bug 178475 force install_type to networkless for gtkfe 17 Nov 2007; Andrew Gaffney src/GLIArchitectureTemplate.py: set TIMEZONE in /etc/conf.d/clock for bug 158882 17 Nov 2007; Andrew Gaffney src/GLIArchitectureTemplate.py, src/GLIClientController.py, src/fe/gtk/InstallFailed.py, src/fe/gtk/gtkfe.py: make install log location consistent throughout code 'View Log' button in gtkfe now looks for active and failed log 04 Sep 2007; Chris Gianelloni src/GLIInstallProfile.py: Added x11-themes/gentoo-artwork-livecd to the list of extra packages. 04 Jan 2007; Preston Cody ClientController: took out the preinstall steps. these will now be handled by the frontends. The actual code for the steps can be put in GLIUtility if necessary. IP: Took out partitioning. Added mounts. Moved root mount point over from CF Removed RP-PPPoE. was never used. AT: reordered functions. removed references to the client-config fixed fstab and other locations that used mountpoints to use the new mounts. removed unused rc.conf function. other smaller touchups. gli-dialog: install_profile() to self._install_profile fix reference to arch instaed of self._arch x86AT: fixed code to use mounts instead of partitioning. 01 Jan 2007; Preston Cody fixing all instances of WINDOWSKEYS to WINDOWKEYS added space in AT debug line. more general updates in an effort to get the code functional 29 Oct 2006; Preston Cody gli-dialog: more rearranging of code. Tossed the review menu and not calling show_settings not sure how those are going to turn out just yet. 22 Oct 2006; Andrew Gaffney src/Partitioning.py: first round of refactoring for Partitioning.py (was GLISD) 22 Oct 2006; Preston Cody gli-dialog: added in the rest of the code from GLIGenDialog. will start picking at it now. moved the early questions such as advanced_mode/networkless into functions in the GLIDialog class. 21 Oct 2006; Preston Cody ClientController and gli-dialog and GLIGenDialog: removing GenDialog, this code will be put into gli-dialog moving some ClientController code into gli-dialog as well. this is only the beginning :) #------------------------------------------ # GLI SWITCHES TO SVN. 15 Sep 2006; Andrew Gaffney src/GLIArchitectureTemplate.py: use _wait_for_device_node() any place we were looping and checking before 13 Sep 2006; Andrew Gaffney src/GLIArchitectureTemplate.py: add _wait_for_device_node() src/GLIPortage.py: raise an exception in get_deps() if pkglist is empty -k option to install livecd-kernel to shut up wolf31o2 :P 11 Sep 2006; Andrew Gaffney src/GLIArchitectureTemplate.py: break after installing 1 mta in install_mta() 10 Sep 2006; Preston Cody src/GLIGenDialog.py: rewrote how the USE flags work so that they are written correctly in relation to the system's USE flags. added a while condition on setting a user password src/GLIArchitectureTemplate.py: adding a self._mounted_devices to keep track of mounted partitions. When cleaning up, only unmount these partitions. Not yet tested. 10 Sep 2006; Andrew Gaffney src/GLIStorageDevice.py: properly identify apple_bootstrap partitions 9 Sep 2006; Andrew Gaffney src/GLIStorageDevice.py: pay attention to 'ignoredparts' when reading partition table 3 Sep 2006; Andrew Gaffney src/GLIArchitectureTemplate.py: force conversion of 'mb' to long 2 Sep 2006; Preston Cody Lots of internationalization fixes. Point to a translation path called languages in the dialog directory. Generated and added .pot files. Added gettext to GLIIP for package descriptions. 01 Sep 2006; Chris Gianelloni src/GLIInstallProfile.py: Added some more applications to the Extra Packages list. 1 Sep 2006; Andrew Gaffney src/templates/ppcArchitectureTemplate.py: this doesn't need to inherit from x86AT or create an infinite loop by calling its own __init__() src/GLIArchitectureTemplate.py,src/templates/x86ArchitectureTemplate.py: move partitioning code to GLIAT 31 Aug 2006; Andrew Gaffney src/GLIArchitectureTemplate.py: pass quotes_around_value=False when adding default route to conf.d/net 7 Aug 2006; Andrew Gaffney src/GLIArchitectureTemplate.py: copy backup custom.conf from livecd if present *GLI-0.4 (31 Jul 2006) 31 Jul 2006; Chris Gianelloni bin/installer: Finally properly fixing the installer script. Thanks to Andrew Gaffney for doing the testing and coming up with the patch. 29 Jul 2006; Andrew Gaffney src/GLIArchitectureTemplate.py: skip blank entries/files in update_config_files() 28 Jul 2006; Andrew Gaffney src/templates/x86ArchitectureTemplate.py: move logical clipping logic a bit 27 Jul 2006; Chris Gianelloni bin/installer: I've commented out most of the code that used launch. It wasn't working and we don't have the time to fix it before the release. I'll look into it after the release and make it more robust and flexible. 27 Jul 2006; Andrew Gaffney src/templates/x86ArchitectureTemplate.py: clip logical partition at end of extended 20 Jul 2006; Chris Gianelloni src/GLIInstallProfile.py: Added a few more applications to the list of extra packages to be merged, all from various GRP sets. 19 Jul 2006; Chris Gianelloni bin/installer: Added launch variable to the end of each try-run with auth, which should cause this to function properly. Of course, more testing is needed. 19 Jul 2006; Chris Gianelloni bin/installer: Fix a missed space in the installer script. 30 Jul 2006; Preston Cody : src/GLIClientConfiguration.py: adding 'None' with capital N so that the frontends can parse the network type 17 Jul 2006; Andrew Gaffney : src/GLIClientController.py: log version-stamp 13 Jul 2006; Chris Gianelloni bin/installer: Updated the installer script to allow specifying the front-end to run from the command line. Currently, it only supports dialog and gtk. It still needs some testing, however. 9 July 2006; Preston Cody src/GLIGenDialog.py: make lilo only show up for x86 if non-networkless 25 Jun 2006; Preston Cody src/GLIGenDialog.py: adding code to auto-add doscsi if a scsi drive detected. this code is also in the gtkfe already 24 Jun 2006; Andrew Gaffney src/GLIPortage.py: pass proper PORTAGE_TMPDIR 17 Jun 2006; Andrew Gaffney src/GLIUtility.py: fix list_mirrors() to ignore lines that don't end on the same line 17 Jun 2006; Preston Cody : Added code to the mta step in AT to parse the install packages list and look for mtas and if it finds it emerge it. Initial attempt at moving extra_packages early in the setup to only show local USE flags relating to those packages. .. abandoned local USE project. no right way to do it. 9 Jun 2006; Andrew Gaffney src/GLIUtility.py: minor tweak to regex for parsing mirrors.xml 23 May 2006; Andrew Gaffney src/templates/x86ArchitectureTemplate.py: make use of strict_start and strict_end in partition recreation 15 May 2006; Andrew Gaffney src/templates/x86ArchitectureTemplate.py: add strict_start and strict_end parameters to _add_partition() add _find_current_minor_for_part() function to help with resizing fix logical/extended logic in _partition_delete_step() in _partition_resize_step(), delete, recreate at new size, resize, delete call resize2fs with no size argument so it fills entire partition more logging only delete, recreate, resize, delete if growing pass new size to resize2fs in K 9 May 2006; Andrew Gaffney src/GLIStorageDevice.py: call reorder_minors() from tidy_partitions() instead of set_partitions_from_disk() add code to reorder_minors() to take extended/logical into consideration with non-free partitions 30 Apr 2006; Preston Cody : added a check of the length of the directory in /usr/src if under 6 characters should fix bug 131809 19 Apr 2006; Andrew Gaffney src/GLIArchitectureTemplate.py: automatically emerge splashutils and splash-themes-livecd if kernel_bootsplash and livecd-kernel 16 Apr 2006; Preston Cody src/GLIGenDialog.py: change temp_use="-* " to temp_use="" because apparantly it's a bad idea to -* 15 Apr 2006; Andrew Gaffney src/GLIInstallProfile.py: change kernel-modules to not be so stupid 9 Apr 2006; Preston Cody : GLIMD: fix display problem with execute.pyhtml. make tables better. 8 Apr 2006; Andrew Gaffney src/GLIInstallProfile.py: fix handling of int/float for minor src/templates/x86ArchitectureTemplate.py: save/restore partition name src/GLIStorageDevice.py: support for partition name 8 Apr 2006; Preston Cody : touchups to add_profile in GLIMD to link to webgli add a save to GLIMD profile button in webgli's saveprofile gliserv.py: initial attempt at custom networking info per client. hostname support only. 5 Apr 2006; Andrew Gaffney : src/net/server/html/webgli/partitioning[234].pyhtml: small fixes for new partioning code 2 Apr 2006; Andrew Gaffney src/GLIClientController.py: record PID of secondary thread 1 Apr 2006; Andrew Gaffney src/GLIGenDialog.py: small fix for new partitioning code 30 Mar 2006; Andrew Gaffney src/GLIStorageDevice.py: add get_devnode() fix up detect_devices() to detect cciss/ida arrays src/templates/x86ArchitectureTemplate.py: use get_devnode() instead of figuring out the devnode skip first 3 steps if partition layout hasn't changed wipe disk and create new disklabel before recreating partitions src/GLIArchitectureTemplate.py: use get_devnode() in local mount and fstab stuff 26 Mar 2006; Andrew Gaffney src/GLIStorageDevice.py: change detect_devices() to handle change in sysfs in 2.6.16 (from lxnay) 25 Mar 2006; Andrew Gaffney src/templates/x86ArchitectureTemplate.py: continue breakup/cleanup of partitioning code 24 Mar 2006; Andrew Gaffney src/GLIStorageDevice.py: set disklabel to default for arch when clearing the partition table src/templates/x86ArchitectureTemplate.py: complete rewrite of first and second passes 22 Mar 2006; Andrew Gaffney src/GLIStorageDevice.py, src/templates/x86ArchitectureTemplate.py: allow iterating over Device object to get partitions 21 Mar 2006; Andrew Gaffney src/GLIStorageDevice.py: allow access to Device object like a dict 20 Mar 2006; Andrew Gaffney src/GLIStorageDevice.py: allow access to Partition object like a dict 16 Mar 2006; Andrew Gaffney src/templates/x86ArchitectureTemplate.py: fail if any filesystems are mounted on the device being partitioned 14 Mar 2006; Andrew Gaffney src/GLIStorageDevice.py: reorder minor numbers when loading partitions from disk to match the physical partition order 13 Mar 2006; Andrew Gaffney src/GLIStorageDevice.py: overhaul for supporting mac disklabels and partitions out of disk order remove free space from inside extended partition when extended is removed 13 Mar 2006; Chris Gianelloni +bin/installer, +bin/installer-dialog, +bin/installer-gtk, +docs/gli.png, +docs/gli-dialog.png, +src/misc/installer-dialog.desktop, +src/misc/installer-faq.desktop, +src/misc/installer-gtk.desktop: Added bash scripts, icons, and desktop entries from the ebuild to make my life easier. 10 Mar 2006; Andrew Gaffney src/GLIStorageDevice.py: raise an exception if the existing partitions are out of disk order look for minors out of order instead of disk position 8 Mar 2006; Preston Cody : src/fe/dialog/gli-dialog and src/GLIGenDialog: added networkless mode to gli-dialog. 6 Mar 2006; Preston Cody : src/templates/x86AT: add windows detection code for grub. untested. 6 Mar 2006; Andrew Gaffney src/templates/x86ArchitectureTemplate.py: bootloader and partitioning external commands log to compile_output.log wait for device node to exist before resizing add -v to ntfsresize command src/GLIStorageDevice.py: return start/end with ip structure pad min ntfs size by 50 MB just to be safe src/GLIArchitectureTemplate.py: only install filesystem tools for partitions with a mountpoint 5 Mar 2006; Preston Cody : add error catching and text to saving profile dialogs 4 Mar 2006; Andrew Gaffney src/GLIPortage.py: create /tmp, /var/tmp, and /var/lib/portage with proper permissions src/templates/x86ArchitectureTemplate.py: fix checks for changed partitions so they will actually get deleted 3 Mar 2006; Andrew Gaffney src/GLIClientController.py: slightly better error handling for pre-install failures 2 Mar 2006; Andrew Gaffney src/templates/x86ArchitectureTemplate.py: proper return code checking for ext2/3 resizing 28 Feb 2006; Andrew Gaffney src/GLIClientController.py: accept 'none' as well as 'null' for network type src/GLIArchitectureTemplate.py: ignore extended partitions in mount_local_partitions() src/templates/x86ArchitectureTemplate.py: use get_ordered_partition_list() instead of keys().sort() for new_part_list check to make sure start sector for primary isn't less than end sector for previous extended src/GLIClientController.py: write dns servers to /etc/resolv.conf 27 Feb 2006; Andrew Gaffney : src/GLIPortage.py: copy_pkg_to_chroot() uses compile_output.log for command output 23 Feb 2006; Andrew Gaffney : only keep a 1000 line 'scrollback' buffer for the compile output and log file 20 Feb 2006; Andrew Gaffney : src/GLIPortage.py: add code make GLIPortage.py capable of being run stand-along for dynamic stage3 generation and copying packages in a GRP-ish way grp code fixups 17 Feb 2006; Andrew Gaffney : src/GLIPortage.py: ignore blank packages passed to get_deps() and emerge() 14 Feb 2006; Andrew Gaffney : src/GLIUtility.py: add get_chosts() function *GLI-0.3 (12 Feb 2006) 12 Feb 2006; Andrew Gaffney : src/templates/x86ArchitectureTemplate.py: pull old start/end sector values from somewhere that actually has them add logic for extended partition to code that makes sure new end sector doesn't overlap start sector of next partitions don't freak out if partition can't be deleted 11 Feb 2006; Andrew Gaffney : src/GLIPortage.py: run env-update at the end of copy_pkg_to_chroot() 10 Feb 2006; Andrew Gaffney : src/templates/x86ArchitectureTemplate.py: I'm a complete fscking dumbass. I recorded the end sector for partitions that weren't being touched, but I never used it when recreating them...the end was calculated from the size in MB instead :/ 9 Feb 2006; Andrew Gaffney : src/GLIArchitectureTemplate.py: pre-create /lib64 dir and /lib -> /lib64 symlink if it exists on livecd copy /etc/{passwd,group,shadow} from livecd to chroot sans 'gentoo' src/GLIPortage.py: use tar to transfer files from image dir to /mnt/gentoo instead of 'cp -a' src/GLIStorageDevice.py,src/GLIInstallProfile.py,src/templates/x86AT.py: 'resized' flag 8 Feb 2006; Andrew Gaffney : src/GLIPortage.py: short circuit and check vdb directly if package begins with '=' 8 Feb 2006; Preston Cody : added more packages to extra_packages list in IP 6 Feb 2006; Andrew Gaffney : src/templates/x86ArchitectureTemplate.py: 10 tries to create filesystem instead of 3 src/GLIPortage, src/GLIArchitectureTemplate.py: ignore_missing flag for copy_pkg_to_chroot() 5 Feb 2006; Andrew Gaffney : src/GLIPortage.py: copy_pkg_to_chroot() uses $ROOT/vdb for ROOT= installs 26 Jan 2006; Andrew Gaffney : src/net/server/gliserv.py: fix handling of 404 for real files src/net/server/GLIServerProfile.py: look for 'hostname' in attributes instead of 'name' 22 Jan 2006; Andrew Gaffney : src/SimpleXMLParser.py: initial support for 'include' in XML files src/GLIStorageDevice.py: initial support for % src/GLIClientController.py: add debugging statements to pre-install steps 15 Jan 2006; Preston Cody : webgli/configfiles: check for key in etc_files['rc.conf'] to fix key error webgli/timezone: small fix. webgli/extrapackages: list-type fix webgli/services: same glimd: add/edit_client updates. 12 Jan 2006; Preston Cody : added configure.pyhtml to glimd. minor changes to top and add_client. fixed up showargs. added execute.pyhtml changed register clients line in gliserv for name->hostname. updated TODO. 10 Jan 2006; Preston Cody : src/net/server/*: added add/del/edit client/profile.pythml for glimd. updated templates, showclients, and gliserv. 10 Jan 2006; Andrew Gaffney : src/net/server/*: stupid threading module... 8 Jan 2006; Preston Cody : AT: rc.conf -> conf.d/clock 7 Jan 2006; Andrew Gaffney : src/GLIPortage.py: show 'Calculating dependencies for ...' in subprogress bar at beginning of emerge() src/GLIArchitectureTemplate.py: copy /etc/X11/gdm/gdm.conf.old into chroot if /etc/X11/gdm/gdm.conf exists in the chroot remove _quickpkg_deps() and _portage_best_{visible,version}() src/GLIUtility.py: fail immediately in validate_uri() if provided URI can't be parsed modify fetch_and_unpack_tarball() and get_uri() to allow fetch subprogress debug code in spawn() use lower-level os.read() instead of file.read() because python sucks src/templates/x86ArchitectureTemplate.py: basic subprogress reporting for partitioning total_steps was 1 too high 6 Jan 2006; Andrew Gaffney : src/GLIUtility.py: move parse_vdb_contents() to GLIPortage src/GLIPortage.py: remove all symlink fixups ignore 'dir' entries in CONTENTS call tar with -p 5 Jan 2006; Preston Cody : AT: bootsplash is now gensplash gliserv: add advanced_mode to shared_info webgli: Added advanced mode. mostly just disables a few screens. 2 Jan 2006; Andrew Gaffney : src/GLIPortage.py: get_deps() calls 'emerge -p' and then removed packages that aren't in vdb added emerge() update sub-progress after each package is emerged skip tar, symlink fixup, and copy from image dir to / if no files in CONTENTS call get_best_version_vdb() instead of get_best_version_vdb_chroot() remove link if it exists before moving content into place src/GLIArchitectureTemplate.py: install_packages() now calls emerge() in GLIPortage change all calls to self._emerge() to self._portage.emerge() comment out all emerge status checking...using exceptions now call copy_pkg_to_chroot() directly for livecd-kernel 31 Dec 2005; Andrew Gaffney : src/GLIArchitectureTemplate.py: remove add_pkg_to_world() and copy_pkg_to_chroot() copy installer.log to installer.log.failed on install failure src/GLIUtility.py: added get_keymaps() spawn() takes any False argument for chroot instead of just None src/GLIPortage.py: copy_pkg_to_chroot() chroot's to run ebuild is use_root=False change copy_pkg_to_chroot() to work properly with use_root=False figure PORTAGE_TMPDIR properly 27 Dec 2005; Andrew Gaffney : src/net/server/html/*: converted showclients, load/saveprofile 26 Dec 2005; Andrew Gaffney : src/GLIPortage.py: exclude packages already in chroot vdb from binary deplist chroot to use best_version for chroot's vdb src/runtimedeps.py: accept ROOT via commandline instead of env 25 Dec 2005; Andrew Gaffney : src/runtimedeps.py: remove passing of ROOT src/GLIPortage.py: modify get_deps() to get deptree for each package and merge into final list remove depgraph class add debugging code to get_deps() src/GLIArchitectureTemplate.py: combine code for GRP/compile in install_packages() into one block debugging code in install_packages() 24 Dec 2005; Andrew Gaffney : src/runtimedeps.py: initial commit src/GLIPortage.py: use separate script for GRP deps remove calls to portage module 23 Dec 2005; Andrew Gaffney : src/GLIPortage.py: initial commit move some of portage function from GLIAT flipped around a few function args src/GLIArchitectureTemplate.py: revamp install_packages() for new GLIPortage 21 Dec 2005; Andrew Gaffney : src/GLIArchitectureTemplate.py: extract /usr/livecd/metadata.tar.bz2 to chroot if it exists 20 Dec 2005; Andrew Gaffney : src/net/server/gliserv.py: wrap generated code in a class to isolate it a bit better 302 redirects work don't use cgi.escape() for <% %> src/net/server/html/webgli/*: load/save profile src/GLIUtility.py: change /sbin/lspci to just lspci 18 Dec 2005; Andrew Gaffney : src/GLIClientController.py: change ordering of statements in CC run() while loop to not go past the end of the array src/GLIArchitectureTemplate.py: removed redundant bind mounts 18 Dec 2005; Preston Cody : REMOVED dialogfe.py since it is totally obsolete. use gli-dialog.py added a diagram by blackace from last night. added the glossary in RTF format. 17 Dec 2005; Preston Cody : x86AT: separated out emerge/configure from running of bootloader added MBR drive support to lilo. these changes will likely not work. AT: added setup_and_run_bootloader step. 12 Dec 2005; Andrew Gaffney : src/net/server/gliserv.py: call generated code in a function src/net/server/html/webgli/*: include top/bottom src/GLIArchitectureTemplate.py, src/GLIClientController.py, src/GLIClientCongifuration.py: install mode magic 11 Dec 2005; Andrew Gaffney : src/GLIClientController.py: use GLIException when there's an import problem added debug code to show install_steps src/templates/amd64ArchitectureTemplate.py: add . to import path proper path this time: ../../templates src/GLIArchitectureTemplate.py: add _portage_best_version() function 11 Dec 2005; Preston Cody : added initial glossary and gimli diagram to the docs directory. modify gli-dialog to allow editing of the install_profile after loading XML. 8 Dec 2005; Andrew Gaffney : src/net/server/html/webgli/: converted globaluse, localuse, networkmounts, portagetree, and stageselection moved saveclientconfig stuff into clientconfig moved saveconfigfiles into config files converted etc_portage and makedotconf converted bootloader and kernel convert daemons, extrapackages, networking, review, services, timezone, users src/net/server/gliserv.py: proper 404 handling for .pyhtml extension HTML escape <% %> stuff work around python's sucky regexes src/GLIInstallProfile.py: allow set_{rsync,ftp,http}_proxy() to accept empty values 7 Dec 2005; Andrew Gaffney : src/net/server/gliserv.py: initial commit of Legolas templating engine 302 redirects src/net/server/html/index.html, src/net/server/webgli_template.html: minor changes for new code src/net/server/html/*.pyhtml, src/net/server/html/webgli/*.pyhtml: initial commit of the conversion from the monolithic WebGLIHandler.py to the one file per path Legolas goodness partitioning[2-4] done 5 Dec 2005; Preston Cody : webgli: dhcp options in CC and post-install. updated comparison chart. webgli: etc/portage/* and distcc support added. not too-well tested. 4 Dec 2005; Preston Cody : webgli_template.html: valign=top on left side. webgli: fix bootloader boot_device. now working. webgli: CC proxy done. post-install proxy in progress. 3 Dec 2005; Andrew Gaffney : src/net/server/webgli_template.html: increase padding for content cell to 7px and add colspan=2 3 Dec 2005; Nicholas D. Wolfood : webgli: added graphic bar on top webgli: added hover effects on the links on the left webgli: re-rendered header_bg.png to stretch without artifacts 3 Dec 2005; Preston Cody : webgli: make.conf disabling fixes for dynamic_stage3 fixed portage snapshot browse popup all changes tested. webgli: add debug mode to CC screen. the screen still needs lots of work. 1 Dec 2005; Preston Cody : added debug mode question to gli-dialog added CC proxies to CC networking for gli-dialog webgli: fixed skip CC networking if connection active webgli: portage snapshot defaults to CD webgli: bootloader mbr drive selection webgli: USE flags unselectable if dynamic_stage3 webgli: manual extra packages and save button. 28 Nov 2005; Andrew Gaffney : src/GLIUtility.py: change ping count to 2 docs/comparison.html initial commit 27 Nov 2005; Andrew Gaffney : src/templates/x86ArchitectureTemplate.py: fix map() issue with grub code replace kernel_names and initrd_names loops with one-liners 27 Nov 2005; Preston Cody : gli-dialog won't let you dynamic stage3 without systempkgs.txt. initial gli-dialog support for recommended partitioning layout and clear. failure cleanup now an option for gli-dialog. move livecd-kernel to top of kernel lists. fix proto bug in rc.conf added comparison list and updated TODO! 26 Nov 2005; Andrew Gaffney : src/GLIArchitectureTemplate.py: fix to stage1() debug code fix to stage2() debug code 26 Nov 2005; Preston Cody : some more bootloader code fixes. forgot boot_device != mbr_device. 25 Nov 2005; Andrew Gaffney : src/GLIStorageDevice.py: fix to unallocated space merging when last one is after part 4 24 Nov 2005; Andrew Gaffney : src/GLIArchitectureTemplate.py: small fix to debugging code in copy_pkg_to_chroot() 23 Nov 2005; Preston Cody : more bugfixes with bootloader code gli-dialog side appears to work 21 Nov 2005; Preston Cody : initial adding of boot_device to backend. initial boot_device support added to gli-dialog. some fixes of my poor coding 20 Nov 2005; Preston Cody : converted gli-dialog to use the install_package_list. gtkfe has already been converted by AllanonJL new way working in gli-dialog now and added to webgli. added set/get_boot_device() to IP 19 Nov 2005; Preston Cody : get_install_package_list added to InstallProfile. This can be used by the FEs 17 Nov 2005; Andrew Gaffney : src/templates/x86ArchitectureTemplate.py: call ls with '-1 --color=no' 16 Nov 2005; Preston Cody : added warning (#9) to GRP ppl about stage3 tarballs 15 Nov 2005; Andrew Gaffney : src/GLIArchitectureTemplate.py: change fat32/fat16 to vfat in mount_local_partitions() so mount doesn't get confused 13 Nov 2005; Preston Cody : removed protocols from rc.conf screens finished initial rc.conf and make.conf in webgli 13 Nov 2005; Andrew Gaffney : src/net/server/gliserv.py: add -h option to usage() show time and request URI in debug mode show client IP in debug mode just use IP instead of trying to do a reverse lookup 12 Nov 2005; Andrew Gaffney : src/net/server/gliserv.py: 'classier' 401 message proper commandline parsing help via -h user/pass can be specificed via commandline option 11 Nov 2005; Andrew Gaffney : src/net/server/gliserv.py: basic HTTP auth 10 Nov 2005; Andrew Gaffney : src/net/server/gliserv.py: dynamic module reloading (yipee!) send 'Last-Modified' header for real files respond to HEAD with just headers src/net/server/handlers/WebGLIHandler.py: icons for drives 7 Nov 2005; Andrew Gaffney : src/net/server/handlers/WebGLIHandler.py: initial 'pretty' partition table display support clicking partition in 'pretty' display works instead of radio buttons radio buttons and pretty display work together META redirect instead of javascript pretty display stretches across entire screen 'Recommended layout' and 'Clear drive' functions properly catch exceptions from do_recommended() src/GLIArchitectureTemplate.py: replace preinst, copy, postinst, rm steps with qmerge whoops...that shouldn't have been commented out create image_dir with -p in copy_pkg_to_chroot() more generic of symlink crappiness new copy_pkg_to_chroot() actually works now 6 Nov 2005; Andrew Gaffney : src/GLIStorageDevice.py: initial generic disk support fixes for add_partition() code src/net/server/handlers/WebGLIHandler.py: added support for creating generic disks add new partition working save and delete partitions 6 Nov 2005; Preston Cody : webgli: Partitioning making progress. 5 Nov 2005; Andrew Gaffney : src/GLIArchitectureTemplate.py: copy_pkg_to_chroot() overhaul - does install the Right Way(TM) (copy files to image dir, run pkg_setup, pkg_preinst, copy to /, pkg_postinst, remove image dir) and works around /etc/gconf symlink problem 5 Nov 2005; Preston Cody : webgli: lots of updates. preliminary partitioning. extra packages works. 3 Nov 2005; Andrew Gaffney : src/net/server/gliserv.py: httpd now supports HTTPS and falls back to HTTP if not available make fallback actually work src/net/server/SecureXMLRPCServer.py: SecureSocketServer is now threaded 2 Nov 2005; Andrew Gaffney : src/net/client/gliclient.py: try to use HTTPS for XMLRPC first and fallback to HTTP pretend mode src/net/server/gliserv.py, src/net/server/SecureXMLRPCServer.py: HTTPS XMLRPC goodness from samyron pass name of certificate 31 Oct 2005; Preston Cody : wegli: daemons and services screens done. 30 Oct 2005; Preston Cody : webgli: networking and users screens added return_redirect to handler.py loading and saving install/client profiles works for webgli now Review also done *GLI-0.2 (27 Oct 2005) 26 Oct 2005; Andrew Gaffney : src/templates/x86ArchitectureTemplate.py: properly check for bootloader emerge exist status with exitsuccess() log output of grub install command add --batch --no-floppy to grub command grubinstallstring only gets logged if debug is on src/GLIUtility.py: update progress bar to 100% when process finishes 25 Oct 2005; Andrew Gaffney : src/GLIClientController.py: added debugging code for the interaction between the 2 threads via Event() src/GLIUtility.py: doubled the buffer size in spawn() bump buffer size up to 16384 only report progress in 5% increments src/GLIArchitectureTemplate.py: kernelpkgs.txt support code above disabled because it sucks added add_pkg_to_world() 24 Oct 2005; Andrew Gaffney : src/GLIArchitectureTemplate.py: use tar | tar to copy files in copy_pkg_to_chroot() extract devices.tar.bz2 created by baselayout instead of running MAKEDEV 23 Oct 2005; Preston Cody : DEBUGGING ADDED TO AT. verbose field added to CConfig. 23 Oct 2005; Andrew Gaffney : src/net/server/gliserv.py: / maps to index.html look for actual files in html/ src/net/html: new template src/GLIUtility.py: added parse_vdb_contents() src/GLIArchitectureTemplate.py: added copy_pkg_to_chroot() added debug code to dynamic-stage3 switch dynamic-stage3 to new method lots of bug fixes from adding debug code 22 Oct 2005; Preston Cody : webgli initial bootloader support + changed make.conf. IP: changed defaults for stage, kernel_build_method, kernel_source_pkg. 20 Oct 2005; Andrew Gaffney : src/GLIUtility.py: horrible tangled mess of code that is tarball unpacking subprogress display add unpack progress to portage snapshot use read() instead of readlines() in spawn() only update progress bar for whole percents 19 Oct 2005; Andrew Gaffney : src/templates/x86ArchitectureTemplate.py: change call to 'grub' to use GLIUtility.exitsuccess() add definition of 'build_mode' in _configure_lilo() src/misc/updategtkfe, src/misc/updateglid: fix so subshell is called in root shell 18 Oct 2005; Andrew Gaffney : src/net/server/handlers/WebGLIHandler.py: stage screen launches URI browser in sized window with various properties set 17 Oct 2005; Andrew Gaffney : src/misc/updategtkfe: updated to actually work remove previous snapshot and extracted dir before downloading src/misc/updateglid: updated to actually work src/templates/x86ArchitectureTemplate.py: fixed bug where grub code was looking for 'root+root+file_name2' 16 Oct 2005; Andrew Gaffney : src/net/server/handlers/WebGLIHandler.py: URI browser added mirror selection src/GLIUtility.py: ls via ssh strips off ending * 16 Oct 2005; Preston Cody : more updates to webgli. stage selection. 11 Oct 2005; Preston Cody : updated webgli with preliminary Network Mounts support. 9 Oct 2005; Preston Cody : GenDialog: string formatting and yes/no label fixes. added WebGLI template for gliserv.py added WebGLIHandler as well as a definition for it in gliserv.py updates to the webgli files even though they won't be there for long. Utility: remove exception for non-existant grppkgs.txt until the new livecd goes public. 9 Oct 2005; Andrew Gaffney : src/net/server/gliserv.py: override dict to not be so anal main server now loads separate module to handle requests src/net/server/handlers/ProfileHandler.py, src/net/server/handler.py: split out profile URLs into separate handler function move handlers into subdirectory add Welcome and Clients handlers 5 Oct 2005; Andrew Gaffney : src/GLIUtility.py: raise exception if password prompt received twice 2 Oct 2005; Andrew Gaffney : src/GLIUtility.py: removed rot13ify() 1 Oct 2005; Andrew Gaffney : src/net/server/gliserv.py: allow for param to be passed multiple times in GET no XMLRPC functions return None modify POST request parsing to only create a list if needed fix GET request parsing so the list creation for multiple values works src/net/client/gliclient.py: various typo and type mismatch fixes exit after exception 30 Sep 2005; Andrew Gaffney : src/net/client/gliclient.py: initial commit pass MAC to XMLRPC functions src/net/server/GLIServerProfile.py: rename GLIClientsProfiles to GLIServerProfile 29 Sep 2005; Andrew Gaffney : src/net/server/gliserv.py: now handles POST requests move majority of request handling code to common_handler() to reduce code duplication profile loading client reg via XMLRPC goes into SharedInfo() /showclients redesign template fixes allow handler functions to add/change headers save profile 28 Sep 2005; Andrew Gaffney : src/net/server/GLIClientsProfiles.py: initial commit src/net/server/template.html: initial commit src/net/server/gliserv.py: add template mojo 26 Sep 2005; Andrew Gaffney : src/net/server/gliserv.py: XMLRPC mojo 22 Sep 2005; Andrew Gaffney : src/GLIArchitectureTemplate.py: add code in _edit_config() to comment line where variable is defined previously insert new line under previous definition of variable if it exists small _edit_config() cleanup src/GLIStorageDevice.py: add clear_partitions() function new sizes for recommended partition layout automatically calculate swap size for recommended layout 21 Sep 2005; Andrew Gaffney : src/templates/x86ArchitectureTemplate.py: fat16 mojo 20 Sep 2005; Andrew Gaffney : src/GLIStorageDevice.py: prevent do_recommended() from being run twice rewrite do_recommended() to be more robust src/GLIArchitectureTemplate.py: rework _edit_config() to not write duplicate entries 17 Sep 2005; Andrew Gaffney : src/GLIStorageDevice.py: added do_recommended() function to automatically created 256M/1G/* layout 17 Sep 2005; Preston Cody : src/gli-dialog.py: added set_distcc to the list GenDialog: added set_distcc. untested. IP: added install_distcc flag. AT: added install_distcc function based on the flag. runs after build_kernel changed AT spawn command for distcc for nodeps. 16 Sep 2005; Andrew Gaffney : src/GLIUtility.py: add rot13ify() function 16 Sep 2005; Preston Cody : src/GenDialog.py: added a sentence of text. unchecking support added. 15 Sep 2005; Preston Cody : src/GLIUtility.py: added get_grp_pkgs_from_cd() to return a list of packages in GRP for FE menus src/GenDialog.py: still working on extra_packages. transformed the list to new format. added GRP indication to list. untested. TODO lists updated. src/fe/dialog/gli-dialog.py: spelling mistook. 14 Sep 2005; Andrew Gaffney : src/GLIUtility.py: get_snapshot_from_cd() returns '' instead of 'file://' if nothing found 5 Sep 2005; Andrew Gaffney : src/GLIUtility.py: add get_directory_listing_from_uri() add http support to above add ftp support to above add scp support to above src/GLIArchitectureTemplate.py: "0" instead of 0 for key of single-element dict passed to _edit_config() 5 Sep 2005; Preston Cody : value_only -> only_value 3 Sep 2005; Preston Cody : gutted out all of etc_portage structure since it is now all handled by etc_files 3 Sep 2005; Andrew Gaffney : src/GLIArchitectureTemplate.py: install_packages() sends progress update notifications src/templates/x86ArchitectureTemplate.py: increase sleep to 5s between format tries src/GLIClientController.py: pass 'self' to AT instead of 'self._pretend' 2 Sep 2005; Preston Cody : logger -> logger.log in x86AT 1 Sep 2005; Preston Cody : added set_etc_portage to IP. debugging gli-d's support for it. 1 Sep 2005; Andrew Gaffney : src/templates/x86ArchitectureTemplate.py: switch to 3 tries for mkfs instead of looping waiting for dev node to exist 30 Aug 2005; Andrew Gaffney : src/GLIArchitectureTemplate.py: add _portage_best_version() function and rework install_packages() to allow for future X of Y tracking Use best_visible instead of best_version tracked down and fixed missing = causing empty install extra packages use = when emerging also quickpkg hokey pokey run _get_packages_to_emerge() again with -pk 22 Aug 2005; Preston Cody : src/ArchTemplate: removed install_xorg_x11, and put the xorg.conf copying at the end of install_packages. added updateglid to /src/misc updated all core files with new GPL notice and copyright statement. 21 Aug 2005; Andrew Gaffney : src/GLIUtility.py: fix get_snapshot_from_cd() to look in /mnt/livecd/snapshots/ if it can't find a snapshot in /mnt/cdrom/snapshots/ get_snapshot_from_cd() adds file:// at the beginning change calls to extra package special case functions to 'self.blah' 21 Aug 2005; Preston Cody : src/ArchTemplate: changed "voodoo". changed order of portage sync methods. made a fallback to webrsync if normal emerge sync fails. removed get_sources_from_cd because it is obsolete. add special cases to install_packages. remove fatal exception on package install failure b/c the box will still be bootable. add install_xorg_x11. remove adding of xdm to runlevel. this will now be handled in the FEs. src/GenDialog: added a bunch of code for dealing with x11-based packages. awaiting testing. 20 Aug 2005; Andrew Gaffney : src/GLIStorageDevice.py: global try/except block around fs resizable detection code src/GLIArchitectureTemplate.py, src/GLIClientController.py: install-failed cleanup function 18 Aug 2005; Preston Cody : x86ArchTemplate: updated lilo code. separated out THREE commands. untested. 16 Aug 2005; Preston Cody : GLIGenDialog: add drive choices for loaded configs. force snapshot for dynamic_stage3 init the snapshoturi input to the cd snapshot if not already selected. if dynamic_stage3, skip the make.conf step. GLIUtility: add get_cd_snapshot_uri() for local snapshots. this fixes parts 1,2,3,6 of bug 102747 for gli-dialog 16 Aug 2005; Andrew Gaffney : src/GLIArchitectureTemplate.py: manually call MAKEDEV in stage3-dynamic code copy /etc/inittab.old to /etc/inittab in chroot src/GLIUtility.py: add beginning of validate_uri() function add file:/// support to validate_uri() single quotes when setting livecd password 15 Aug 2005; Andrew Gaffney : src/GLIGenDialog.py: change getmountpoint() to get_mountpoint() src/misc/updategtkfe: committed script to automatically download latest snapshot and run gtkfe src/templates/x86ArchitectureTemplate.py: fix _configure_lilo_add_windows() for IP -> GLISD stuff src/GLIArchitectureTemplate.py: give tmp_minor an initial value in mount_local_partitions so that the value remain from the previous drive 14 Aug 2005; Andrew Gaffney : src/templates/x86ArchitectureTemplate.py: Fix _configure_lilo() for IP using GLISD stuff src/GLIArchitectureTemplate.py: install_cron_daemon() treats "none" specially 14 Aug 2005; Preston Cody : old patch from Steven Mertens to resolve bug #96642 numerous asthetic changes to GenDialog, no real functionality changes though. strings renamed for global use if necessary. fix all three parts of bug 102291 disable set_etc_portage until fully-written. 13 Aug 2005; Andrew Gaffney : src/GLIClientController.py: lower-case http/ftp proxy envvars 12 Aug 2005; Andrew Gaffney : src/GLIClientController.py: log end of pre_install steps to aid in debugging src/templates/x86ArchitectureTemplate.py: change set_flag(flag) to set_flag(flag, True)...*stab* *stab* 10 Aug 2005; Andrew Gaffney : src/GLIArchitectureTemplate.py: check to make sure that the device node we're wait for to exist isn't of type 'free' 09 Aug 2005; Andrew Gaffney : src/GLIGenDialog.py: convert install_packages to list in set_extra_packages() check return code of checklist() call in "Manual" section *actually* fix the first problem 08 Aug 2005; Robin H. Johnson src/GLIUtility.py: "source /etc/profile" does not ensure the ENV is correctly set up. Use "bash -l" instead, to ensure a proper environment (important for CONFIG_PROTECT). 06 Aug 2005; Andrew Gaffney : src/GLIArchitectureTemplate.py: re-fix net.eth1+ symlink code...wtf is wrong with cvs? 04 Aug 2005; Andrew Gaffney : Add CDATA support to SimpleXMLParser and add utility functions for it. 04 Aug 2005; Robin H. Johnson src/GLIArchitectureTemplate.py: Fix case where vixie-cron is specified as a full package atom, as we still don't want to run 'crontab /etc/crontab' for it. *GLI-0.1 (3 Aug 2005) 30 Jul 2005; Preston Cody : add scp to list of is_uri() so GenDialog doesn't complain. fixed livecd-kernel bug in bootloader code. fixed gendialog for dynamic_stage3 instead of "networkless" change bootloader to allow for both initrd and initramfs. fix IP for dynamic_stage3. fix ArchTemplate for broken mountpoint creation. fix GenDialog part showing. 30 Jul 2005; Andrew Gaffney : Added full scp:// URI support to get_uri() in GLIUtility Remove "networkless" from dynamic stage3 if locic. Remove print statement from scp:// code. Change scp code to check for "assword: " instead of "Password:" Fix post-install network code to create net.eth1+ symlink correctly Check to make sure pkg can be split on / and some debugging code Add 2>dev/null to emerge call in _get_packages_to_emerge() SimpleXMLParser handles True/False/None correctly now Comment out above fix Add partitioning wait-for-device-to-exist code to mount_local_partitions 28 Jul 2005; Scott Myron : Removed a FIXME in the GLIClientConfiguration that is no longer needed. 27 Jul 2005; Andrew Gaffney : Default to x86 in ClientConfig Typo in build-a-stage3 code. Remove MAKEDEV call in build-a-stage3 postscript. 26 Jul 2005; Preston Cody : Rewrote init of IP for gli-d. Other GenDialog updates. allow network_type to be None in CConfig. 24 Jul 2005; Andrew Gaffney : Add _dynamic_stage3 option to IP. Add check for that option to dynamic stage3 code in ArchTemplate. Fix code to determine default route in get_eth_info() in GLIUtility. Fix serialization of dns-servers in ClientConfig. 24 Jul 2005; Preston Cody : changed default values of cron/logger in IP. moved GenDialog IP init out to the individual files. gli-dialog's version will change quite a bit. 22 Jul 2005; Preston Cody : added ppcArchTemplate. blank now. working on yaboot. modified ArchTemplate for amd64 and ppc custom kernels. skeleton implementation of _configure_yaboot. small fixes to other templates. 21 Jul 2005; Preston Cody : GenDialog updates. changed comment in IP. 07 Jul 2005; Robin H. Johnson src/GLIInstallProfile.py: Fix codeman's screwup of changing the service seperator to ',' in the parser without changing it in the serialization code! Also document this in a comment so you find it easier. Everybody needs to make sure they update their install profiles! 07 Jul 2005; Robin H. Johnson src/GLIArchitectureTemplate.py: Fix casting of list to string and concat of None with string, as well as commented prototype of checking that mounting actually worked (found a case where mount can return success, but the mount won't be done). 07 Jul 2005; Robin H. Johnson src/templates/x86ArchitectureTemplate.py: Remove TEMP UGLY HACK of time.sleep(5), and replace it with a while loop checking for the device, and sleeping 1 second each time. 07 Jul 2005; Robin H. Johnson src/templates/x86ArchitectureTemplate.py: Refactor install_bootloader code and _install_{grub,lilo} so that 'none' for bootloader works again. Also rename _install_{grub,lilo} to _configure_{grub,lilo} since they don't install the loaders anymore themselves. 7 Jul 2005; Preston Cody : fix global USE flags to not include the arch types at the end. updates to GenDialog and gli-d. 6 Jul 2005; Preston Cody : fixing bootloader code for no initrd and initrd->initramfs naming change. 6 Jul 2005; Andrew Gaffney : Proper comments and parameters to GLIException in install_mta() Allow optional exclusion of HTTP, FTP, and/or RSYNC mirrors in list_mirrors() Add strip() to list_mirrors(), list_subarch_from_mirror() and list_tarball_from_mirror() to eliminate blank last item. 5 Jul 2005; Andrew Gaffney : Added stage3 generation code. 5 Jul 2005; Preston Cody : Added sleep(5) to partitioning code, temp got rid of the NOCOLOR in _emerge Mild changes to GenDialog. 30 Jun 2005; Andrew Gaffney : Remove separate install step configure_rc_conf() since it's handled by update_config_files() Make a copy of newvalues in _edit_config() so quotes aren't added when the function is called twice on the same file. 29 Jun 2005; Andrew Gaffney : Missing \ in sed in _get_packages_to_emerge() Removed explicit emerging of hotplug and no longer add it to the runlevel. Check in _quickpkg_deps() to ignore blank package names returned from _get_packages_to_emerge() 28 Jun 2005; Preston Cody : fixed agaffney's missing = and extra : in x86AT. commented out crashing line in the dialog.py gauge code. 28 Jun 2005; Andrew Gaffney : Add code to update_config_files() to go through etc_files and update stuff. Check to see that _etc_files['make.conf'] exists in get_make_conf() Only use float() in partition xml parsing code if type == "free" 28 Jun 2005; Preston Cody : finished almost all internationalization of GenDialog. attempt at fixing rc.conf function. moved 3 generate functions out of fe/gtk/RcDotConf and put them in Utility. fixed self bug. added dialog.py to the fe/dialog directory so it actually gets used. 27 Jun 2005; Andrew Gaffney : Roll rc_conf and make_conf into master etc_files structure in InstallProfile. 27 Jun 2005; Preston Cody : fix extra entry in list_mirrors() beginning internationalization runthrough. 26 Jun 2005; Preston Cody : added dialog.py to /src temporarily until it gets accepted upstream. fix for unused value in form in dialog.py and changed heights. fix GenDialog forms. 25 Jun 2005; Preston Cody : Changed hostname/domainname for new baselayout. Changed _add_to_runlevel errors to logs. Updated TODO list to show status of GenDialog More updates to GenDialog including two checklists that probably won't work. update IP to use comma-separated list instead of space separated for services. 24 Jun 2005; Preston Cody : Add dhcp_options to the CC, CConfig, and GenDialog. More overall changes to GenDialog as it gets closer to completion. 22 Jun 2005; Andrew Gaffney : Modify get_eth_info() to take a full interface name (eth0 fex). float() instead of int() in add_partition_device_partition() for minor (closes 96804) 21 Jun 2005; Andrew Gaffney : Changed setup_network_post to check for 'interfaces[interface][0] != "dhcp"' instead of 'interfaces[interface][1]' since DHCP uses that field for its options. setup_network_post() writes custom DHCP options to /etc/conf.d/net. 20 Jun 2005; Andrew Gaffney : Apply spawn() patch from #96644 (with minor changes). Make sure the return value from all spawn() calls is checked with GLIUtility.exitsuccess(). Fix small error with .close() returning None. Fix space vs. tab issue. Fix undefined variable 'output' issue in spawn(). 20 Jun 2005; Preston Cody : More updates to GenDialog and gli-d. 19 Jun 2005; Andrew Gaffney : Modify list_mirrors() to return a list of mirror URL/name pairs. 19 Jun 2005; Preston Cody : Adding gli-dialog.py. Updates to GenDialog. Added function to GLIUtility to get subarch. 16 Jun 2005; Andrew Gaffney : Backend partitioning will create disklabel is none exists. Installprofile defaults to "" now instead of "msdos" for disklabel type. Fix for mount_local_partitions() to remember device along with minor in the parts_to_mount dict (closes #96319). mount_local_partitions() cleanups and add else block to log unsupported netmount types to mount_network_shares() 15 Jun 2005; Robin H. Johnson : src/GLIArchitectureTemplate.py: Refactor kernel_compile common stuff, fix 2.4 build process. src/fe/cli/clife.py: Logging system. src/GLIUtility.py, src/GLIStorageDevice.py: Add comments about re-writes needed for boxes without sysfs. 15 Jun 2005; Robin H. Johnson : src/GLIArchitectureTemplate.py: 2.4 support (pull version data from /usr/src/linux/Makefile), incl. 'make dep' call for custom compile. build_mode support for prepare-only and none types completed. custom compile function chains shell functions in spawned script, to allow for catching all errors. 15 Jun 2005; Preston Cody : fixed up build_kernel in ArchTemplate for build_mode as well as in dialogfe and GenDialog. other gendialog updates as well. kernel updates untested. 14 Jun 2005; Robin H. Johnson : src/GLIInstallProfile.py: Change structure of etc-portage stuff. The serialization was broken before my last commit, and I am the only person that's ever used it. The new schema is as follows: -java -ldap 13 Jun 2005; Robin H. Johnson : src/GLIInstallProfile.py: Add new entry for gli-profile/kernel-build-method item. Add missing serialize_etc_portage (temporary). Make serialize_make_conf always print the keys in the same order. 13 Jun 2005; Robin H. Johnson : src/GLIArchitectureTemplate.py: Clean up commenting used by _edit_config(), and fix bug where wrong comment was repeatedly appended to make.conf. 13 Jun 2005; Robin H. Johnson src/GLIArchitectureTemplate.py: Put some Linux-2.6 specific code under a if statement. Store list of successfully mounted swap device for using swapoff. Add proper error checking to install_packages and install_filesystem_tools. Fixed namespace conflicts on 'file'. Clean up some redundant code (thanks to pychecker).' 13 Jun 2005; Andrew Gaffney : Fix typos: get_extended() instead of get_extended_partition(). Added list_mirrors() and list_stage_tarballs_from_mirror() functions to GLIUtility. Change _emerge("sync") call to direct call to spawn to avoid 'emerge -k sync' 12 Jun 2005; John N. Laliberte : GLIInstallProfile.py: add missing set for dhcp_options if a tuple is passed in add_network_interface. 12 Jun 2005; Robin H. Johnson : src/GLIArchitectureTemplate.py: ensure PORTAGE_TMPDIR/PORT_LOGDIR/PORTDIR_OVERLAY/PKGDIR exist prior to any usage - this caused a failure for stage1/stage2 previously. swapoff for swap space at end of install. Mount /dev, /dev/shm, /dev/pts and /sys during prepare_chroot. 11 Jun 2005; Robin H. Johnson +src/cli/clife.py, +src/cli/README, +src/fe/installer-cli, +src/fe/installer-dialog, +src/fe/installer-gtk: Add new automated CLI frontend. Add scripts that are the intended means to use each frontend. 11 Jun 2005; Robin H. Johnson : src/GLIClientController.py: Add null type to network config, for cases where the interface is already up and should not be touched (netboot for example). 11 Jun 2005; Robin H. Johnson : src/GLIArchitectureTemplate.py: pcmcia is not a variable name for a call to _add_to_runlevel, it should be a string!. Try to use binary packages if available by default. 11 Jun 2005; Robin H. Johnson : src/GLIArchitectureTemplate.py: More error checking for _add_to_runlevel, to ensure that the init script actually exists before we try to add it. set_services phase must take place after the package installation, otherwise the init scripts might not exist. Find the correct init script for the cron and logging daemons, and add that instead of the package atom. 11 Jun 2005; Robin H. Johnson : src/GLIArchitectureTemplate.py: Fix up _edit_config so that it works if the file doesn't already exist. Fix usage of 'file' to 'contents' for the variable name, as it shadows __builtin__.file. 11 Jun 2005; Robin H. Johnson : src/GLIArchitectureTemplate.py: Add MTA install code, and include MTA install phase. Ensure PORT_LOGDIR/PORTDIR_OVERLAY are created in _emerge if needed. Add support for 'none' kernel config for build_kernel phase. Put kernel_script in /var/tmp instead of /root for build_kernel phase. 11 Jun 2005; Robin H. Johnson src/GLIInstallProfile.py: Rename mta variables to match syslog/cron variables. 11 Jun 2005; Robin H. Johnson : src/GLIArchitectureTemplate.py, src/templates/x86ArchitectureTemplate.py, src/.cvsignore, src/fe/dialog/.cvsignore, src/fe/gtk/.cvsignore, src/fe/net/client/.cvsignore, src/fe/net/server/.cvsignore, src/templates/.cvsignore, src/tests/.cvsignore: Refactor partition formatting again to include error checking. Allow 'none' for kernel and bootloader specifications. Add .cvsignore files for .py[co]. 11 Jun 2005; Robin H. Johnson : src/GLIArchitectureTemplate.py, src/templates/x86ArchitectureTemplate.py: Refactor _emerge to remove duplicate code. Refactor mkfs code in backend to only have a single spawn call. 11 Jun 2005; Preston Cody : refixed samyron's fix of set_architecture_template. 11 Jun 2005; Andrew Gaffney : Move /tmp/spawn.sh and /tmp/post-install to /var/tmp since that should always be executable. 10 Jun 2005; Scott Myron : Fixed one of the FIXME's in the ClientConfiguration. There is now some error checking when you call set_architecture_template. 10 Jun 2005; Preston Cody : moved the mkfsopts input to the partition options menu instead of the during the creation process. updated GenDialog to say it supports reiserfs v3. 9 Jun 2005; Robin H. Johnson src/GLIInstallProfile.py, src/GLIStorageDevice.py, fe/dialog/dialogfe.py: Complete support for 'mkfsopts' parameter in main system and dialogfe. Add support for other partition types to dialogfe. Fix all usages of int(possible_big_number) to long(possible_bit_number) to avoid integer overflows and wraparounds. 9 Jun 2005; Andrew Gaffney : Removed start/end from XML output and added mkfsopts to partitioning info. 'mkfsopts' parameter is now used and support for creating xfs, jfs, and reiserfs is now in (patch from robbat2). Change '_parser' to 'self._parser' in GLIClientConfiguration. Change from .1 and .9 to constants for partitioning. Fix free space overwriting bug. Remove a few unused functions from rewrite. Fix call to get_partition_at() 8 Jun 2005; Preston Cody : Updates to GenDialog and dialogfe. 7 Jun 2005; Andrew Gaffney : Typo (%$^&#$!) fix in GLIStorageDevice. Minor fix recommended by pychecker 6 Jun 2005; Preston Cody : more GenDialog updates to partitioning. 5 Jun 2005; Preston Cody : Indenting issue in GLISD/get_ordered_partition_list. updates to GenDialog partitioning and added default UTC for timezone in IP. 5 Jun 2005; Andrew Gaffney : Added GLISD.get_model() 3 Jun 2005; Preston Cody : Added get_eth_devices() to GLIUtility. Updated netfe.py to newest version. More updates to GenDialog :) 3 Jun 2005; Andrew Gaffney : Added get_interface_realname() function. 2 Jun 2005; Preston Cody : Added auto-save of CConfig and copying to new /root after install. yet even more GenDialog updates. 1 Jun 2005; Preston Cody : removed print statement from GLISD. more updates to GenDialog. 31 May 2005; Andrew Gaffney : Not being able to fetch the stage tarball is now an exception. Chroot wrapper passes along exit code. Fix typo in GLIStorageDevice causing mountopts to be loaded from XML as ['mountopts']. Changed 'data' to 'self.data' in a few places in GLIClientConfiguration. 27 May 2005; Andrew Gaffney : Fix mount_local_partitions(), configure_fstab(), and install_filesystem_tools() to use GLISD directly. A few more fixes for same. A few more fixes for templates/x86Archtemplate 27 May 2005; Preston Cody : Removed more unused code from CConfig. Updated GLIGenDialog, but it is still a work in progress. 24 May 2005; Andrew Gaffney : Changes in IP, GLISD, and templates/x86Archtemplate for IP using GLISD directly. GLISD can now handle data imported from XML. 22 May 2005; Andrew Gaffney : Missing colon in GLIClientConfiguration. Add fix to GLIStorageDevice to handle blank (no disklabel) disks. 20 May 2005; Preston Cody : HUGE Reorganization of the InstallProfile. All sections alphabetized, cleaned up, documented, and separated out serialization and grouped all sections. 19 May 2005; Preston Cody : Reorganization of ClientConfiguration and gutting of unused functions. Removed verbose option from CC. Moved import statement in IP and CConfig up. 18 May 2005; Preston Cody : Fix use of /mnt/gentoo instead of _chroot_dir in finishing_cleanup 17 May 2005; Andrew Gaffney : Fixed bug in finishing_cleanup(). Fix a late-night coding error in partitioning. CC serializes install profile to disk and prepare_chroot() copies it into /mnt/gentoo/root 16 May 2005; Andrew Gaffney : Moved URI parsing into new function parse_uri() 14 May 2005; Andrew Gaffney : Added XMLParser module. 13 May 2005; Andrew Gaffney : Fix is_realstring() and rewrite is_uri() to use a regex to parse the URI. Minor fix to is_uri() regex to allow hyphens in hostname. 12 May 2005; Preston Cody : Updated finishing_cleanup for new unmounting method from agaffney. 12 May 2005; Andrew Gaffney : Fix GLILogger to use correct time format string. Fix _edit_config() to properly comment out variables. Fix minor bug in finishing_cleanup(). Add unicode support to is_realstring(). 11 May 2005; Andrew Gaffney : Added --nocolor to all emerge calls. Fix is_eth_device to test for zero return value instead of non-zero. Add code to output a traceback to the install log in the event of a GLI or non-GLI exception. Use NOCOLOR=yes instead of --nocolor. 10 May 2005; Preston Cody : Added GLIGenDialog.py to make a generic class for the dialog functions that can be used by both dialogfe and the netfe/be. updated both for new filename. date changes. 2004->2005. 10 May 2005; Andrew Gaffney : Removed 'quiet=True' from spawn() calls 10 May 2005; Preston Cody : Updated GLIUtility with patches from chotchki. Also added documentation 9 May 2005; Preston Cody : Added the function for set_etc_portage to ArchTemplate. no step for it yet. Updated _edit_config in ArchTemplate, make_config, and various other fixes from bug #89683, mostly touchups. 6 May 2005; Andrew Gaffney : GLIStorageDevice cleanup patch from bug #91761 3 May 2005; Andrew Gaffney : Fixed timezone code to not link to /mnt/gentoo/usr/share/zoneinfo/blah. Fix _edit_config(). Error logging casts 'error' to str 2 May 2005; Andrew Gaffney : Exceptions received in CC are logged before being passed to the FE. Added code to CC to handle exceptions *not* thrown by the installer itself. 1 May 2005; Andrew Gaffney : get_max_mb_for_resize() returns -1 if not self.resizeable 30 Apr 2005; Andrew Gaffney : More dirty rsync hacks :-/ 29 Apr 2005; Preston Cody : Patches from chotchki (bug #90325) to improve CC networking. untested. 29 Apr 2005; Andrew Gaffney : Proxies patch from chotchki (bug #90147). Fixed == instead of = typos in GLIStorageDevice (pointed out by chotchki). Fixed missing int()s. Split 'custom' sync option into 'none' and 'snapshot'. Minor fixes to GLIStorageDevice as suggested by pychecker. Fix minor bug in _get_packages_to_emerge(). Fix _quickpkg_deps() to call _get_packages_to_emerge() 28 Apr 2005; Preston Cody : Added group-adding code to set_users in ArchTemplate 27 Apr 2005; Andrew Gaffney : Added post-install script code 23 Apr 2005; Andrew Gaffney : Fixed encapsulation issues in GLIClientController (bug #90141) 22 Apr 2005; Andrew Gaffney : Update resizing code in GLIStorageDevice 17 Apr 2005; Preston Cody : Update AUTHORS, NEWS, TODO. Added documentation to GLILogger. 17 Apr 2005; Andrew Gaffney : Reverted change to ArchTemplate and added support for commented line in old code. 16 Apr 2005; Andrew Gaffney : Changed _edit_config() to modify value in-place instead of commenting out and adding the new value to the end of the file. 15 Apr 2005; Preston Cody : Back. Did the docuementation thang for ArchTemplate and ClientConfiguration. Also updated TODO list. 14 Apr 2005; Andrew Gaffney : Use blackace's one-liner to add comments for all function for use with pythondoc. 13 Apr 2005; Andrew Gaffney : Moved 'end >= device_sectors' check out of loop to check for next partition's start point (thanks to Marco Djukic). Fix >4 primary partitions on non-x86. Partitioning code now tracks start/end of extended for placing logicals. End point of logical is now adjusted along with start. 11 Apr 2005; Andrew Gaffney : Finish overhaul of backend partitioning code. Fixed all bugs that stood in the way of partitioning from a blank disk. Add int() around access to minor key in partition information due to new partition code leaving them as float. 10 Apr 2005; Andrew Gaffney : tidy_partitions() function in GLIStorageDevice. Tweaks to tidy code 9 Apr 2005; Andrew Gaffney : Major GLIStorageDevice overhaul...all MB now instead of sectors. 8 Apr 2005; Scott Myron : Added support for DHCP options and MAC addresses in the InstallProfile. 3 Apr 2005; Andrew Gaffney : Changed mountopts check to work for blank and whitespace. Pipe emerge through sed to properly strip out junk. 2 Apr 2005; Preston Cody : fixed the way set_timezone works. added hotplug/coldplug for livecd-kernel added --emptytree to stage2. fixed ethx not being added to runlevel defalt. 31 Mar 2005; Preston Cody : Fixed indent problem in GLICController 30 Mar 2005; Andrew Gaffney : Check for disklabel type "loop" and use the device name without a minor. 29 Mar 2005; Andrew Gaffney : Remove /tmp/compile_output.log and /var/log/install.log when install is complete. Added code to (hopefully) keep 2nd thread running after install. Patch from zahna for extra arguments to the kernel. Patch from zahna to add get_eth_info() function. Remove most of content in amd64ArchTemplate and make it inherit from x86Archtemplate. kernel_args -> bootloader_kernel_args 28 Mar 2005; Andrew Gaffney : Added 'append_log=True' to all spawn() calls using logfile=. Append to log when unpacking tarball. 28 Mar 2005; Preston Cody : rewrote filesystem_tools. looks like it works so ripping out all the old filesystem_tools code. 26 Mar 2005; Preston Cody : Changed the print statements to logging in the partitioning BE code. the logger may need to be imported to the x86archtemplate. unknown yet. Added the finishing_cleanup function. added a fix to the logger from BenUrban 25 Mar 2005; Preston Cody : changed InstallProfile to remove is_uri check on kernel, stage, and portage URIs. The blank uri check has been commented out. ripped out error checking of set_services. this is done by _add_to_runlevel. 25 Mar 2005; Andrew Gaffney : set_stage_tarball_uri() doesn't raise an exception on a blank string. 24 Mar 2005; Andrew Gaffney : GRP-ish quickpkg code pulls PKGDIR and PORTAGE_TMPDIR from make.conf info in the install profile if available. Commented out spawn() debugging prints 23 Mar 2005; Preston Cody : small changes to setup_network_post. moved adding to runlevel of net.x to after the device gets symlinked. added domainname runlevel command. 23 Mar 2005; Andrew Gaffney : minor fix (hopefully) to livecd-kernel code. Removed call to mkvardb in livecd-kernel code as it's now done by catalyst. Switch _emerge() call to spawn() call in livecd-kernel code to pass environment variables. livecd-kernel code pulls PKGDIR and PORTAGE_TMPDIR from make.conf info in the install profile if available. 23 Mar 2005; Andrew Gaffney : Added code to build_kernel() and emerge_kernel_sources() in ArchTemplate to handle installing the livecd kernel into the new system. 22 Mar 2005; Preston Cody : should emerge hotplug and coldplug before adding them to runlevel. 21 Mar 2005; Preston Cody : took chroot out of grub_install command. 21 Mar 2005; Andrew Gaffney : Changed chroot wrapper code in spawn() to write the wrapper the python way instead of the bash way to avoid quote conflicts. Added 'logfile=self._compile_logfile' to a number of spawn() calls. Added new hash_password() function to GLIUtility. Remove command to 'rm /tmp/spawn.sh' as it breaks the piping. 20 Mar 2005; Preston Cody : Added the amd64ArchitectureTemplate, mostly a copy of x86 without lilo. 20 Mar 2005; Andrew Gaffney : Added _get_packages_to_emerge() to GLIArchitectureTemplate and calls in stage1() and stage2(). Added 'origminor' parameter to GLIStorageDevice and GLIInstallProfile. 19 Mar 2005; Andrew Gaffney : Fixed a couple bugs in add_netmount() in GLIInstallProfile. spawn() outputs to the actual tty8 with display_on_tty8 flag. Compile output logfile moved into /mnt/gentoo in prepare_chroot() 18 Mar 2005; Andrew Gaffney : Add sigunmask.c contributed by d_m (on freenode) to counteract python's retarted behavior regarding threads and signals. Add code to convert MB/%/* to start/end sectors 17 Mar 2005; Andrew Gaffney : Add 2>&1 to cmd in spawn() 16 Mar 2005; Andrew Gaffney : Modified GLIUtility.exitsuccess() to work with return value from commands.getstatusoutput instead of os.waitpid(). spawn() automatically creates wrapper script for commands run inside chroot so multiple commands and redirection can be used. Change exitsuccess() back. Added 'chmod a+x' for the generated script from spawn() 16 Mar 2005; Preston Cody : Removed default values for stage tarball URI and portage tree URI from InstallProfile. These should be set by the FEs. also added services step to ArchTemplate and coldplug/hotplug runlevels to the genkernel step. Possibly fixed CC DHCP bug with -n. (thx agaffney) 14 Mar 2005; Preston Cody : Small fix for setting the default gateway. Also added feature to dialogfe. 7 Mar 2005; Andrew Gaffney : Switched spawn() over to commands.getstatusoutput() instead of fork/waitpid 1 Mar 2005; Preston Cody : Fixed a bunch of true -> True typos. lots of em only write new resolv.conf if there are dns servers listed. 1 Mar 2005; Andrew Gaffney : Commented out 'display_on_tty8=True' in start_portmap() 18 Feb 2005; Preston Cody : added progress bar to dialogfe and fix logger bug in ArchTemplate. 18 Feb 2005; Andrew Gaffney : Created GLISayWhat module. Renamed GLISayWhat to GLILocalization. Moved lang parameter to __init__() 10 Feb 2005; Preston Cody : updates to TODO list. 6 Feb 2005; Andrew Gaffney : Initial code for quickpkg GRP support. Fix loop to grab packages from 'emerge -p blah' 6 Feb 2005; Preston Cody : check for dhcp in the network stuff and emerge it if it is. added quickpkg to TODO list 5 Feb 2005; Preston Cody : Changed the raising of 'warning' exceptions to a simple log of the error so that the installer can continue. 3 Feb 2005; Preston Cody : Some big changes. First, changed most output to display_on_tty8. Second, added log lines to all templates. Some smaller fixes such as typos. Also did some cleanups of old commented lines. 1 Feb 2005; Andrew Gaffney : Changed tty8 output to a fifo. Minor GLIStorageDevice fix thanks to BenUrban. Undo change with fix. Escaping fix in GLIStorageDevice.py 31 Jan 2005; Preston Cody : more updates to TODO list. hopefully we'll soon start removing items instead of adding them. 29 Jan 2005; Andrew Gaffney : Changed the way GLIStorageDevice.get_max_sectors_for_resize() works 27 Jan 2005; Preston Cody : updated TODO list. (again) 25 Jan 2005; Preston Cody : changed output of portmap start to display_on_tty8. fixed bootloader for udev and multiple kernels fixed custom kernel config (again) 22 Jan 2005; Preston Cody : changed default value of CC._enable_ssh to True because this is smart. added code to allow custom kernel .config. may be unstable and break. sorry. 21 Jan 2005; Andrew Gaffney : partition() now waits until after it checks for partition flags before delete the partitions :P 19 Jan 2005; Andrew Gaffney : Updated TODO. swapon failure it temporarily not an error. swapon is an error again. is_uri() check only performed on portage_tree_snapshot_uri if it isn't blank. 19 Jan 2005; Preston Cody : Various fixes related to the add_users function. Still not yet finished. Added things to the TODO list. Lets start using that! 18 Jan 2005; Andrew Gaffney : Added code to x86Template to format newly created partitions. Also added some error checking code. GLIStorageDevice passes 'minor' with data to InstallProfile. Added partition() call back in ArchTemplate. Fixed NFS mounting code. 18 Jan 2005; Preston Cody : Took out unnecessary setting of random livecd root password. the cd already sets it randomly. 15 Jan 2005; Andrew Gaffney : Took out an unneeded step from CC's run() 15 Jan 2005; Preston Cody : Attempt at detecting and adding windows partitions to lilo. 14 Jan 2005; Preston Cody : Added lilo code and cleaned up lilo code. also do_partitioning renamed to partition. fixed misc exit_status => exitstatus typo. 11 Jan 2005; Andrew Gaffney : Added basic code for resizing filesystems with pyparted. Fixed code for resizing ntfs and ext2/3. 10 Jan 2005; Andrew Gaffney : Fixed partition() in x86Template so that it scans through logicals and deletes before deleting containing extended partition. Also clears partition table to be safe before third pass. 08 Jan 2005; Preston Cody : Added mount_network_shares. not able to test it from this computer. will test when i get back to school. also added start_portmap to the client_controller as an always-do. agaffney says this is needed for NFS mounts to work. 08 Jan 2005; Andrew Gaffney : Partial rewrite of partitioning code in x86Template. No longer shells out to parted to perform actions, now uses all pyparted calls. Code "works" in a test, but still needs lots of TLC. Also modified tests/install.py to work with x86Template and GLIClientConfiguration. 07 Jan 2005; Andrew Gaffney : Initial move of partitioning code from ArchTemplate to x86Template. 07 Jan 2005; Preston Cody : Added grp_install and services to InstallProfile. forgot about the set_root_password 07 Jan 2005; Preston Cody : Fixed a few more edit_configs. fixed a chroot multicommand bug thanks to agaffney. Test Install ran very well (skipping partitioning). 05 Jan 2005; Preston Cody : My mid-day update. rewrote mount_local_partitions for order of mounting. fixed prepare_chroot. rewrote configure_fstab and install_bootloader for new partition format. fixed a few _edit_configs. some may still have eluded me. 05 Jan 2005; Preston Cody : Overhauled the entire ArchTemplate and did a lot of other misc fixes in order to test it. Just finished mount_local_partitions in GLIArchitectureTemplate 05 Jan 2005; Andrew Gaffney : Added get_num_sectors() to GLIStorageDevice. 04 Jan 2005; Andrew Gaffney : GLIStorageDevice now tracks partition boundaries in sectors instead of cylinders. Also now ignores <=100 sectors for free space. Removed remaining depends stuff from GLIInstallProfile. 20 Dec 2004; Andrew Gaffney : GLIStorageDevice returns "unknown" instead of "" for get_type() 19 Dec 2004; Andrew Gaffney : Added get_extended_partition() to GLIStorageDevice. Rewrote get_logicals() to actually work. Commented out resizability checking code for speed. 17 Dec 2004; Andrew Gaffney : Switched to using dumpe2fs to determine free space left in ext2/3 filesystem in GLIStorageDevice at the suggestion of plors 10 Dec 2004; Andrew Gaffney : Added a function to GLIUtility to pull a value from a make.conf-style config file. Minor type fix to GLIInstallProfile.py 09 Dec 2004; Andrew Gaffney : Added code in GLIArchitectureTemplate.py to write netmounts into fstab. Separated network mounts from partition data structure in GLIInstallProfile 27 Nov 2004; Andrew Gaffney : Changed the way GLIStorageDevice.py determines the amount a ext2/3 filesystem can be resized. 27 Oct 2004; Preston Cody : Added some of the final functions to GLIInstallTemplate. Yes this project is still active despite rare use of the Changelog! 11 Jun 2004; Nathaniel McCallum : Added the GLIPartitionTools.py file. This is a temporary insertion of partitioning tools that will eventually go into their own package. 27 Mar 2004; Nathaniel McCallum : Added InstallProfileTODO.txt. Added GLIClientConfiguration.py (contains run-time for the program). Added __init__(install_profile, client_configuration) to GLI.InstallProfile. This sets install_profile and client_configuration once so as to avoid constantly passing stuff every time we call a method. 26 Mar 2004; Nathaniel McCallum : Added another private method to GLI.InstallTemplate. _edit_config() modifies config files without messing up all the other stuff in them. This will be used for making changes to make.conf, rc.conf, /etc/conf.d/net, etc... 25 Mar 2004; Nathaniel McCallum : Added GLI.InstallTemplate framework. This is not yet functional. However, it does have a few basic things. I added two private methods. One is _depends(). This will be used for dependency checking (ie. unpacking a tarball requires that partitioning has been done). The other is _exec_in_chroot(). This is the exact same syntax as os.system(), however, instead of being run in the liveCD environment, it runs in the chroot. This requires a bit of fork() magic, so I isolated the code. Hope to work more this week to get this class formed... 14 Feb 2004; Eric Sammer : Added SAX parsing. Made GLI.InstallProfile a subclass of xml.sax.ContentHandler for obvious reasons. Switched kernel_modules and users to be lists instead of tuples to allow for easier modification (mutable, rather than immutable objects). Updated existing pydoc and added more. Implemented body of GLI.InstallProfile.parse(). Cleaned file format of GLI.py a bit. Fixed all accessors to use self references. Added initial unit test code. 9 Feb 2004; Eric Sammer : Added initial changelog. Setting up the basic structure of the CVS repository for the project. Added the UML class diagram in docs. Added a skeletal GLI python module. Added misc files such news, authors, etc.