[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnewsense-dev] Progress in testing a patched Builder on newer Ubuntu re
From: |
Bake Timmons |
Subject: |
[Gnewsense-dev] Progress in testing a patched Builder on newer Ubuntu releases! |
Date: |
Sat, 29 Aug 2009 15:16:05 -0400 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (gnu/linux) |
Hi,
Attached is a patch to Builder[1] that enables me to build a LiveCD
based on a recent snapshot of Ubuntu Jaunty[2]. I installed from the
image onto a qemu hard drive image, booted the qemu image and have
lightly tested it in KVM with no problems so far. Unfortunately, I have
been on 24K dialup for many months now, so I cannot upload a CD image.
If there is any interest in using that newer software or testing to
improve builder, perhaps someone might upload a CD image.
The patch is against svn revision 281 of Builder.
*TODO*
1. Build linux-ubuntu-modules-* packages. ATM, not having these does
not prevent going forward with testing out the LiveCD.
2. Modify and test for other repositories, such as Intrepid, Karmic
prereleases, etc. (It has only been tested on a snapshot of a Jaunty
repository from July when I briefly had access to high bandwidth.) I
believe that the modifications should not be too involved.
3. My CD images based on newer and more space-consuming software seem to
be almost 50MB larger than the current official gNewSense CD image --
too large I believe. What do we cut out of an installation based on
Jaunty, Karmic, etc.?
4. Fix missing image of installer icon on the LiveCD desktop.
5. Handle $MAINTINFO values of the form
'gNewSense hackers <address@hidden>' . While I know a hacky
way to get that to work, for now I just use a simple email address like
'address@hidden' .
*Novices*
Building a gNewSense LiveCD is nicely explained[3] and just requires a
fast internet connection and at least something like 50gb of free disk
space (more space is helpful for heavy testing!). To use the attached
patch, follow the instructions in [3], but in place of step 2 do the
following:
svn co -r281 http://svn.gnewsense.svnhopper.net/gnewsense/builder/
cp -a builder builder-orig
cd builder
patch -p1 < /path/to/name_of_saved_patch
Use local mirror sites! I consulted a list of Ubuntu mirrors and used
the netselect package to rank the best mirrors for my location. Over
the course of a couple weeks I used debmirror with some of my top mirror
sites to download a couple of repos using a Wifi hotspot.
Have fun! KVM and qemu are your friends! :)
*Notes*
[1] http://www.gnewsense.org/Builder/Builder
[2] Jaunty is a newer version of Ubuntu than the Hardy version upon
which official gNewSense is currently based.
[3] http://www.gnewsense.org/Builder/HowToCreateYourOwnGNULinuxDistribution
diff -ru a/do-update b/do-update
--- a/do-update 2009-08-25 12:38:40.000000000 -0400
+++ b/do-update 2009-08-29 13:27:04.000000000 -0400
@@ -77,8 +77,8 @@
DIR=$(reprepro -b $REPODST dumpreferences | fgrep "/$1_${NEW_VERSION}_"
| cut -d/ -f 2-4 | head -1)
if [ -n "$DIR" ]; then
# In another component - use that
- for i in $REPODST/pool/$DIR/*_"${NEW_VERSION}"_*.deb; do
- reprepro -b $REPODST includedeb $4 $i
+ for j in $REPODST/pool/$DIR/*_"${NEW_VERSION}"_*.deb; do
+ reprepro -b $REPODST includedeb $4 $j
done
else
# Build it
@@ -118,7 +118,6 @@
# Non-Free, or no valid use in gNewSense
# Paramater to remove_package is the source package name
remove_package kubuntu-desktop
- remove_package ubuntu-artwork
remove_package ubuntu-desktop
remove_package nvidia-xconfig
remove_package linux-wlan-ng-firmware
@@ -182,15 +181,27 @@
# ensure_updated kubuntu-desktop k$DISTRONAME_L-desktop
$RELEASE$i ./gen-kmeta $KMETA_VERSION
FOUND=0
+ case $(echo $MIRRORDIST | tr A-Z a-z) in
+ "hardy")
+ export KERNEL_RELEASE="2.6.24"
+ ;;
+ "jaunty")
+ export KERNEL_RELEASE="2.6.28"
+ ;;
+ *)
+ echo "* Unhandled distribution: " $MIRRORDIST
+ exit 1
+ esac
+
for n in `seq 50 -1 12`; do
export KERNEL_VERSIONPART=$n # Used by ./gen-kernel
if [ $FOUND -eq 0 ]; then
- ensure_updated linux-image-2.6.24-$n-generic
linux-image-2.6.24-$n-generic $RELEASE$i ./gen-kernel $KERNEL_VERSION
- ensure_updated
linux-ubuntu-modules-2.6.24-$KERNEL_VERSIONPART-generic
linux-ubuntu-modules-2.6.24-$KERNEL_VERSIONPART-generic $RELEASE$i
./gen-linux-ubuntu-modules $LINUX_UBUNTU_MODULES_VERSION
+ ensure_updated
linux-image-$KERNEL_RELEASE-$n-generic linux-image-$KERNEL_RELEASE-$n-generic
$RELEASE$i ./gen-kernel $KERNEL_VERSION
+ ensure_updated
linux-ubuntu-modules-$KERNEL_RELEASE-$KERNEL_VERSIONPART-generic
linux-ubuntu-modules-$KERNEL_RELEASE-$KERNEL_VERSIONPART-generic $RELEASE$i
./gen-linux-ubuntu-modules $LINUX_UBUNTU_MODULES_VERSION
else
# Only keep one
- RELEASE=$RELEASE$i remove_kernel linux 2.6.24
- RELEASE=$RELEASE$i remove_kernel
linux-ubuntu-modules-2.6.24 2.6.24
+ RELEASE=$RELEASE$i remove_kernel linux
$KERNEL_RELEASE
+ RELEASE=$RELEASE$i remove_kernel
linux-ubuntu-modules-$KERNEL_RELEASE $KERNEL_RELEASE
fi
done
@@ -205,8 +216,7 @@
mkdir -p $CHROOTDIR/$WORKINGDIR
cp -r $PKG $CHROOTDIR/$WORKINGDIR
# What are the packages build-deps?
- PKG_BUILD_DEPS=$(chroot $CHROOTDIR bash
-c "cd $WORKINGDIR/$PKGNAME && dpkg-checkbuilddeps 2>&1 |cut -d ' ' -f 5-")
- # PKG_BUILD_DEPS=$(chroot $CHROOTDIR
bash -c "cd $WORKINGDIR/$PKGNAME && dpkg-checkbuilddeps 2>&1 |sed -e 's/
*([^)]*)//g' | cut -d ' '")
+ PKG_BUILD_DEPS=$(chroot $CHROOTDIR bash
-c "cd $WORKINGDIR/$PKGNAME && dpkg-checkbuilddeps 2>&1 |sed -e 's/
*([^)]*)//g' | cut -d ' ' -f5-")
chroot $CHROOTDIR bash -c "cd
$WORKINGDIR/$PKGNAME && apt-get -y install $PKG_BUILD_DEPS"
chroot $CHROOTDIR bash -c "cd
$WORKINGDIR/$PKGNAME && dpkg-buildpackage $DPKGOPTS"
reprepro -Vb $REPODST include
$RELEASE$i $CHROOTDIR/$WORKINGDIR/*.changes
@@ -215,6 +225,12 @@
fi
done
+
+ # TODO: figure out why, with a Jaunty snapshot,
+ # gnewsense-artwork fails to build when the following line
+ # precedes the ensure_updated ubuntu-desktop ... line above
+
+ remove_package ubuntu-artwork
done
# Extra meta packages
diff -ru a/gen-artwork b/gen-artwork
--- a/gen-artwork 2009-05-29 16:21:46.000000000 -0400
+++ b/gen-artwork 2009-08-20 00:46:36.000000000 -0400
@@ -17,6 +17,7 @@
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
#
+set -ex
. config
diff -ru a/gen-example-content b/gen-example-content
--- a/gen-example-content 2009-05-29 16:21:46.000000000 -0400
+++ b/gen-example-content 2009-08-09 19:07:13.000000000 -0400
@@ -34,7 +34,7 @@
sed -i "s/Ubuntu/$DISTRONAME/; /http/d" debian/control
# Stuff that's Ubuntu specific
-rm -f *buntu* case* logos/*.png
+rm -fR *buntu* case* logos/*.png
rm -f oo-about-these-files.odt oo-cd-cover.odg oo-derivatives.doc
oo-welcome.odt
cp $CONTENT_DIR/* .
diff -ru a/gen-kernel b/gen-kernel
--- a/gen-kernel 2009-08-21 10:58:27.000000000 -0400
+++ b/gen-kernel 2009-08-28 12:47:01.000000000 -0400
@@ -20,45 +20,131 @@
. config
-DEBLOB=$PWD/firmware/deblob-2.6.24.4.1
rm -rf $WORKINGDIR
mkdir -p $WORKINGDIR
cd $WORKINGDIR
-apt-get source linux-image-2.6.24-$KERNEL_VERSIONPART-generic
-apt-get --yes build-dep linux-image-2.6.24-$KERNEL_VERSIONPART-generic
+case $(echo $MIRRORDIST | tr A-Z a-z) in
+ "hardy")
+ DEBLOB=$PWD/firmware/deblob-2.6.24.4.1
-function clean_kconfig {
+ apt-get source linux-image-2.6.24-$KERNEL_VERSIONPART-generic
+ apt-get --yes build-dep linux-image-2.6.24-$KERNEL_VERSIONPART-generic
+
+ function clean_kconfig {
#$1 = filename $2 = things to remove
- perl -i -ne 'BEGIN{$p=1} if(/^config
('$2')$/){$p=0}elsif(/^(config|endmenu|source|endif)/){$p=1}; print if $p' $1
-}
+ perl -i -ne 'BEGIN{$p=1} if(/^config
('$2')$/){$p=0}elsif(/^(config|endmenu|source|endif)/){$p=1}; print if $p' $1
+ }
# Remove non-free bits
-cd linux-*/
-rm -rf debian/firmware/*
-bash -x $DEBLOB
+ cd linux-*/
+ rm -rf debian/firmware/*
+ bash -x $DEBLOB
# deblob leaves tg3 broken - remove it
-rm ./drivers/net/tg3.c
-clean_kconfig ./drivers/net/Kconfig 'TIGON3'
-sed -i '/tg3\.o/d' ./drivers/net/Makefile
+ rm ./drivers/net/tg3.c
+ clean_kconfig ./drivers/net/Kconfig 'TIGON3'
+ sed -i '/tg3\.o/d' ./drivers/net/Makefile
# Also broken by VIDEOBUF_DVB removal
-sed -i '/CONFIG_VIDEO_CX23885/d' ./drivers/media/video/Makefile
+ sed -i '/CONFIG_VIDEO_CX23885/d' ./drivers/media/video/Makefile
# Stop b43 module reommending non-free software
# Help from #sed. See sed FAQ and Sams emails to gns-dev 20090814 20090815
-sed -i ':more;$!N;s/\n/&/2;tenough;$!bmore;:enough;s|b43err(wl, "You must go
to "\n.*"http://linuxwireless.org/en/users/Drivers/b43#devicefirmware "\n.*"and
download the correct firmware (version 4).\\n");|b43err(wl, "See
http://wiki.gnewsense.org/Documentation/Wireless for instructions on installing
free firmware for this device.\\n"); |;P;D' ./drivers/net/wireless/b43/main.c
+ sed -i ':more;$!N;s/\n/&/2;tenough;$!bmore;:enough;s|b43err(wl, "You
must go to "\n.*"http://linuxwireless.org/en/users/Drivers/b43#devicefirmware
"\n.*"and download the correct firmware (version 4).\\n");|b43err(wl, "See
http://wiki.gnewsense.org/Documentation/Wireless for instructions on installing
free firmware for this device.\\n"); |;P;D' ./drivers/net/wireless/b43/main.c
# Remove non-free ATI code and disable the modules
-rm include/video/mach64.h drivers/video/aty/mach64_*
drivers/video/aty/atyfb_base.c
-clean_kconfig ./drivers/video/Kconfig 'FB_ATY'
-clean_kconfig ./drivers/video/Kconfig 'FB_ATY_GX'
-clean_kconfig ./drivers/video/Kconfig 'FB_ATY_CT'
-clean_kconfig ./drivers/video/Kconfig 'FB_ATY_LCD'
-clean_kconfig ./drivers/video/Kconfig 'FB_ATY_GENERIC_LCD'
-clean_kconfig ./drivers/video/Kconfig 'FB_ATY_BACKLIGHT'
-sed -i '/(CONFIG_FB_ATY)/d' ./drivers/video/Makefile
-
-cd ..
+ rm include/video/mach64.h drivers/video/aty/mach64_*
drivers/video/aty/atyfb_base.c
+ clean_kconfig ./drivers/video/Kconfig 'FB_ATY'
+ clean_kconfig ./drivers/video/Kconfig 'FB_ATY_GX'
+ clean_kconfig ./drivers/video/Kconfig 'FB_ATY_CT'
+ clean_kconfig ./drivers/video/Kconfig 'FB_ATY_LCD'
+ clean_kconfig ./drivers/video/Kconfig 'FB_ATY_GENERIC_LCD'
+ clean_kconfig ./drivers/video/Kconfig 'FB_ATY_BACKLIGHT'
+ sed -i '/(CONFIG_FB_ATY)/d' ./drivers/video/Makefile
+
+ cd ..
+ ;;
+
+
+ "jaunty")
+ apt-get -d source
linux-image-$KERNEL_RELEASE-$KERNEL_VERSIONPART-generic
+ apt-get --yes build-dep
linux-image-$KERNEL_RELEASE-$KERNEL_VERSIONPART-generic
+ apt-get --yes install wget
+
+ mkdir old
+ if wget $LINUXLIBRE_TARBALL_URL
+ then
+ EXTRAVERSION=$(echo $LINUXLIBRE_TARBALL_URL | sed
's/.*\(-libre[^.]*\).*/\1/')
+ else
+ echo "Note: Avoid the (repeated) lengthy building of
linux-$KERNEL_RELEASE-libre.tar.gz here"
+ echo "by generating the file yourself and installing it so that it
can be served up"
+ echo "as
http://localhost/linux-libre/linux-$KERNEL_RELEASE-libre.tar.gz"
+ gunzip < linux_$KERNEL_RELEASE.orig.tar.gz | bzip2 >
linux-$KERNEL_RELEASE.tar.bz2
+ mv linux_$KERNEL_RELEASE.orig.tar.gz old
+ wget http://localhost/linux-libre/deblob-{2.6.28,check,main}
+ chmod u+x deblob*
+ sed -i '/^xdelta delta/,$ d' deblob-main # delete some unneeded
commands
+ gzip *tar
+ EXTRAVERSION=$(sed -n "s/.*extra=\(.*\)/\1/p"
deblob-$KERNEL_RELEASE)
+ bash -x deblob-main $KERNEL_RELEASE $EXTRAVERSION
+ fi
+
+ mv *libre*tar.gz linux_$KERNEL_RELEASE.orig.tar.gz
+
+ DIFF_FILE=$(basename *diff.gz .gz)
+ mv *diff.gz old
+ gunzip < old/*diff.gz > $DIFF_FILE.orig
+
+ # Use different patches for different Debian diff files or just use sed
+ cat > patch_debian_diff.sed<<EOF
+1,/^-EXTRAVERSION =/ s/^-EXTRAVERSION =/-EXTRAVERSION =$EXTRAVERSION/
+#\#^--- linux-2.6.28.orig/drivers/atm/fore200e.c#,+12 d
+1,\#^--- linux-2.6.28.orig/drivers/atm/fore200e.c# {\#^---
linux-2.6.28.orig/drivers/atm/fore200e.c#!b;N;N;N;N;N;N;N;N;N;N;N;N;d}
+/^@@ -326,6 +380,7 @@/,/^@@ -608,17 +671,10 @@/ {
+/^@@ -326,6 +380,7 @@/!b;N;/radeon_do_wait_for_idle/!b;
+N;N;N;N;N;N;N;N;N;N;N;N;N;N;N;N;N;N;N;N;N;d}
+/^@@ -1681,9 +1691,18 @@/,/^@@ -1699,6 +1718,8 @@/ {
+/^@@ -1681,9 +1691,18 @@/!b;N;/tdev->td_serial->port/!b;
+N;N;N;N;N;N;N;N;N;N;N;N;N;N;N;N;N;N;N;i\\
+@@ -1681,7 +1681,7 @@\\
+ tdev->td_serial->port[0]->bulk_out_endpointAddress);\\
+ const struct firmware *fw_p;\\
+ char buf[32];\\
+- sprintf(buf, "/*(DEBLOBBED)*/", type);\\
++ sprintf(buf, "/*(DEBLOBBED)*/");\\
+ \\
+ if (reject_firmware(&fw_p, buf, &dev->dev)) {\\
+ dev_err(&dev->dev, "%s - firmware not found\\\\n", __func__);
+;d}
+EOF
+ sed -f patch_debian_diff.sed $DIFF_FILE.orig > $DIFF_FILE
+ gzip $DIFF_FILE
+
+ TARFILE_INFO=$(find . -maxdepth 1 -name
linux_$KERNEL_RELEASE.orig.tar.gz -printf "%s %f")
+ DIFF_INFO=$(find . -maxdepth 1 -name $DIFF_FILE.gz -printf "%s %f")
+
+ sed -i "/Checksums/,/^$/ c\
+Checksums-Sha1:\n\
+ $(sha1sum linux_$KERNEL_RELEASE.orig.tar.gz | cut -d' ' -f1) $TARFILE_INFO\n\
+ $(sha1sum $DIFF_FILE.gz | cut -d' ' -f1) $DIFF_INFO\n\
+Checksums-Sha256:\n\
+ $(sha256sum linux_$KERNEL_RELEASE.orig.tar.gz | cut -d' ' -f1)
$TARFILE_INFO\n\
+ $(sha256sum $DIFF_FILE.gz | cut -d' ' -f1) $DIFF_INFO\n\
+Files:\n\
+ $(md5sum linux_$KERNEL_RELEASE.orig.tar.gz | cut -d' ' -f1) $TARFILE_INFO\n\
+ $(md5sum $DIFF_FILE.gz | cut -d' ' -f1) $DIFF_INFO\n\
+" *dsc
+
+ dpkg-source -x *dsc
+
+ # Without this, abi-check-generic fails over changed hashes of symbols
+ # sed -i 's/^AUTOBUILD=/AUTOBUILD=1/'
linux-*/debian/rules.d/0-common-vars.mk
+ ;;
+
+
+ *)
+ echo "*** Unhandled distribution: " $MIRRORDIST
+ exit 1
+esac
rename 's/linux/linux-nofirmware/' linux_*.orig.tar.gz
@@ -68,10 +154,18 @@
# Need to go to previous revision for ABI stuff - long way of saying second
last word
sed -i 's/^prev_revision :=.*$/prev_revision := $(word $(words $(wordlist
2,$(words $(prev_revisions)),$(prev_revisions))),$(prev_revisions))/'
debian/rules.d/0-common-vars.mk
echo 'skipmodule = true' >> debian/rules.d/0-common-vars.mk # Having less
modules is okay for us
+echo 'skipabi = true' >> debian/rules.d/0-common-vars.mk
sed -i '/\^-\[\^-\]/,/^fi/d' debian/scripts/abi-check # Having less symbols
is okay for us
+case $(echo $MIRRORDIST | tr A-Z a-z) in
+ "hardy")
# Xen hunk mismatches cause patches to *.orig not to apply
-sed -i 's/\(patch -p1\)/\1 --no-backup-if-mismatch/'
debian/rules.d/6-binary-custom.mk
+ sed -i 's/\(patch -p1\)/\1 --no-backup-if-mismatch/'
debian/rules.d/6-binary-custom.mk
+ ;;
+ *)
+ echo Further cases here...
+ ;;
+esac
echo | dch -D $RELEASE -v $(sed -n
'1s#^.*(\(.*\)).*#\1'${DISTRONAME_L}${KERNEL_VERSION}'#p' debian/changelog)
'Removed firmware'
Only in b: gen-kernel-linux-libre
diff -ru a/gen-launchpad-integration b/gen-launchpad-integration
--- a/gen-launchpad-integration 2009-05-29 16:21:46.000000000 -0400
+++ b/gen-launchpad-integration 2009-08-29 08:07:08.000000000 -0400
@@ -34,4 +34,5 @@
echo | dch -D $RELEASE -v $(sed -n
'1s#^.*(\(.*\)).*#\1'${DISTRONAME_L}${LAUNCHPAD_INTEGRATION_VERSION}'#p'
debian/changelog) "Changed to reflect $RELEASE"
-dpkg-buildpackage $DPKGOPTS
+# This script seems to fail when parallel tasks are enabled:
+dpkg-buildpackage $DPKGOPTS -j1
diff -ru a/gen-linux-ubuntu-modules b/gen-linux-ubuntu-modules
--- a/gen-linux-ubuntu-modules 2009-05-29 16:21:46.000000000 -0400
+++ b/gen-linux-ubuntu-modules 2009-08-25 12:57:07.000000000 -0400
@@ -24,9 +24,9 @@
mkdir -p $WORKINGDIR
cd $WORKINGDIR
-apt-get source linux-ubuntu-modules-2.6.24$VERSION
-apt-get --yes build-dep linux-ubuntu-modules-2.6.24$VERSION
-cd linux-ubuntu-modules-2.6.24-*
+apt-get source linux-ubuntu-modules-$KERNEL_RELEASE$VERSION
+apt-get --yes build-dep linux-ubuntu-modules-$KERNEL_RELEASE$VERSION
+cd linux-ubuntu-modules-$KERNEL_RELEASE-*
function clean_kconfig {
#$1 = filename $2 = things to remove
diff -ru a/gen-livecd b/gen-livecd
--- a/gen-livecd 2009-08-07 10:57:21.000000000 -0400
+++ b/gen-livecd 2009-08-19 21:36:30.000000000 -0400
@@ -66,6 +66,13 @@
Config: $RELEASE
EOF
+# In Jaunty, this script fails, complaining about missing update-rc.d,
+# which is found in the sysv-rc package. The following edits are a workaround,
+# forcing sysv-rc to be installed early.
+
+sed -i -e '1,/Packages: *apt/ s/Packages: *apt/Packages:\n apt\n sysv-rc/'
cdebootstrap/generic/packages
+sed -i -e '1,/What: *dpkg/ s/\(Action: *dpkg-install\)/\1\nWhat:
sysv-rc\n\n\1/' cdebootstrap/generic/action
+
chroots ()
{
# Execute commands in chroot
@@ -73,7 +80,8 @@
PATH=/usr/sbin:/usr/bin:/sbin:/bin DEBIAN_PRIORITY=critical ${1}
}
cp -r cdebootstrap/generic/ cdebootstrap/$RELEASE
-cdebootstrap -v --allow-unauthenticated --keyring= --arch=$ARCHTOBUILD
--flavour=minimal -c cdebootstrap/ $RELEASE chroot-$ARCHTOBUILD $REPOAPT
+
+cdebootstrap --debug -v --allow-unauthenticated --keyring= --arch=$ARCHTOBUILD
--flavour=minimal -c cdebootstrap/ $RELEASE chroot-$ARCHTOBUILD $REPOAPT
# Now have full chroot
mkdir -p cdroot-$ARCHTOBUILD/image/casper/
diff -ru a/gen-module-init-tools b/gen-module-init-tools
--- a/gen-module-init-tools 2009-05-29 16:21:46.000000000 -0400
+++ b/gen-module-init-tools 2009-08-11 08:32:10.000000000 -0400
@@ -28,7 +28,14 @@
apt-get --yes build-dep module-init-tools$VERSION
cd module-init-tools-*
-sed -i "/^blacklist eepro100/d" extra/modprobe.d/blacklist
+if [ -f extra/modprobe.d/blacklist ]; then # found in jaunty
+ BLFILE=extra/modprobe.d/blacklist
+elif [ -f debian/modprobe.d/blacklist.conf ]; then # found in hardy
+ BLFILE=debian/modprobe.d/blacklist.conf
+else echo No blacklist found
+fi
+
+sed -i "/^blacklist eepro100/d" $BLFILE
echo | dch -D $RELEASE -v $(sed -n
'1s#^.*(\(.*\)).*#\1'${DISTRONAME_L}${MODULE_INIT_TOOLS_VERSION}'#p'
debian/changelog) "Removed eepro100 from blacklist."
diff -ru a/gen-ubiquity b/gen-ubiquity
--- a/gen-ubiquity 2009-05-29 16:21:46.000000000 -0400
+++ b/gen-ubiquity 2009-08-29 14:23:37.000000000 -0400
@@ -97,7 +97,35 @@
cd d-i/source/apt-setup/
# Ignore these for now
-echo -e '#!/bin/sh\ncat $1 >> $2' > apt-setup-verify
+#echo -e '#!/bin/sh\ncat $1 >> $2' > apt-setup-verify
+# Handle variable number of args to newest versions of apt-setup-verify
+
+cat <<EOFXW > apt-setup-verify
+#!/bin/bash
+set -e
+
+case "\$#" in
+
+ "2" )
+ ;;
+ "3" )
+ if [ "\$1" = "--invalid" ]; then
+ shift
+ else
+ exit 1
+ fi
+ ;;
+ "6" )
+ shift 4
+ ;;
+ * )
+ exit 1
+ ;;
+esac
+
+cat \$1 >> \$2
+EOFXW
+
cat <<EOFXX > generators/50mirror.$DISTRONAME_L
#!/bin/bash
diff -ru a/gen-yelp b/gen-yelp
--- a/gen-yelp 2009-05-29 16:21:46.000000000 -0400
+++ b/gen-yelp 2009-08-11 08:34:57.000000000 -0400
@@ -26,9 +26,18 @@
apt-get source yelp$VERSION
apt-get --yes build-dep yelp$VERSION
-cd yelp*
+cd yelp*/debian/patches
-rm
debian/patches/{01_lpi,04_new_ubuntu_layout,05_menu_tooltip,07_rosetta_translations_update,99_change_help_URL}.patch
+if [ -f 99_change_help_URL.patch ]; then # found in hardy
+ PATCHES='01_lpi.patch 04_new_ubuntu_layout.patch 05_menu_tooltip.patch
07_rosetta_translations_update.patch 99_change_help_URL.patch'
+elif [ -f 06_ubuntu_online_url.patch ]; then # found in jaunty
+ PATCHES='01_lpi.patch 04_new_ubuntu_layout.patch 05_menu_tooltip.patch
06_ubuntu_online_url.patch 07_rosetta_translations_update.patch'
+ PATCHGROUP="\($(echo $PATCHES | sed 's/ /\\|/g')\)"
+ sed -i -e "/[^#]*$PATCHGROUP/d" series # see quilt(1)
+fi
+rm $PATCHES
+
+cd ../..
echo | dch -D $RELEASE -v $(sed -n
'1s#^.*(\(.*\)).*#\1'${DISTRONAME_L}${YELP_VERSION}'#p' debian/changelog)
"Removed Ubuntu-specifc patches"
diff -ru a/packages/deltah/gnewsense-theme/debian/control
b/packages/deltah/gnewsense-theme/debian/control
--- a/packages/deltah/gnewsense-theme/debian/control 2009-05-29
16:21:39.000000000 -0400
+++ b/packages/deltah/gnewsense-theme/debian/control 2009-08-16
07:42:43.000000000 -0400
@@ -11,7 +11,7 @@
Conflicts: human-cursors-theme (<= 0.5)
Replaces:
Provides: gnewsense-gtk-theme
-Depends: dmz-cursor-theme, human-icon-theme, gtk2-engines-ubuntulooks,
gtk2-engines-murrine, human-theme
+Depends: dmz-cursor-theme, human-icon-theme, gtk2-engines-murrine, human-theme
Description: gNewSense theme
The default gNewSense theme. At the moment the package contains
- the theme definitions.
diff -ru a/packages/deltah/usplash-theme-gnewsense/Makefile
b/packages/deltah/usplash-theme-gnewsense/Makefile
--- a/packages/deltah/usplash-theme-gnewsense/Makefile 2009-05-29
16:21:39.000000000 -0400
+++ b/packages/deltah/usplash-theme-gnewsense/Makefile 2009-08-14
07:11:44.000000000 -0400
@@ -8,10 +8,14 @@
INSTALL_DATA = $(INSTALL) -m 644
INSTALL_PROGRAM = $(INSTALL) -m 755
-CONVERT=convert
+CONVERT:=convert
+# As of version 6.4.2-9 of convert: new dithering selection option,
+# -dither Floyd-Steinberg or -dither Riemersma.
+CONVERT_VER := $(shell $(CONVERT) -version | sed -n
's/[Vv]ersion:[^0-9]*\([0-9.]*\).*/\1/p')
+DITHER_FLAG := $(shell dpkg --compare-versions "$(CONVERT_VER)" lt "6.4.2-9"
&& echo '-dither' || echo '-dither Floyd-Steinberg')
-MAP8=$(CONVERT) -map colormap_256.png -depth 8 -dither
-MAP4=$(CONVERT) -map colormap_16.png -depth 4 -dither
+MAP8=$(CONVERT) -map colormap_256.png -depth 8 $(DITHER_FLAG)
+MAP4=$(CONVERT) -map colormap_16.png -depth 4 $(DITHER_FLAG)
EXTRACT=$(CONVERT) -extract
RESIZE=$(CONVERT) -resize
SCALE=$(CONVERT) -scale
@@ -25,14 +29,14 @@
mkdir tmp
usplash256.png: $(PRIMARY)
- $(CONVERT) -depth 8 -colors 253 -dither $(PRIMARY) usplash256.png
+ $(CONVERT) -depth 8 -colors 253 $(DITHER_FLAG) $(PRIMARY) usplash256.png
usplash16.png: $(PRIMARY)
- $(CONVERT) -depth 4 -colors 13 -dither $(PRIMARY) usplash16.png
+ $(CONVERT) -depth 4 -colors 13 $(DITHER_FLAG) $(PRIMARY) usplash16.png
colormaps: usplash256.png usplash16.png
- $(CONVERT) -unique-colors -depth 8 -colors 253 -dither usplash256.png
tmp/colormap_256.png
- $(CONVERT) -unique-colors -depth 4 -colors 13 -dither usplash16.png
tmp/colormap_16.png
+ $(CONVERT) -unique-colors -depth 8 -colors 253 $(DITHER_FLAG)
usplash256.png tmp/colormap_256.png
+ $(CONVERT) -unique-colors -depth 4 -colors 13 $(DITHER_FLAG)
usplash16.png tmp/colormap_16.png
$(CONVERT) -size 256x1 xc:white -fill red -draw "point 255,0"
red256.png
$(CONVERT) -size 255x1 xc:white -fill green -draw "point 254,0"
green256.png
$(COMPOSITE) -compose atop -geometry +0+0 green256.png red256.png
greenred256.png
- [Gnewsense-dev] Progress in testing a patched Builder on newer Ubuntu releases!,
Bake Timmons <=