Package: debian-installer Severity: important Tags: patch Since recently (I don't know exactly when), daily builds of D-I include a broken win32-loader.ini, which causes win32-loader to abort.
The file is filled with literal "-en" strings. I suppose this is part of the jihad against shell features that has been going on lately, though I wasn't aware those are considered bashisms. Anyway. Attaching a patch that fixes the problem by using /bin/echo from coreutils. -- System Information: Debian Release: 5.0.2 APT prefers stable APT policy: (500, 'stable') Architecture: amd64 (x86_64) Kernel: Linux 2.6.26-libre2-2-amd64 (SMP w/2 CPU cores) Locale: LANG=ca_AD.UTF-8, LC_CTYPE=ca_AD.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/bash
Index: config/x86.cfg =================================================================== --- config/x86.cfg (revision 59918) +++ config/x86.cfg (working copy) @@ -107,17 +107,17 @@ mcopy -i$(TEMP_BOOT) /usr/lib/win32-loader/g2ldr ::g2ldr ; \ mcopy -i$(TEMP_BOOT) /usr/lib/win32-loader/g2ldr.mbr ::g2ldr.mbr ; \ \ - (echo -en "[installer]\n"; \ - echo -en "arch=$(ARCH)\n"; \ - echo -en "default_desktop=gnome\n"; \ + (/bin/echo -en "[installer]\n"; \ + /bin/echo -en "arch=$(ARCH)\n"; \ + /bin/echo -en "default_desktop=gnome\n"; \ if [ -n "$(INITRD_GTK)" ]; then \ - echo -en "$(ARCH)/linux=linux\n$(ARCH)/initrd=initrd.gz\n"; \ - echo -en "$(ARCH)/gtk/linux=linux\n$(ARCH)/gtk/initrd=initrdg.gz\n"; \ + /bin/echo -en "$(ARCH)/linux=linux\n$(ARCH)/initrd=initrd.gz\n"; \ + /bin/echo -en "$(ARCH)/gtk/linux=linux\n$(ARCH)/gtk/initrd=initrdg.gz\n"; \ else \ - echo -en "user_interface=text\n"; \ - echo -en "$(ARCH)/linux=linux\n$(ARCH)/initrd=initrd.gz\n"; \ + /bin/echo -en "user_interface=text\n"; \ + /bin/echo -en "$(ARCH)/linux=linux\n$(ARCH)/initrd=initrd.gz\n"; \ fi; \ - echo -en "\n[grub]\ng2ldr=g2ldr\ng2ldr.mbr=g2ldr.mbr\n") \ + /bin/echo -en "\n[grub]\ng2ldr=g2ldr\ng2ldr.mbr=g2ldr.mbr\n") \ | todos | mcopy -i$(TEMP_BOOT) - ::win32-loader.ini) \ || (mdel -i$(TEMP_BOOT) ::setup.exe ::g2ldr ::g2ldr.mbr ::win32-loader.ini ; \ echo "*** Failed to add win32-loader, probably out of space." >&2) ; \ @@ -190,17 +190,17 @@ cp /usr/lib/win32-loader/g2ldr $(TEMP_CD_INFO_DIR)/g2ldr; \ cp /usr/lib/win32-loader/g2ldr.mbr $(TEMP_CD_INFO_DIR)/g2ldr.mbr; \ \ - (echo -en "[installer]\n"; \ - echo -en "arch=$(ARCH)\n"; \ - echo -en "default_desktop=gnome\n"; \ + (/bin/echo -en "[installer]\n"; \ + /bin/echo -en "arch=$(ARCH)\n"; \ + /bin/echo -en "default_desktop=gnome\n"; \ if [ -n "$(INITRD_GTK)" ]; then \ - echo -en "$(ARCH)/linux=install/vmlinuz\n$(ARCH)/initrd=install/initrd.gz\n"; \ - echo -en "$(ARCH)/gtk/linux=install/vmlinuz\n$(ARCH)/gtk/initrd=install/gtk/initrd.gz\n"; \ + /bin/echo -en "$(ARCH)/linux=install/vmlinuz\n$(ARCH)/initrd=install/initrd.gz\n"; \ + /bin/echo -en "$(ARCH)/gtk/linux=install/vmlinuz\n$(ARCH)/gtk/initrd=install/gtk/initrd.gz\n"; \ else \ - echo -en "user_interface=text\n"; \ - echo -en "$(ARCH)/linux=install/vmlinuz\n$(ARCH)/initrd=install/initrd.gz\n"; \ + /bin/echo -en "user_interface=text\n"; \ + /bin/echo -en "$(ARCH)/linux=install/vmlinuz\n$(ARCH)/initrd=install/initrd.gz\n"; \ fi; \ - echo -en "\n[grub]\ng2ldr=g2ldr\ng2ldr.mbr=g2ldr.mbr\n") \ + /bin/echo -en "\n[grub]\ng2ldr=g2ldr\ng2ldr.mbr=g2ldr.mbr\n") \ | todos > $(TEMP_CD_INFO_DIR)/win32-loader.ini; \ fi @@ -255,17 +255,17 @@ cp /usr/lib/win32-loader/g2ldr $(TEMP_CD_TREE)/g2ldr; \ cp /usr/lib/win32-loader/g2ldr.mbr $(TEMP_CD_TREE)/g2ldr.mbr; \ \ - (echo -en "[installer]\n"; \ - echo -en "arch=$(ARCH)\n"; \ - echo -en "default_desktop=gnome\n"; \ + (/bin/echo -en "[installer]\n"; \ + /bin/echo -en "arch=$(ARCH)\n"; \ + /bin/echo -en "default_desktop=gnome\n"; \ if [ "$(TYPE)" = "netboot/gtk" ]; then \ - echo -en "user_interface=graphical\n"; \ - echo -en "$(ARCH)/gtk/linux=linux\n$(ARCH)/gtk/initrd=initrd.gz\n"; \ + /bin/echo -en "user_interface=graphical\n"; \ + /bin/echo -en "$(ARCH)/gtk/linux=linux\n$(ARCH)/gtk/initrd=initrd.gz\n"; \ else \ - echo -en "user_interface=text\n"; \ - echo -en "$(ARCH)/linux=linux\n$(ARCH)/initrd=initrd.gz\n"; \ + /bin/echo -en "user_interface=text\n"; \ + /bin/echo -en "$(ARCH)/linux=linux\n$(ARCH)/initrd=initrd.gz\n"; \ fi; \ - echo -en "\n[grub]\ng2ldr=g2ldr\ng2ldr.mbr=g2ldr.mbr\n") \ + /bin/echo -en "\n[grub]\ng2ldr=g2ldr\ng2ldr.mbr=g2ldr.mbr\n") \ | todos > $(TEMP_CD_TREE)/win32-loader.ini; \ fi