gnewsense-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gnewsense-dev] Progress in testing a patched Builder on newer Ubunt


From: Karl Goetz
Subject: Re: [Gnewsense-dev] Progress in testing a patched Builder on newer Ubuntu releases!
Date: Sun, 30 Aug 2009 15:28:43 +0930

On Sun, 30 Aug 2009 01:13:02 -0400
Bake Timmons <address@hidden> wrote:

I'm dropping -users from CC.

> "Karl Goetz" <address@hidden> writes:
> 
> > On Sun, August 30, 2009 04:46, Bake Timmons wrote:
> >> Hi,
> >>
> >> Attached is a patch to Builder[1] that enables me to build a LiveCD
> >
> > Comments inline, and preceeded with 'kk '
> [2. application/octet-stream; builder-patch-for-jaunty-reviewd]...
> 
>     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
> 
>     kk This change seems totally gratuitous.
> 
> Yes, it does seem that way, but in fact it fixes bug #326 in which
> that $i loop variable gets clobbered by an outer $i loop variable.
> One of the ugly pitfalls of shell programming it seems. ;)

Well spotted :O
I've gone through do-update and changed all one letter variables to
short strings.
(Thanks for the bug report, fixed :))

>                     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
> 
>     kk Why this removal (more below)?
> 
> From the TODO: comment below, I explain that I reposition line this
> as a workaround so as to allow gnewsense-artwork to build w/ Jaunty.

ok.

> Of course, I could also try *understanding* what's going on to get a
> proper fix. :)

hehe. Getting it fixed correctly would be a requirement of it landing
in SVN.

>     @@ -182,15 +181,27 @@
> 
>     kk This should go in config.auto
> 
> Right, I see what you mean.

I started the job with svn 283 or 284... I forget.

>     diff -ru a/gen-artwork b/gen-artwork

>     +set -ex
> 
>     kk This seems an unneeded change.
> 
> Oops--left that in mistakenly--sorry.

np.

> 
>     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 @@
> 
> linux-image-2.6.24-$KERNEL_VERSIONPART-generic +case $(echo
> linux-image-2.6.24-$KERNEL_VERSIONPART-generic
> linux-image-2.6.24-$KERNEL_VERSIONPART-generic
> 
>     kk should probably try and use $KERNEL_RELEASE here to keep it
> generic. might lead to wrapping the code kk in a function, or moving
> some config details into config.auto
> 
> Right.

I made this change in svn.


>     +    "jaunty")
>     + apt-get -d source
> linux-image-$KERNEL_RELEASE-$KERNEL_VERSIONPART-generic
> 
>     kk Is there a point in -d here?
> 
> Yes, indeed.  Normally, we do want to unpack and patch the source
> package.  But the patching we do here, including possibly with the
> linux-libre code, does not *directly* use an unpacked tarball.  Of
> course, the .tar.gz file will be unnecessary if a linux-libre tarball
> can simply be fetched--no harm done though by the apt-get command
> otherwise getting the diff and dsc.

hm....
Perhaps you should talk with Robert about how he does freed-ebian
kernels.

(skip the remaining kernel stuff. I don't want to think about it ;))

(skip a few more sections)

>     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 +
> 
>     kk Does 'this script' mean gen-livecd or chroots() ?
>     kk If it means gen-livecd a simple `chroots apt-get install
> sysv-rc` might be enough to fix it
> 
> this script = gen-livecd, and, yes, chroots method looks good.
> 
>      chroots ()
>      {
>             # Execute commands in chroot


>     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 ../..
> 
>     kk Personally I'd prefer something along the lines of
>     kk if debian/patches/example.patch
>     kk        rm debian/patches/{name,name,name}.patch
>     kk elif 2nd-example.patch
>     kk        rm debian/patches/{name,name,name}.patch
>     kk fi
>     kk Which is neater, saves us changing our directory, and setting
> up lots of variables
> 
> Right, but note that we still need a way to tell sed what patch file
> names to delete from the series file that quilt uses.  Hence my use of
> variables.

Much the same way. It means they have to be specified twice, but twice
in half a dozen lines doesn't seem to bad considering the code
complexity (when reading) it saves.

>     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
> 
>     kk no g-e-m? Has it been removed, or is unneeded, or...?
> 
> You mean, no g-e-u, which is unneeded (as a dependency for
> human-theme). It also caused a conflict error in my attempts to build
> with Jaunty.

ok.

>     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')
> 
>     kk What does this new dithering option give us?
> 
> It's just a syntax requirement of newer convert programs.  As of
> version 6.4.2-9 of convert, a simple, naked -dither flag cannot be
> used as it is now, so I just used it with "Floyd-Steinberg", which is
> the same method used by the older -dither usage.

ok. So perhaps its worth specifying the dither in config.auto (so its
somewhere out of the way), and making all the dithers we currently have
call with $DITHER_OPTION.
kk

-- 
Karl Goetz, (Kamping_Kaiser / VK5FOSS)
Debian contributor / gNewSense Maintainer
http://www.kgoetz.id.au
No, I won't join your social networking group

Attachment: signature.asc
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]