Hello all, You were so helpful with my last issue I thought I'd give you more information about my project and some other issues I am having. What I am doing is building a simple computer for the Senior Project. Basically, it will be a computer that your Grandmother could use. I uses the Matchbox project for a window manager and desktop and includes custom versions of Epiphany, Sylpheed, Abiword and Gthumb. For the most part it works very well and simple-cdd has been very easy to use and has drastically reduced the amount of work I had to do. I have had a few issues with it I would like help with: 1. Every time I run the installation of the cd built with simple-cdd I get the "Warning: file://cdrom/dists/etch/main/binary-i386/Packages.gz was corrupt" message. It's more of annoyance than anything. It seems to be the same issue that was posted to the list in October but no solutions were ever given for it. I have always gotten this error message even when I used the x-basic profile so it's not anything particular the profile I'm using. As far as a can the the md5sums are correct but I'm not sure if I'm using the correct process to check them. 2. I have made many CD and tested them but all of a sudden I've been getting an error that package mplayer is missing. This happened after making some small changes to the profile but I do not remember what they were. You can see the out put of the build script in stderr and stdout attached. I am using several custom debs and I tried manually downloading mplayer and placing it into the custome debs directory but it made no difference. I have tried deleting the tmp folder and forcing the script to rebuild the mirror and everything but that did not make a difference either. 3. This is more of a general Debian question than simple-cdd but I want as much hard as possible to automatically configured. In particular I would like the default drivers and setup to be used for any printer connected. It seems the printconf package is supposed to do this but it didn't seem to work for me. Also the sound does not seem to be working, I think it's probably just of matter of having the right packages. I can manually configure it by installing alsa-base and alsa-utils and running alsaconf but I want it automatic. Finally when I tried installing it on real hardware it did not do a good job of detecting the monitor. In particular the HorizSync and VertRefresh values were not correct and the refresh rate was far from optimal in Xorg. Using ddcprobe I could find the correct values and enter them in xorg.conf but naturally I would like it to be done automatically. It is probably just a matter of installing the right packages or using preseeding but I have no idea what. That's all for now, If you could shed any light on any of these issues I would appreciate it. I am using Debian Etch with simple-cdd 0.3.6 from sid and am building the cd with simple-cdd --profiles opc --profiles-udeb-dist sid Attached is the configuration and profiles.
# simple-cdd.conf detailed configuration file # Note: this is an example list of configuration options: it is *strongly* # advised to merely create a new file using only the options you actually need. # Note: Variables in lowercase are only used by simple-cdd. # Profile Selection # # The following four files get included on the CD if present: # $profile.preseed # Debconf selections. # $profile.packages # Packages to be installed with the profile. Dependencies also will # be installed. # $profile.downloads # Additional packages to be included on the CD with this profile, but # not installed by default. # $profile.postinst # Post-install script that is run after installing packages. # # During the install after base system setup, it will give you the # options to determine which profiles you want to install. locale="en_US" keyboard="us" # Profiles to include on the CD profiles="opc" #profiles="x-basic ltsp" # To automatically select profiles (must also be listed in profiles): auto_profiles="opc" # To include profiles which only effect the CD build # build_profiles="foo bar baz" # Mirror tools # mirror_tools="wget reprepro" # Mirror variables #server="ftp.us.debian.org" #debian_mirror="ftp://$server/debian/" #rsync_debian_mirror="$server::debian" # which components to get from the mirror #mirror_components="main" mirror_components="main contrib non-free" # Mirror for security updates # Expects security updates to be in dists/DEBIAN_DIST/updates #security_mirror="http://security.debian.org/" # Extra mirror # Only works with "wget reprepro" mirror tools. #debian_mirror_extra="http://example.com/debian/" #mirror_components_extra="$mirror_components non-free" # Extra files to include onto the CD # These will get copied to /simple-cdd dir on the CD #all_extras="" # Generate a simple package repository on the CD with the debs cited # Please insert full paths. local_packages="/home/dave/opc-0.1/debs" # Call mirror tools at each build- defaults to true. #do_mirror="false" # Set your proxy (if any). #export http_proxy=http://localhost:3128 # Enable serial console settings: true/false # useful when testing with qemu's -nographic mode #use_serial_console="false" # Location of debian-cd files #debian_cd_dir=/usr/share/debian-cd #debian_cd_dir=$simple_cdd_dir/debian-cd # Temporary directory for simple-cdd #simple_cdd_temp="$simple_cdd_dir/tmp/" # Set target architecture for build #export ARCH=${ARCH:-`dpkg --print-architecture`} #export ARCHES=$ARCH # You can use a alternative splash image using a PNG image (640 x 480, # 4-bit colormap, non-interlaced), other formats should work but weren't # tested. Keep in mind that the alternative splash image will be displayed # only at the installer boot prompt. # export SPLASHPNG="$simple_cdd_dir/yourimage.png" # Don't include the manual or release notes, respectively, to save space. export OMIT_MANUAL=1 export OMIT_RELEASE_NOTES=1 # Don't generate JIGDO files #export DOJIGDO=0 # Define the CD label export DISKINFO="Simple Computer $(date --utc +%Y%m%d)" # Where debian-cd expects to find itself :) #export BASEDIR=$simple_cdd_temp/debian-cd # Kernel parameters passed to the CD bootloader works with isolinux on i386. #export KERNEL_PARAMS="preseed/file=/cdrom/simple-cdd/default.preseed" # download a specific codename branch, such as sid, sarge, or etch. #di_codename="$CODENAME" # download a specific installer release, such as 20041118 or rc2 #di_release="current" # custom debian-installer images to use. must contain one sub-directory for # each architecture. #custom_installer="/path/to/custom/installer/" # files needed to build the CD, downloaded from the default mirror #mirror_files="README doc/ tools/" ## Values used by both the various mirror tools and debian-cd # # directory of debian mirror #export MIRROR=$simple_cdd_dir/mirror/ # location of generated task file #export TASK=$simple_cdd_temp/simple-cdd.task # These are generally debian-cd files which should get included in the task file #includes="$BASEDIR/tasks/debian-installer+kernel-$CODENAME $BASEDIR/tasks/debian-installer-$CODENAME $BASEDIR/tasks/base-$CODENAME" # Location of generated debpartial-mirror configuration file #debpartial_conf="$simple_cdd_temp/debpartial-mirror.conf" # Package filter #debpartial_filter="main:*:standard main:*:required main:*:important main/debian-installer:*:*" #debpartial_filter_security="main:*:standard main:*:required main:*:important" #debpartial_filter_extra="main:*:standard main:*:required main:*:important" # Filter for newer (0.2.90+) versions of debpartial-mirror #debpartial_filter_new="priority:required|important|standard" # Components for newer (0.2.90+) versions of debpartial-mirror #debpartial_components="main main/debian-installer" # Security components for newer (0.2.90+) versions of debpartial-mirror #debpartial_components_security="main" # Extra components for newer (0.2.90+) versions of debpartial-mirror #debpartial_components_extra="main" ## debian-cd options # # Packages to include in initial debootstrap install. # Note that this will not work well with multi-arch CDs #export BASE_INCLUDE=$simple_cdd_temp/simple-cdd.$CODENAME.base_include # Packages to exclude from the initial debootstrap install, useful if # you want to use a MTA other than exim #export BASE_EXCLUDE=$simple_cdd_dir/excludes/base-excludes-sarge # Location where generated CD image(s) will be put #export OUT=$simple_cdd_dir/images/ # debian-cd temporary directories #export TDIR="$simple_cdd_temp/cd-build" #export APTTMP="$TDIR/apt/" # Increase the size limit if debian-cd tries to make more CDs than you want, # and the generated CDs are smaller than 650MB, or if you want to generate # larger than "normal" CD images. #export SIZELIMIT=838860800 # Don't include contrib #export CONTRIB=0 # Only generate one CD #export MAXCDS=1 # Only put the installer onto the cd (set NORECOMMENDS,... as well). # INSTALLER_CD=0: nothing special (default) # INSTALLER_CD=1: just add debian-installer (use TASK=tasks/debian-installer) # INSTALLER_CD=2: add d-i and base (use TASK=tasks/debian-installer+kernel) # # What I understand it does is saying "I do want the installer [and base], so # make sure they're always in" (--Enrico) #export INSTALLER_CD=2 ## qemu options # # Location of the hard disk image (used with qemu's -hda option) #hd_img="$simple_cdd_dir/qemu-test.hd.img" # size of qemu hard disk image to create (if not already present) #hd_size="6G" # location of the CD image (used with qemu's -cdrom option) #cd_img="$OUT/${CDNAME:-debian}-$(echo $DEBVERSION | sed -e 's/[. ]//g')-$(echo $ARCHES | tr ' ' '-')-CD-1.iso" # memory available within qemu, in MB #mem=96 # additional options that get passed to qemu #qemu_opts="-std-vga"
simple computer
# window manager matchbox-desktop matchbox-window-manager epiphany-browser gnome-control-center sun-j2re1.6 mingetty abiword sylpheed gthumb aspell preload evince flashplugin-nonfree sudo alsa-base alsa-utils hotplug discover mplayer mozilla-mplayer pppconfig bogofilter industrial-cursor-theme printconf martian-modem martian-modem-modules-2.6.18-6-486 customdeb # x-teminal-emulator rxvt-unicode # menus up to date #menu # login manager #xdm # includes startx xbase-clients # X xorg # workaround http://bugs.debian.org/405639 xserver-xorg-input-all xserver-xorg-video-all
#autologin startx and run matchbox-session sed -ie 's,getty 38400 tty1,mingetty --autologin home tty1,g' /etc/inittab for it in `ls /home/` do echo "startx" >> /home/$it/.bash_profile echo "matchbox-session" >> /home/$it/.xinitrc done #remove docs that won't ever be read to save space rm -rf /usr/share/doc #allow the user to shutdown with icon echo "user ALL = NOPASSWD: /sbin/shutdown" >> /etc/sudoers #disable right mouse and middle mouse buttons sed -ie '/Protocol/a Option "ButtonMapping" "1 1 1 4 5 6 7"' /etc/X11/xorg.conf
# these are the basic debconf pre-seeding items needed for a miminal # interaction debian etch install using debian-installer # this example pre-seeding file was largely based on # http://d-i.alioth.debian.org/manual/example-preseed.txt # # for more explanation of the options, see: # http://d-i.alioth.debian.org/manual/en.mips/apbs04.html ## simple-cdd options # automatically select simple-cdd profiles # NOTE: profile "default" is now automatically included, and should not be # specified here. simple-cdd simple-cdd/profiles multiselect opc #simple-cdd simple-cdd/profiles multiselect ltsp, x-basic ###### Package selection. # You can choose to install any combination of tasks that are available. # Available tasks as of this writing include: Desktop environment, # Web server, Print server, DNS server, File server, Mail server, # SQL database, manual package selection. The last of those will run # aptitude. You can also choose to install no tasks, and force the # installation of a set of packages in some other way. # don't install any tasks tasksel tasksel/first multiselect #tasksel tasksel/first multiselect Desktop environment #tasksel tasksel/first multiselect Web server, Mail server, DNS server ###### Localization #d-i debian-installer/locale string en_US #d-i console-keymaps-at/keymap select us ###### Time zone setup. # Controls whether or not the hardware clock is set to UTC. d-i clock-setup/utc boolean true # Many countries have only one time zone. If you told the installer you're # in one of those countries, you can choose its standard time zone via this # question. base-config tzconfig/choose_country_zone_single boolean true d-i time/zone select US/Pacific ### keyboard configuration # don't mess with the keymap console-common console-data/keymap/policy select Don't touch keymap console-data console-data/keymap/policy select Don't touch keymap # keyboard layouts console-data console-data/keymap/qwerty/layout select US american console-data console-data/keymap/family select qwerty console-common console-data/keymap/family select qwerty ###### Account setup. # To preseed the root password, you have to put it in the clear in this # file. That is not a very good idea, use caution! passwd passwd/root-password password r00tme passwd passwd/root-password-again password r00tme # If you want to skip creation of a normal user account. #passwd passwd/make-user boolean false # Alternatively, you can preseed the user's name and login. passwd passwd/user-fullname string User passwd passwd/username string home # And their password, but use caution! passwd passwd/user-password password 12345 passwd passwd/user-password-again password 12345 #### Network configuration. # netcfg will choose an interface that has link if possible. This makes it # skip displaying a list if there is more than one interface. d-i netcfg/choose_interface select auto # Note that any hostname and domain names assigned from dhcp take # precidence over values set here. However, setting the values still # prevents the questions from being shown even if values come from dhcp. d-i netcfg/get_hostname string unassigned d-i netcfg/get_domain string unassigned # to set the domain to empty: #d-i netcfg/get_domain string # Disable that annoying WEP key dialog. d-i netcfg/wireless_wep string ### Partitioning. # you can specify a disk to partition. The device name can be given in either # devfs or traditional non-devfs format. For example, to use the first disk # devfs knows of: d-i partman-auto/disk string /dev/discs/disc0/disc # In addition, you'll need to specify the method to use. # The presently available methods are: "regular", "lvm" and "crypto" d-i partman-auto/method string regular # If one of the disks that are going to be automatically partitioned # contains an old LVM configuration, the user will normally receive a # warning. This can be preseeded away... d-i partman-auto/purge_lvm_from_device boolean true # And the same goes for the confirmation to write the lvm partitions. d-i partman-lvm/confirm boolean true # Alternately, If the system has free space you can choose to only partition # that space. #d-i partman-auto/init_automatically_partition select Use the largest continuous free space d-i partman-auto/init_automatically_partition select Guided - use entire disk # You can choose from any of the predefined partitioning recipes: d-i partman-auto/choose_recipe select All files in one partition (recommended for new users) #d-i partman-auto/choose_recipe select Desktop machine #d-i partman-auto/choose_recipe select Multi-user workstation # uncomment the following three values to makes partman automatically partition # without confirmation. d-i partman/confirm_write_new_label boolean true d-i partman/choose_partition select Finish partitioning and write changes to disk #d-i partman/confirm boolean true #### Boot loader installation. # This is fairly safe to set, it makes grub install automatically to the MBR # if no other operating system is detected on the machine. d-i grub-installer/only_debian boolean true # This one makes grub-installer install to the MBR if if finds some other OS # too, which is less safe as it might not be able to boot that other OS. d-i grub-installer/with_other_os boolean true ###### Apt setup. # automatically set the CD as the installation media. #base-config apt-setup/uri_type select http base-config apt-setup/uri_type select cdrom # only scan the first CD by default base-config apt-setup/cd/another boolean false # don't ask to use additional mirrors base-config apt-setup/another boolean false # Use a network mirror? apt-mirror-setup apt-setup/use_mirror boolean false # Do enable security updates. #base-config apt-setup/security-updates boolean true # You can choose to install non-free and contrib software. #d-i apt-setup/non-free boolean true #d-i apt-setup/contrib boolean true ###### Mailer configuration. # During a normal install, exim asks only two questions. Here's how to # avoid even those. More complicated preseeding is possible. exim4-config exim4/dc_eximconfig_configtype select no configuration at this time # It's a good idea to set this to whatever user account you choose to # create. Leaving the value blank results in postmaster mail going to # /var/mail/mail. exim4-config exim4/dc_postmaster string ### skip some annoying installation status notes # Avoid that last message about the install being complete. d-i finish-install/reboot_in_progress note # Avoid the introductory message. base-config base-config/intro note # Avoid the final message. base-config base-config/login note d-i popularity-contest/participate boolean false xserver-xorg xserver-xorg/config/inputdevice/mouse/emulate3buttons boolean false ### simple-cdd commands # you may add to the following commands by including a ";" followed by your # shell commands. # loads the simple-cdd-profiles udeb to which asks for which profiles to use, # load the debconf preseeding and queue packages for installation. d-i preseed/early_command string anna-install simple-cdd-profiles
Attachment:
stderr
Description: application/gmc-link
including configuration values for: /home/dave/opc-0.1/profiles/opc.conf unknown package type: /home/dave/opc-0.1/debs/images/debian-40r3-i386-CD-1.iso no new dependencies, finished in 1 attempts. WARNING: missing optional packages from profile default: localization-config setting preseed file... KERNEL_PARAMS: preseed/file=/cdrom/simple-cdd/default.preseed setting default locale... KERNEL_PARAMS: preseed/file=/cdrom/simple-cdd/default.preseed debian-installer/locale=en_US setting default keyboard... KERNEL_PARAMS: preseed/file=/cdrom/simple-cdd/default.preseed debian-installer/locale=en_US console-keymaps-at/keymap=us setting automatically selected profiles... KERNEL_PARAMS: preseed/file=/cdrom/simple-cdd/default.preseed debian-installer/locale=en_US console-keymaps-at/keymap=us simple-cdd/profiles=opc Missing package file for arch alpha. Missing package file for arch arm. Missing package file for arch hppa. Missing package file for arch hurd-i386. Missing package file for arch ia64. Missing package file for arch m68k. Missing package file for arch mips. Missing package file for arch mipsel. Missing package file for arch powerpc. Missing package file for arch s390. Missing package file for arch sparc. Missing package file for arch amd64. simple-cdd: Running debian-cd makefile Cleaning the build directory Generating a fake status file for apt-get and apt-cache... :> /home/dave/opc-0.1/tmp//cd-build/apt//status Ign file: etch Release.gpg Get:1 file: etch Release [938B] Ign file: etch/main Packages Ign file: etch/non-free Packages Ign file: etch/contrib Packages Ign file: etch/main/debian-installer Packages Reading package lists... Reading package lists... Building dependency tree... Apt-get is updating its files ... Ign file: etch Release.gpg Get:1 file: etch Release [938B] Ign file: etch/main Packages Ign file: etch/non-free Packages Ign file: etch/contrib Packages Ign file: etch/main/debian-installer Packages Reading package lists... Generating the complete list of packages to be included in /home/dave/opc-0.1/tmp//cd-build/etch/list... Generating the complete list of packages to be removed ... Running list2cds to sort packages for i386: Generating dependency tree with apt-cache depends... Adding standard, required, important and base packages first S/R/I/B packages take 0 bytes Adding the rest of the requested packages Now up to 283139780 bytes Done: processed/sorted 638 packages, total size 283139780 bytes. Starting to lay out packages into CD (650MiB CD) images: 332031 2K-blocks maximum per image Starting new i386 CD 1 at /home/dave/opc-0.1/tmp//cd-build/etch/CD1 Adding the required directories Generating the image label and volume id Adding tools to CD1 Adding .disk/base_components Adding .disk/cd_type Adding udeb/base includes/excludes ERROR: Unable to read UDEB_EXCLUDE file /home/dave/opc-0.1/tmp//debian-cd/data/etch/i386_netinst_udeb_exclude Adding docs to CD1 Extracting FAQ on CD1 Adding common docs on CD#1 Adding installtools Adding Release files Trying to add upgrade* directories (Optionally) making the image bootable for i386: Running tools/boot/etch/boot-i386 1 /home/dave/opc-0.1/tmp//cd-build/etch/CD1 Using ISOLINUX boot-disks image on CD1 Starting the md5sum.txt file Placing packages into image 1 Checking base is installable for i386 Found all files needed for debootstrap for all binary arches Finishing off the Release file Finishing off md5sum.txt CD 1 (not) filled with 638 packages, 149325 blocks, 305817600 bytes Finished: 638 packages placed purging /home/dave/opc-0.1/tmp//extras including description: /home/dave/opc-0.1/profiles/opc.description simple-cdd: extra files for simple-cdd WARNING: missing optional packages from profile default: localization-config ERROR: missing required packages from profile opc: mplayer mozilla-mplayer