package: debian-edu-install severity: wishlist Hi,
as a patch you find attached a _very_ raw draft (that shall give an idea) of a udeb template that allows selecting the desktop shell type (GNOME, KDE, LXDE, ...) during the installation process of Debian Edu.
This selection screen could either be added to the expert installation screen series or to the basic installation screen series. My preference would be to offer the question whenever installing a Debian Edu workstation (that is: becoming one question of the basic set of questions asked by Debian Edu installer).
As this issue is a wishlist item for wheezy, maybe people can comment on that and also give their preference if and where such a screen should appear. However, we should consider this from the user's point of view (admin teachers at schools).
Greets, Mike -- DAS-NETZWERKTEAM mike gabriel, dorfstr. 27, 24245 barmissen fon: +49 (4302) 281418, fax: +49 (4302) 281419 GnuPG Key ID 0xB588399B mail: mike.gabr...@das-netzwerkteam.de, http://das-netzwerkteam.de freeBusy: https://mail.das-netzwerkteam.de/freebusy/m.gabriel%40das-netzwerkteam.de.xfb
Index: build/CD-administrator/CONF-squeeze-test-dvd.sh =================================================================== --- build/CD-administrator/CONF-squeeze-test-dvd.sh (Revision 73162) +++ build/CD-administrator/CONF-squeeze-test-dvd.sh (Arbeitskopie) @@ -344,7 +344,7 @@ # Parameters to pass to kernel (or d-i) when the CD boots. Not currently # supported for all architectures. -export KERNEL_PARAMS="desktop=kde" +export KERNEL_PARAMS="" # Default desktop (currently only used by win32-loader) export DESKTOP=kde Index: build/CD-administrator/CONF-edu-testing-nolocal-dvd.sh =================================================================== --- build/CD-administrator/CONF-edu-testing-nolocal-dvd.sh (Revision 73162) +++ build/CD-administrator/CONF-edu-testing-nolocal-dvd.sh (Arbeitskopie) @@ -335,7 +335,7 @@ # Parameters to pass to kernel (or d-i) when the CD boots. Not currently # supported for all architectures. -export KERNEL_PARAMS="desktop=kde" +export KERNEL_PARAMS="" # Default desktop (currently only used by win32-loader) export DESKTOP=kde Index: build/CD-administrator/CONF-edu-testing-nolocal-netinst.sh =================================================================== --- build/CD-administrator/CONF-edu-testing-nolocal-netinst.sh (Revision 73162) +++ build/CD-administrator/CONF-edu-testing-nolocal-netinst.sh (Arbeitskopie) @@ -334,7 +334,7 @@ # Parameters to pass to kernel (or d-i) when the CD boots. Not currently # supported for all architectures. -export KERNEL_PARAMS="desktop=kde" +export KERNEL_PARAMS="" # Default desktop (currently only used by win32-loader) export DESKTOP=kde Index: build/CD-administrator/CONF-squeeze-test-amd64-i386-netinst.sh =================================================================== --- build/CD-administrator/CONF-squeeze-test-amd64-i386-netinst.sh (Revision 73162) +++ build/CD-administrator/CONF-squeeze-test-amd64-i386-netinst.sh (Arbeitskopie) @@ -335,7 +335,7 @@ # Parameters to pass to kernel (or d-i) when the CD boots. Not currently # supported for all architectures. -export KERNEL_PARAMS="desktop=kde" +export KERNEL_PARAMS="" # Default desktop (currently only used by win32-loader) export DESKTOP=kde Index: debian-edu-install/debian/changelog =================================================================== --- debian-edu-install/debian/changelog (Revision 73162) +++ debian-edu-install/debian/changelog (Arbeitskopie) @@ -2,6 +2,7 @@ [ Mike Gabriel ] * Setting author in etckeeper's VCS (Closes: #617383) + * Adds a d-i selection screen for the default desktop environment. -- Petter Reinholdtsen <p...@debian.org> Fri, 31 Dec 2010 10:32:23 +0100 Index: debian-edu-install/debian/rules =================================================================== --- debian-edu-install/debian/rules (Revision 73162) +++ debian-edu-install/debian/rules (Arbeitskopie) @@ -57,6 +57,7 @@ $(MAKE) install-partman-recipes DESTDIR=$(CURDIR)/debian/debian-edu-profile-udeb $(INSTALL_DATA) lib/partman/commit.d/* $(CURDIR)/debian/debian-edu-profile-udeb/lib/partman/commit.d $(INSTALL) debian-edu-profile $(CURDIR)/debian/debian-edu-profile-udeb/usr/bin + $(INSTALL) debian-edu-desktop $(CURDIR)/debian/debian-edu-profile-udeb/usr/bin touch $(CURDIR)/debian/debian-edu-profile-udeb/etc/uselvm $(INSTALL_DATA) version $(CURDIR)/debian/debian-edu-profile-udeb/usr/lib/debian-edu-install/. Index: debian-edu-install/debian/debian-edu-profile-udeb.templates =================================================================== --- debian-edu-install/debian/debian-edu-profile-udeb.templates (Revision 73162) +++ debian-edu-install/debian/debian-edu-profile-udeb.templates (Arbeitskopie) @@ -5,8 +5,8 @@ Template: debian-edu-install/profile Type: multiselect -__Choices: Main Server, Workstation, Roaming Workstation, Thin Client Server, Standalone -Choices-C: Main-Server, Workstation, Roaming-Workstation, Thin-Client-Server, Standalone +__Choices: Main-Server, Workstation, Roaming-Workstation, Thin-Client-Server, Standalone, Minimal +Choices-C: Main-Server, Workstation, Roaming-Workstation, Thin-Client-Server, Standalone, Minimal _Description: Profile(s) to apply to this machine: Profiles determine how the machine can be used out-of-the-box: . @@ -23,15 +23,13 @@ - Standalone: for machines meant to be used outside the Debian Edu network. It includes a GUI and conflicts with other profiles. + - Minimal: fully integrated into the Debian Edu network but + contains only a basic system without any GUI. Template: debian-edu-install/profile-expert Type: multiselect -#flag:translate!:7 -#__Choices: Main-Server, Workstation, Roaming-Workstation, Thin-Client-Server, Standalone, Minimal, Sugar -__Choices: Main Server, Workstation, Roaming Workstation, Thin Client Server, Standalone, Minimal +__Choices: Main-Server, Workstation, Roaming-Workstation, Thin-Client-Server, Standalone, Minimal Choices-C: Main-Server, Workstation, Roaming-Workstation, Thin-Client-Server, Standalone, Minimal -#flag:comment:3 -## Translators, do not translate "Sugar" _Description: Profile(s) to apply to this machine: Profiles determine how the machine can be used out-of-the-box: . @@ -50,10 +48,21 @@ profiles. - Minimal: fully integrated into the Debian Edu network but contains only a basic system without any GUI. -# - Sugar: variant of 'Standalone' that includes the Sugar -# desktop environment which promotes sharing and -# collaborative learning for children. +Template: debian-edu-install/desktop +Type: select +__Choices: KDE4, GNOME, LXDE, Sugar +Choices-C: KDE4, GNOME, LXDE, Sugar +_Description: Default desktop environment: + The desktop environment determines the look'n'feel of a Skolelinux workstation: + . + - KDE: The K desktop environment is the Skolelinux's default + desktop environment. + - GNOME: The GNOME desktop environment can be neat alternative + - LXDE: LXDE is a very slim desktop environment that is recommended + especially for Thin Client Servers + - Sugar: The Sugar desktop environment promotes sharing and + collaborative learning for children. Template: debian-edu-install/standalone_only Type: error _Description: Standalone profile cannot be used with other profiles Index: debian-edu-install/preseed-values/defaults.desktop-kde =================================================================== --- debian-edu-install/preseed-values/defaults.desktop-kde (Revision 0) +++ debian-edu-install/preseed-values/defaults.desktop-kde (Revision 0) @@ -0,0 +1,2 @@ +# Use kdm on KDE desktops +kdm shared/default-x-display-manager select kdm Index: debian-edu-install/preseed-values/defaults.desktop-gnome =================================================================== --- debian-edu-install/preseed-values/defaults.desktop-gnome (Revision 0) +++ debian-edu-install/preseed-values/defaults.desktop-gnome (Revision 0) @@ -0,0 +1,2 @@ +# Use gdm on GNOME desktops +gdm shared/default-x-display-manager select gdm Index: debian-edu-install/preseed-values/defaults.desktop-lxde =================================================================== --- debian-edu-install/preseed-values/defaults.desktop-lxde (Revision 0) +++ debian-edu-install/preseed-values/defaults.desktop-lxde (Revision 0) @@ -0,0 +1,2 @@ +# Use gdm on LXDE desktops +gdm shared/default-x-display-manager select gdm Index: debian-edu-install/preseed-values/defaults.workstation =================================================================== --- debian-edu-install/preseed-values/defaults.workstation (Revision 73162) +++ debian-edu-install/preseed-values/defaults.workstation (Arbeitskopie) @@ -3,9 +3,6 @@ # Do not create the CVS repository by default cvs cvs/badrepositories select ignore -# Use kdm, not xdm or gdm -kdm shared/default-x-display-manager select kdm - # Use the keyboard setting from d-i when configuring Xorg xserver-org xserver-xorg/autodetect_keyboard boolean true Index: debian-edu-install/preseed-values/defaults.standalone =================================================================== --- debian-edu-install/preseed-values/defaults.standalone (Revision 73162) +++ debian-edu-install/preseed-values/defaults.standalone (Arbeitskopie) @@ -4,9 +4,6 @@ # Do not create the CVS repository by default cvs cvs/badrepositories select ignore -# Use kdm, not xdm or gdm -kdm shared/default-x-display-manager select kdm - # Make another user passwd passwd/make-user boolean true Index: debian-edu-install/preseed-values/defaults.desktop-sugar =================================================================== --- debian-edu-install/preseed-values/defaults.desktop-sugar (Revision 0) +++ debian-edu-install/preseed-values/defaults.desktop-sugar (Revision 0) @@ -0,0 +1,2 @@ +# Use gdm on SUGAR desktops +gdm shared/default-x-display-manager select gdm Index: debian-edu-install/debian-edu-profile =================================================================== --- debian-edu-install/debian-edu-profile (Revision 73162) +++ debian-edu-install/debian-edu-profile (Arbeitskopie) @@ -1,5 +1,7 @@ #!/bin/sh -e +# FIXME: this script needs to be split into its components/steps (to make it easier to maintain) + . /usr/share/debconf/confmodule . /lib/preseed/preseed.sh # for $logfile @@ -139,10 +141,9 @@ fi template="debian-edu-install/profile" -# Show minimal profile by default as a test [pere 2010-11-05] -#if [ true = "$expert" ] ; then +if [ true = "$expert" ] ; then template="debian-edu-install/profile-expert" -#fi +fi preseedfile=/tmp/debian-edu-preseed.$$ touch $preseedfile @@ -506,9 +507,6 @@ db_set "apt-setup/local0/key" "http://ftp.skolelinux.org/pub/debian-edu-archive.key" || true fi - - - log "Preseeding" if [ "$EDUPROFILE" ] ; then @@ -545,6 +543,9 @@ fi done +# ask which desktop to install... +debian-edu-desktop + # Enable the firstboot script to report installation errors. Preseeded # here and not in defaults.common to make sure it only is set on first time # installation using debian-installer. Checking the seen flag to allow @@ -564,7 +565,7 @@ touch $logfile # Create if missing, to make sure >> work cat $preseedfile >> $logfile -# rm $preseedfile +rm $preseedfile # Make sure that the kernel question doesn't show up. Can not use # preseeding directly, as these values are not loaded yet when this Index: debian-edu-install/debian-edu-desktop =================================================================== --- debian-edu-install/debian-edu-desktop (Revision 0) +++ debian-edu-install/debian-edu-desktop (Revision 0) @@ -0,0 +1,85 @@ +#!/bin/sh -e + +. /usr/share/debconf/confmodule +. /lib/preseed/preseed.sh # for $logfile + +log() { + logger -t debian-edu-desktop "info: $*" +} + +error() { + logger -t debian-edu-desktop "error: $*" +} + +add_preseed() { + owner="$1" + template="$2" + type="$3" + value="$4" + echo $owner $template $type "$value" >> $preseedfile +} + +EDUDESKTOP="" +if grep -iq 'desktop=sugar' /proc/cmdline ; then + EDUDESKTOP="sugar" +elif grep -iq 'desktop=lxde' /proc/cmdline ; then + EDUDESKTOP="lxde" +elif grep -iq 'desktop=gnome' /proc/cmdline ; then + EDUDESKTOP="gnome" +elif grep -iq 'desktop=kde' /proc/cmdline ; then + EDUDESKTOP="kde" +fi + +template="debian-edu-install/desktop" +preseedfile=/tmp/debian-edu-preseed.$$ +touch $preseedfile + +[ "$EDUDESKTOP" ] && db_set "$template" "$EDUDESKTOP" + +#ask desktop question +log "choosing desktop to be installed" + +RET="$EDUDESKTOP" +looplimit="xxx" +loopcount="" + +while test -z "$RET" ; do + db_input critical "$template" || [ $? -eq 30 ] + db_go || true + db_fset "$template" seen false || true + + db_get "$template" || true + loopcount="x$loopcount" + if test "$loopcount" = "$looplimit" ; then + exit 1; + fi +done +EDUDESKTOP=$RET +log "desktop to be installed is '$EDUDESKTOP', loopcount='$loopcount'" + +if [ "$EDUDESKTOP" ] ; then + log "Preseeding target with '$EDUPROFILE'" + add_preseed debian-edu-install debian-edu-install/desktop select "$EDUDESKTOP" +else + log "No desktop to preseed" +fi + +if [ -f /usr/lib/debian-edu-install/defaults.desktop-$EDUDESKTOP ] ; then + log "Found preseeding for desktop-$EDUDESKTOP" + cat /usr/lib/debian-edu-install/defaults.desktop-$EDUDESKTOP >> $preseedfile + else + error "Unable to find preseeding for 'desktop-$EDUDESKTOP'" + fi +done + +# Load into the cdebconf database used by d-i +debconf-set-selections $preseedfile || \ + error "Failed to load preseed values from $preseedfile" + +# Get the post-base-installer.d fragment from preseed to pass relevant +# values into the debconf database in /target when the base system is +# installed. +touch $logfile # Create if missing, to make sure >> work +cat $preseedfile >> $logfile + +rm $preseedfile Eigenschaftsänderungen: debian-edu-install/debian-edu-desktop ___________________________________________________________________ Hinzugefügt: svn:executable + *
pgp7i1LWStcqB.pgp
Description: Digitale PGP-Unterschrift