Created new branch for Debian Live live-cd build system development. This

commit includes the default configuration files, which don't work with Debian 
"etch".
This commit is contained in:
frisco 2008-06-09 00:10:03 +00:00
commit ec818dbbc3
253 changed files with 6460 additions and 0 deletions

View file

@ -0,0 +1,56 @@
## fixed bugs:
## - http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=404563
## - http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=404555
diff -ruN dfsbuild.orig/dfsbuild-0.99.2/Bootloader/Grub.hs dfsbuild/dfsbuild-0.99.2/Bootloader/Grub.hs
--- dfsbuild.orig/dfsbuild-0.99.2/Bootloader/Grub.hs 2006-04-20 00:10:11.000000000 +0200
+++ dfsbuild/dfsbuild-0.99.2/Bootloader/Grub.hs 2007-01-02 00:56:45.000000000 +0100
@@ -40,8 +40,11 @@
grub_generic env =
do createDirectory (targetdir env ++ "/boot/grub") 0o755
- grubfiles <- glob "/lib/grub/*/*"
- safeSystem "cp" $ ["-rv"] ++ grubfiles ++ [targetdir env ++ "/boot/grub/"]
+ -- since etch (Debian 4.0) grub files are located in /usr/lib instead of /lib
+ grubfiles_pre_etch <- glob "/lib/grub/*/*"
+ grubfiles_since_etch <- glob "/usr/lib/grub/*/*"
+ safeSystem "cp" $ ["-rv"] ++ grubfiles_pre_etch ++ grubfiles_since_etch ++
+ [targetdir env ++ "/boot/grub/"]
menuText <- grubMenu env
writeFile (targetdir env ++ "/boot/grub/menu.lst") menuText
diff -ru dfsbuild.orig/dfsbuild-0.99.2/Actions/Mirror.hs dfsbuild/dfsbuild-0.99.2/Actions/Mirror.hs
--- dfsbuild.orig/dfsbuild-0.99.2/Actions/Mirror.hs 2006-04-20 00:10:11.000000000 +0200
+++ dfsbuild/dfsbuild-0.99.2/Actions/Mirror.hs 2007-01-01 22:09:26.000000000 +0100
@@ -33,7 +33,7 @@
archargs ++ debugargs ++ ["-d", suite, targetdir env, mirror]
-- Next, copy them into the mirror.
codename <- getCodeName
- (targetdir env ++ "/var/cache/bootstrap/Release")
+ (targetdir env ++ "/var/cache/bootstrap/")
dm $ "Codename for this is " ++ codename
mapM_ (\x -> handle (\_ -> return ()) (createDirectory x 0o755))
[mirrordir, mirrordir ++ "/conf"]
diff -ru dfsbuild.orig/dfsbuild-0.99.2/Utils.hs dfsbuild/dfsbuild-0.99.2/Utils.hs
--- dfsbuild.orig/dfsbuild-0.99.2/Utils.hs 2006-04-20 00:10:11.000000000 +0200
+++ dfsbuild/dfsbuild-0.99.2/Utils.hs 2007-01-01 22:40:34.000000000 +0100
@@ -16,6 +16,7 @@
import MissingH.ConfigParser
import MissingH.Cmd
import System.IO.Unsafe
+import System.IO.Error
import Text.Regex
import MissingH.Path.FilePath
import System.Directory(doesFileExist)
@@ -72,7 +73,11 @@
getCodeName :: FilePath -> IO String
getCodeName fp =
- do c <- readFile fp
+ do c_old <- System.IO.Error.catch (readFile (fp ++ "Release"))
+ (\e -> if System.IO.Error.isDoesNotExistError e then return "" else ioError e)
+ c_new <- System.IO.Error.catch (readFile (fp ++ "_dists_._Release"))
+ (\e -> if System.IO.Error.isDoesNotExistError e then return "" else ioError e)
+ c <- if length(c_old) > 0 then return c_old else return c_new
let cr = mkRegex "Codename: ([a-z]+)"
case matchRegex cr c of
Just [cn] -> return cn

View file

@ -0,0 +1,60 @@
## this patch allows the addition of custom scripts to prepare/cleanup the target
## directory before/after package installation
## it is necessary for the samba package as it requires /proc/ during installation
--- dfsbuild.orig/dfsbuild-0.99.2/Actions.hs 2006-04-20 00:10:11.000000000 +0200
+++ dfsbuild/dfsbuild-0.99.2/Actions.hs 2007-01-03 15:36:59.000000000 +0100
@@ -43,6 +43,11 @@
finished Bootstrapped
Bootstrapped -> -- Time to install shared files
do installlib env
+ finished EnvironmentPrepared
+ EnvironmentPrepared -> -- execute configurable hook scripts
+ do im $ "Executing preparation scripts"
+ mapM_ (safeSystem `flip` [ targetdir env ])
+ (splitWs $ eget env "preparescripts")
finished LibsInstalled
LibsInstalled -> -- Install additional packages
do installpkgs env
@@ -68,6 +73,11 @@
do safeSystem "mkcramfs" [(targetdir env) ++ "/opt/initrd",
(targetdir env) ++ "/boot/initrd.dfs"]
recursiveRemove SystemFS $ (targetdir env) ++ "/opt/initrd"
+ finished EnvironmentCleaned
+ EnvironmentCleaned -> -- execute configurable hook scripts
+ do im $ "Executing preparation scripts"
+ mapM_ (safeSystem `flip` [ targetdir env ])
+ (splitWs $ eget env "cleanupscripts")
finished RamdiskBuilt
RamdiskBuilt -> -- Install the bootloader
do (isoargs, blfunc) <- Bootloader.install env
--- dfsbuild.orig/dfsbuild-0.99.2/Utils.hs 2007-01-01 23:06:17.000000000 +0100
+++ dfsbuild/dfsbuild-0.99.2/Utils.hs 2007-01-03 15:33:00.000000000 +0100
@@ -30,10 +31,10 @@
marker :: String,
datestr :: String}
-data DFSState = Fresh | Initialized | Mirrored | Bootstrapped | Installed
- | LibsInstalled | DebsInstalled | CfgHandled | InitPrepped
+data DFSState = Fresh | Initialized | Mirrored | Bootstrapped | EnvironmentPrepared
+ | Installed | LibsInstalled | DebsInstalled | CfgHandled | InitPrepped
| RDPrepped
- | KernelsInstalled | RamdiskBuilt | BootloaderInstalled
+ | KernelsInstalled | EnvironmentCleaned | RamdiskBuilt | BootloaderInstalled
deriving (Eq, Show, Read, Ord)
im = infoM "dfs"
--- dfsbuild.orig/dfsbuild-0.99.2/dfs.cfg 2006-07-02 01:46:22.000000000 +0200
+++ dfsbuild/dfsbuild-0.99.2/dfs.cfg 2007-01-03 15:40:22.000000000 +0100
@@ -115,6 +115,12 @@
/var/log/dpkg.log
/var/log/bootstrap.log
+# Scripts that should be executed after bootstrapping and before package installation
+#preparescripts =
+
+# Scripts that should be executed after package installation and before iso generation
+#cleanupscripts =
+
######################################################################
# Arch settings: i386
######################################################################