Fwd: Bug#425038: marked as done (ITP: win32-loader -- Debian-Installer loader for win32)
Yay! :-) On Wed, Aug 29, 2007 at 04:12:03AM +, Debian Bug Tracking System wrote: > > Source: win32-loader > Source-Version: 0.6.0~pre1 > > We believe that the bug you reported is fixed in the latest version of > win32-loader, which is due to be installed in the Debian FTP archive: > > win32-loader_0.6.0~pre1.dsc > to pool/main/w/win32-loader/win32-loader_0.6.0~pre1.dsc > win32-loader_0.6.0~pre1.tar.gz > to pool/main/w/win32-loader/win32-loader_0.6.0~pre1.tar.gz > win32-loader_0.6.0~pre1_all.deb > to pool/main/w/win32-loader/win32-loader_0.6.0~pre1_all.deb > > > > A summary of the changes between this version and the previous one is > attached. > > Thank you for reporting the bug, which will now be closed. If you > have further comments please address them to [EMAIL PROTECTED], > and the maintainer will reopen the bug report if appropriate. > > Debian distribution maintenance software > pp. > Robert Millan <[EMAIL PROTECTED]> (supplier of updated win32-loader package) > > (This message was generated automatically at their request; if you > believe that there is a problem with it please contact the archive > administrators by mailing [EMAIL PROTECTED]) > > > -BEGIN PGP SIGNED MESSAGE- > Hash: SHA1 > > Format: 1.7 > Date: Tue, 28 Aug 2007 23:14:19 +0200 > Source: win32-loader > Binary: win32-loader > Architecture: source all > Version: 0.6.0~pre1 > Distribution: unstable > Urgency: low > Maintainer: Robert Millan <[EMAIL PROTECTED]> > Changed-By: Robert Millan <[EMAIL PROTECTED]> > Description: > win32-loader - Debian-Installer loader for win32 > Closes: 425038 > Changes: > win32-loader (0.6.0~pre1) unstable; urgency=low > . >* Initial release (Closes: #425038). > Files: > 3fc9928f8be4318836cd6825d4c5e38f 596 utils extra win32-loader_0.6.0~pre1.dsc > 18941a8b23317b13ba45f4a67bbff4c9 80509 utils extra > win32-loader_0.6.0~pre1.tar.gz > 4ba82a3316cd36ebd8968569ec5b89fc 176002 utils extra > win32-loader_0.6.0~pre1_all.deb > > -BEGIN PGP SIGNATURE- > Version: GnuPG v1.4.6 (GNU/Linux) > > iD8DBQFG1JGGC19io6rUCv8RAgvMAJ4nNFKRWvVl/kUHgaCQORbsEBC5ZACdFX3M > 7Z2g4Pr8qQJLfUBxPCE+icI= > =98UL > -END PGP SIGNATURE- > -- Robert Millan I know my rights; I want my phone call! What use is a phone call, if you are unable to speak? (as seen on /.) -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Bug#280138: Can we be friend?
Hi, my name is May. I got your email from your friend and hope you don't mind. Can we be friend? Kindly reply to me at [EMAIL PROTECTED] . Looking forward to hear from you soon. Love, -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Re: Kernels at 2.6.21 rather than 2.6.22?
On Tue, Aug 28, 2007 at 02:10:00PM -0700, Steve Langasek wrote: > On Tue, Aug 28, 2007 at 02:35:45PM -0300, Otavio Salvador wrote: > > Martin Michlmayr <[EMAIL PROTECTED]> writes: > > > > Is there a good reason why all the d-i kernel udebs are still at > > > 2.6.21 rather than 2.6.22? If not, I'd like to update mips* and arm. > > > I personally prefer to discuss it tomorrow at the meeting. So we can > > decide it and try to move all arches together. > > What is there to discuss? 2.6.22 is targetted for testing in the tear > future, is there some reason I'm missing why we wouldn't want to migrate d-i > to 2.6.22 ASAP? We need to discuss how (= who/when) we are going to do it. That's all. :) Cheers, -- Jérémy Bobbio.''`. [EMAIL PROTECTED]: :Ⓐ : # apt-get install anarchism `. `'` `- signature.asc Description: Digital signature
Re: Kernels at 2.6.21 rather than 2.6.22?
On Tue, Aug 28, 2007 at 02:35:45PM -0300, Otavio Salvador wrote: > Martin Michlmayr <[EMAIL PROTECTED]> writes: > > Is there a good reason why all the d-i kernel udebs are still at > > 2.6.21 rather than 2.6.22? If not, I'd like to update mips* and arm. > I personally prefer to discuss it tomorrow at the meeting. So we can > decide it and try to move all arches together. What is there to discuss? 2.6.22 is targetted for testing in the tear future, is there some reason I'm missing why we wouldn't want to migrate d-i to 2.6.22 ASAP? -- Steve Langasek Give me a lever long enough and a Free OS Debian Developer to set it on, and I can move the world. [EMAIL PROTECTED] http://www.debian.org/ -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Re: ai-choosers: Depends: keyboard-setup but it is not installable
[EMAIL PROTECTED] (Geert Stappers) writes: > Versions: >1.35 [amd64, armel, sparc], >1.37 [alpha, arm, hppa, i386, ia64, m68k, mips, mipsel, powerpc] > > > I assume that it builds again when kbd-chooser is newer then 1.36 Yes. 1.37 has Joey's workaround. -- O T A V I OS A L V A D O R - E-mail: [EMAIL PROTECTED] UIN: 5906116 GNU/Linux User: 239058 GPG ID: 49A5F855 Home Page: http://otavio.ossystems.com.br - "Microsoft sells you Windows ... Linux gives you the whole house." -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
[RFC] Add the new cdebconf-gtk-entropy package
Hi! This patch will add a cdebconf-gtk-entropy package when building cdebconf-entropy. It is currently untested inside d-i as partman-crypto needs some changes to be able to load whichever entropy plugin is available. Comments or advice on how to do so are more than welcome. New templates should probably be introduced as well, but I was waiting for Christian's advice on how to do it. :) --- packages/cdebconf-entropy/Makefile.in |9 + packages/cdebconf-entropy/configure.ac |6 + packages/cdebconf-entropy/debian/changelog |2 + packages/cdebconf-entropy/debian/control | 12 +- packages/cdebconf-entropy/debian/copyright |1 + packages/cdebconf-entropy/gtk-plugin-entropy.c | 295 6 files changed, 324 insertions(+), 1 deletions(-) create mode 100644 packages/cdebconf-entropy/gtk-plugin-entropy.c diff --git a/packages/cdebconf-entropy/Makefile.in b/packages/cdebconf-entropy/Makefile.in index 972c13e..afb049b 100644 --- a/packages/cdebconf-entropy/Makefile.in +++ b/packages/cdebconf-entropy/Makefile.in @@ -13,6 +13,8 @@ [EMAIL PROTECTED]@ -I. [EMAIL PROTECTED]@ [EMAIL PROTECTED]@ [EMAIL PROTECTED]@ [EMAIL PROTECTED]@ all: $(PLUGIN_MODULES) @@ -25,6 +27,13 @@ install: $(PLUGIN_MODULES) newt-plugin-entropy-text.so: newt-plugin-entropy-text.opic $(CC) $(LDFLAGS) -shared -lnewt -o $@ $< +gtk-plugin-entropy.so: gtk-plugin-entropy.opic + $(CC) $(LDFLAGS) $(GTK_LDFLAGS) -shared -o $@ $< + +gtk-plugin-entropy.opic: gtk-plugin-entropy.c + @echo "Compiling $< to $@" + $(CC) $(CFLAGS) $(GTK_CFLAGS) -fPIC -o $@ -c $< + clean: rm -f $(PLUGIN_MODULES) rm -f *.opic diff --git a/packages/cdebconf-entropy/configure.ac b/packages/cdebconf-entropy/configure.ac index 79c2d16..9c856a7 100644 --- a/packages/cdebconf-entropy/configure.ac +++ b/packages/cdebconf-entropy/configure.ac @@ -16,6 +16,12 @@ AC_CHECK_LIB(newt, newtInit, PLUGIN_MODULES="$PLUGIN_MODULES newt-plugin-entropy-text.so", echo "*** Cannot build Newt plugin ***") +PKG_CHECK_MODULES(GTK, [gtk+-directfb-2.0], + PLUGIN_MODULES="$PLUGIN_MODULES gtk-plugin-entropy.so", + echo "*** Cannot build GTK+ plugin ***") + AC_SUBST(PLUGIN_MODULES) +AC_SUBST(GTK_CFLAGS) +AC_SUBST(GTK_LDFLAGS) AC_OUTPUT(Makefile) diff --git a/packages/cdebconf-entropy/debian/changelog b/packages/cdebconf-entropy/debian/changelog index 9c51608..b726230 100644 --- a/packages/cdebconf-entropy/debian/changelog +++ b/packages/cdebconf-entropy/debian/changelog @@ -8,6 +8,8 @@ cdebconf-entropy (0.5) UNRELEASED; urgency=low * Bump Depends on cdebconf accordingly. * Rework build system to make room for entropy plugins working with frontends other than newt. + * Add the new cdebconf-gtk-entropy package, including a plugin to gather +entropy when using the GTK+ frontend. -- Jérémy Bobbio <[EMAIL PROTECTED]> Tue, 07 Aug 2007 13:35:56 +0200 diff --git a/packages/cdebconf-entropy/debian/control b/packages/cdebconf-entropy/debian/control index e7864d4..05b11b9 100644 --- a/packages/cdebconf-entropy/debian/control +++ b/packages/cdebconf-entropy/debian/control @@ -3,7 +3,7 @@ Priority: extra Section: debian-installer Maintainer: Debian Install System Team Uploaders: Max Vozeler <[EMAIL PROTECTED]> -Build-Depends: debhelper (>= 4.2), libnewt-dev, libtextwrap-dev, libdebconfclient0-dev (>> 0.119) +Build-Depends: debhelper (>= 4.2), libnewt-dev, libtextwrap-dev, libdebconfclient0-dev (>> 0.119), libgtk-directfb-2.0-dev Standards-Version: 3.7.2 XS-Vcs-Svn: svn://svn.debian.org/d-i/trunk/packages/cdebconf-entropy @@ -16,3 +16,13 @@ Description: cdebconf newt plugin for reading from /dev/random cdebconf plugin to facilitate reading random data from /dev/random. Asks the user to enter random characters on the keyboard and shows a progressbar with percent-of-data read. + +Package: cdebconf-gtk-entropy +Architecture: any +Section: debian-installer +Depends: cdebconf-gtk-udeb, ${shlibs:Depends} +XC-Package-Type: udeb +Description: cdebconf gtk plugin for reading from /dev/random + cdebconf plugin to facilitate reading random data from /dev/random. + Asks the user to enter random characters on the keyboard and random mouse + movements while a progressbar shows the amount of entropy already gathered. diff --git a/packages/cdebconf-entropy/debian/copyright b/packages/cdebconf-entropy/debian/copyright index 00f53fe..fffb5c6 100644 --- a/packages/cdebconf-entropy/debian/copyright +++ b/packages/cdebconf-entropy/debian/copyright @@ -1,4 +1,5 @@ cdebconf-entropy is Copyright 2005-2006 Max Vozeler <[EMAIL PROTECTED]> +Copyright 2007 Jérémy Bobbio <[EMAIL PROTECTED]> Makefile.in, configure.ac and debian/rules were written by Tollef Fog Heen <[EMAIL PROTECTED]> for cdebconf-keystep. They diff --git a/packages/cdebconf-entropy/gtk-plugin-entropy.c b/packages/cdebconf-entropy/gtk-plugin-entropy.c new file mode 100644 i
Re: ai-choosers: Depends: keyboard-setup but it is not installable
Op 27-08-2007 om 18:28 schreef Otavio Salvador: > > Joey has uploaded a new kbd-chooser with a workaround for the build > failure. Would be nice if you might try to build it. > I did try again on Sparc and it failed to build. My search for why it fails brought me to http://packages.debian.org/unstable/debian-installer/kbd-chooser which says right now Versions: 1.35 [amd64, armel, sparc], 1.37 [alpha, arm, hppa, i386, ia64, m68k, mips, mipsel, powerpc] I assume that it builds again when kbd-chooser is newer then 1.36 Cheers Geert Stappers -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Re: [RFC] Rework build system to make room for more entropy plugins
Jérémy Bobbio <[EMAIL PROTECTED]> writes: > Hi! > > This patch make small modifications to the way cdebconf-entropy is built > in order to be able to integrate plugins for frontend other than newt. Looks OK. -- O T A V I OS A L V A D O R - E-mail: [EMAIL PROTECTED] UIN: 5906116 GNU/Linux User: 239058 GPG ID: 49A5F855 Home Page: http://otavio.ossystems.com.br - "Microsoft sells you Windows ... Linux gives you the whole house."
Re: [RFC 1/4] Switch the newt frontend to use "cdebconf_newt_" namespace for its API
Jérémy Bobbio <[EMAIL PROTECTED]> writes: > Hi! > > This serie of patches will clean up the newt frontend API which can be > used by plugins and adapt the entropy plugin to this new API. I personally think that whole serie is OK for commiting. -- O T A V I OS A L V A D O R - E-mail: [EMAIL PROTECTED] UIN: 5906116 GNU/Linux User: 239058 GPG ID: 49A5F855 Home Page: http://otavio.ossystems.com.br - "Microsoft sells you Windows ... Linux gives you the whole house."
[RFC] Rework build system to make room for more entropy plugins
Hi! This patch make small modifications to the way cdebconf-entropy is built in order to be able to integrate plugins for frontend other than newt. --- packages/cdebconf-entropy/Makefile.in |8 +++- packages/cdebconf-entropy/configure.ac | 12 ++-- packages/cdebconf-entropy/debian/changelog |2 ++ 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/packages/cdebconf-entropy/Makefile.in b/packages/cdebconf-entropy/Makefile.in index fb49457..972c13e 100644 --- a/packages/cdebconf-entropy/Makefile.in +++ b/packages/cdebconf-entropy/Makefile.in @@ -8,13 +8,11 @@ sharedir=${prefix}/share/debconf mandir=${prefix}/share/man incdir=${prefix}/include/cdebconf [EMAIL PROTECTED]@ [EMAIL PROTECTED]@ [EMAIL PROTECTED]@ -I. [EMAIL PROTECTED]@ [EMAIL PROTECTED]@ -PLUGIN_MODULES=$(addsuffix -plugin-$(PACKAGE).so,$(FRONTENDS)) [EMAIL PROTECTED]@ all: $(PLUGIN_MODULES) @@ -24,8 +22,8 @@ install: $(PLUGIN_MODULES) install -m644 $$p $(DESTDIR)/$(moddir)/$${p%%-*}/$${p#*-} ; \ done -newt-plugin-$(PACKAGE).so: newt-plugin-$(PACKAGE).opic - $(CC) $(LDFLAGS) -shared -lnewt -o $@ newt-plugin-$(PACKAGE).opic +newt-plugin-entropy-text.so: newt-plugin-entropy-text.opic + $(CC) $(LDFLAGS) -shared -lnewt -o $@ $< clean: rm -f $(PLUGIN_MODULES) diff --git a/packages/cdebconf-entropy/configure.ac b/packages/cdebconf-entropy/configure.ac index ab450b3..79c2d16 100644 --- a/packages/cdebconf-entropy/configure.ac +++ b/packages/cdebconf-entropy/configure.ac @@ -1,5 +1,5 @@ -AC_INIT(newt-plugin-entropy-text.c) -PACKAGE=entropy-text +AC_INIT +PACKAGE=entropy AC_DEFINE_UNQUOTED(PACKAGE,"$PACKAGE") AC_PROG_MAKE_SET @@ -12,10 +12,10 @@ if test "$with_debug" == "yes"; then CFLAGS="$CFLAGS -g -D_DEBUG_" fi -AC_CHECK_LIB(newt, newtInit, FRONTENDS="$FRONTENDS newt", echo - "*** Cannot build Newt plugin ***") +AC_CHECK_LIB(newt, newtInit, + PLUGIN_MODULES="$PLUGIN_MODULES newt-plugin-entropy-text.so", + echo "*** Cannot build Newt plugin ***") -AC_SUBST(FRONTENDS) -AC_SUBST(PACKAGE) +AC_SUBST(PLUGIN_MODULES) AC_OUTPUT(Makefile) diff --git a/packages/cdebconf-entropy/debian/changelog b/packages/cdebconf-entropy/debian/changelog index 048ed0a..9c51608 100644 --- a/packages/cdebconf-entropy/debian/changelog +++ b/packages/cdebconf-entropy/debian/changelog @@ -6,6 +6,8 @@ cdebconf-entropy (0.5) UNRELEASED; urgency=low loaded globally. * Set a RPATH to the frontend directory to work around mklibs defiency. * Bump Depends on cdebconf accordingly. + * Rework build system to make room for entropy plugins working with +frontends other than newt. -- Jérémy Bobbio <[EMAIL PROTECTED]> Tue, 07 Aug 2007 13:35:56 +0200 -- Jérémy Bobbio.''`. [EMAIL PROTECTED]: :Ⓐ : # apt-get install anarchism `. `'` `- signature.asc Description: Digital signature
Re: mklibs and global symbols for frontend plugins
On Tue, Aug 28, 2007 at 08:17:23PM +0200, Jérémy Bobbio wrote: > Unfortunately, the way mklibs currently works is a bit conflicting with > the idea of having dynamically loaded shared objects (cdebconf > frontends plugins) using symbols from dynamically loaded shared objects > (cdebconf frontends). The former are not directly linked to the later, > and mklibs don't know that it should not strip symbols in use from the > later. This is incorrect. The build environment supplies all cdebconf modules as additional binaries and asks for this symbols also. If this may be broken, fix it. > diff -Nru /tmp/w6hDdn1z9v/mklibs-0.1.24/src/mklibs.py > /tmp/Ub0CwzXKwY/mklibs-0.1.25~lunar1/src/mklibs.py > --- /tmp/w6hDdn1z9v/mklibs-0.1.24/src/mklibs.py 2007-06-11 > 09:58:05.0 +0200 > +++ /tmp/Ub0CwzXKwY/mklibs-0.1.25~lunar1/src/mklibs.py2007-08-28 > 19:07:57.0 +0200 > @@ -334,6 +334,8 @@ > print "warning: " + obj + " may need rpath, but --root not > specified" > > lib_path.extend(lib_rpath) > +# WORKAROUND: frontend plugins > +lib_path.append(root + '/usr/lib/cdebconf/frontend') > > passnr = 1 > available_libs = [] > @@ -368,6 +370,10 @@ > libraries = set() > for obj in objects.values(): > needed_symbols.update(undefined_symbols(obj)) > +# WORKAROUND: frontend plugins > +r = re.search(r'/lib/cdebconf/frontend/([^/]*)/[^.]*\.so$', obj) > +if r: > +libraries.add('%s.so' % r.groups(1)) > libraries.update(library_depends(obj)) > > # calculate what symbols are present in small_libs and available_libs NACK Bastian -- You can't evaluate a man by logic alone. -- McCoy, "I, Mudd", stardate 4513.3 -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Bug#270809: I wish to have a good friendships with you.
Hi dear, how are you today i hope that every things is ok with you as it is my great pleassure to contact you in having communication with you, please i wish you will have the desire with me so that we can get to know each other better and see what happened in future. i will be very happy if you can write me through my email for easiest communication and to know all about each other, and also give you my pictures and details about me, here is my email ([EMAIL PROTECTED]) i will be waiting to hear from you as i wish you all the best for your day. your new friend. Vick. - One email account is enough. Simplify your life by switching other accounts into Yahoo! Mail.
mklibs and global symbols for frontend plugins
On Tue, Aug 28, 2007 at 07:50:43PM +0200, Jérémy Bobbio wrote: > Applying this patch will break the build of the installer though, even > applied together with the relevant modifications to the entropy plugin > due to an issue with mklibs. More details to come in a separate mail. mklibs is used by the debian-installer to remove any uneeded symbols from libraries used by the most important required bits of the software. This allows a significant gain in disk space, which is always a good idea when one wants to fit everything on a floppy disk. Unfortunately, the way mklibs currently works is a bit conflicting with the idea of having dynamically loaded shared objects (cdebconf frontends plugins) using symbols from dynamically loaded shared objects (cdebconf frontends). The former are not directly linked to the later, and mklibs don't know that it should not strip symbols in use from the later. Another issue, but similar in its origin, is that frontends shared objects are not in a standard library directory. So mklibs does not know where to find the files, even if told manually. A possible solution is to add an RPATH while building the plugin, but it is not strictly needed for the plugin to work correctly. Attached is a patch adding two hacks to the current mklibs in circumvent these problems. Bastian, it would be great if you have an idea on how to work out this issues in a cleaner way. :) Cheers, -- Jérémy Bobbio.''`. [EMAIL PROTECTED]: :Ⓐ : # apt-get install anarchism `. `'` `- diff -Nru /tmp/w6hDdn1z9v/mklibs-0.1.24/debian/changelog /tmp/Ub0CwzXKwY/mklibs-0.1.25~lunar1/debian/changelog --- /tmp/w6hDdn1z9v/mklibs-0.1.24/debian/changelog 2007-07-16 23:01:26.0 +0200 +++ /tmp/Ub0CwzXKwY/mklibs-0.1.25~lunar1/debian/changelog 2007-08-28 18:41:56.0 +0200 @@ -1,3 +1,9 @@ +mklibs (0.1.25) UNRELEASED; urgency=low + + * Add a workaround for frontend plugins using frontend symbols. + + -- Jérémy Bobbio <[EMAIL PROTECTED]> Tue, 28 Aug 2007 18:35:12 +0200 + mklibs (0.1.24) unstable; urgency=low * Also check for symboles without type. (closes: #433388) diff -Nru /tmp/w6hDdn1z9v/mklibs-0.1.24/src/mklibs.py /tmp/Ub0CwzXKwY/mklibs-0.1.25~lunar1/src/mklibs.py --- /tmp/w6hDdn1z9v/mklibs-0.1.24/src/mklibs.py 2007-06-11 09:58:05.0 +0200 +++ /tmp/Ub0CwzXKwY/mklibs-0.1.25~lunar1/src/mklibs.py 2007-08-28 19:07:57.0 +0200 @@ -334,6 +334,8 @@ print "warning: " + obj + " may need rpath, but --root not specified" lib_path.extend(lib_rpath) +# WORKAROUND: frontend plugins +lib_path.append(root + '/usr/lib/cdebconf/frontend') passnr = 1 available_libs = [] @@ -368,6 +370,10 @@ libraries = set() for obj in objects.values(): needed_symbols.update(undefined_symbols(obj)) +# WORKAROUND: frontend plugins +r = re.search(r'/lib/cdebconf/frontend/([^/]*)/[^.]*\.so$', obj) +if r: +libraries.add('%s.so' % r.groups(1)) libraries.update(library_depends(obj)) # calculate what symbols are present in small_libs and available_libs signature.asc Description: Digital signature
[RFC 4/4] Update the newt entropy plugin to the new frontend interface
Hi! Here's the final patch of this serie, updating the entropy plugin to use the new frontend API and using the global symbol loading instead of manual calls to dlsym(). The dependency on libdebconfclient0-dev has been bumped accordingly. --- packages/cdebconf-entropy/debian/changelog |4 ++ packages/cdebconf-entropy/debian/control |2 +- .../cdebconf-entropy/newt-plugin-entropy-text.c| 50 +++- 3 files changed, 13 insertions(+), 45 deletions(-) diff --git a/packages/cdebconf-entropy/debian/changelog b/packages/cdebconf-entropy/debian/changelog index aed0eca..c8a55e2 100644 --- a/packages/cdebconf-entropy/debian/changelog +++ b/packages/cdebconf-entropy/debian/changelog @@ -1,8 +1,12 @@ cdebconf-entropy (0.5) UNRELEASED; urgency=low * Switch the handler symbol to the "cdebconf_" namespace. + * Use the proper namespace to access newt frontend API. + * Remove the usage of dlsym() and dlopen() now that frontend symbols are +loaded globally. + * Bump Depends on cdebconf accordingly. -- Jérémy Bobbio <[EMAIL PROTECTED]> Fri, 03 Aug 2007 02:12:31 +0200 cdebconf-entropy (0.4) unstable; urgency=low diff --git a/packages/cdebconf-entropy/debian/control b/packages/cdebconf-entropy/debian/control index b407868..e7864d4 100644 --- a/packages/cdebconf-entropy/debian/control +++ b/packages/cdebconf-entropy/debian/control @@ -3,7 +3,7 @@ Priority: extra Section: debian-installer Maintainer: Debian Install System Team Uploaders: Max Vozeler <[EMAIL PROTECTED]> -Build-Depends: debhelper (>= 4.2), libnewt-dev, libtextwrap-dev, libdebconfclient0-dev (>= 0.101) +Build-Depends: debhelper (>= 4.2), libnewt-dev, libtextwrap-dev, libdebconfclient0-dev (>> 0.119) Standards-Version: 3.7.2 XS-Vcs-Svn: svn://svn.debian.org/d-i/trunk/packages/cdebconf-entropy diff --git a/packages/cdebconf-entropy/newt-plugin-entropy-text.c b/packages/cdebconf-entropy/newt-plugin-entropy-text.c index 9fedfb2..722cae9 100644 --- a/packages/cdebconf-entropy/newt-plugin-entropy-text.c +++ b/packages/cdebconf-entropy/newt-plugin-entropy-text.c @@ -25,7 +25,7 @@ #include #include #include -#include +#include #define HAVE_LIBTEXTWRAP #ifdef HAVE_LIBTEXTWRAP @@ -42,11 +42,6 @@ extern int strtruncate (char *what, size_t maxsize); extern size_t strwidth (const char *what); -/* There are dlopen()ed from frontend/newt.so */ -int (*get_text_height)(const char *text, int win_width); -int (*get_text_width)(const char *text); -void(*create_window)(const int width, const int height, const char *title, const char *priority); - static void prepare_window(newtComponent *, struct frontend *, struct question *, int); @@ -83,31 +78,6 @@ success_text(struct frontend *obj) "Key data has been created successfully."); } -static void * -setup_handler_dlsyms(void) -{ -char *err; -void *newt; -newt = dlopen("/usr/lib/cdebconf/frontend/newt.so", RTLD_LAZY); -if (!newt) { -error("dlopen on newt.so failed: %s", dlerror()); -return NULL; -} - -dlerror(); -create_window = dlsym(newt, "newt_create_window"); -get_text_height = dlsym(newt, "newt_get_text_height"); -get_text_width = dlsym(newt, "newt_get_text_width"); - -if ((err = dlerror()) != NULL) { -error("dlsym failed: %s", err); -dlclose(newt); -return NULL; -} - -return newt; -} - static int copy_byte(int in, int out) { @@ -136,7 +106,6 @@ copy_byte(int in, int out) int cdebconf_newt_handler_entropy_text(struct frontend *obj, struct question *q) { -void *newt; newtComponent form; struct newtExitStruct nstat; const char *p; @@ -147,10 +116,6 @@ cdebconf_newt_handler_entropy_text(struct frontend *obj, struct question *q) int randfd = 0; int fifofd = 0; -newt = setup_handler_dlsyms(); -if (!newt) -return DC_NOTOK; - if (mlock(&rnd_byte, sizeof(rnd_byte)) < 0) { error("mlock failed: %s", strerror(errno)); goto errout; @@ -232,7 +197,6 @@ errout: close(fifofd); unlink(FIFO); -dlclose(newt); munlock(&rnd_byte, sizeof(rnd_byte)); return ret; @@ -275,7 +239,7 @@ prepare_window(newtComponent *form, struct frontend *obj, struct question *q, in ext_description = wrappedtext; #endif -t_height = get_text_height(ext_description, win_width); +t_height = cdebconf_newt_get_text_height(ext_description, win_width); if (t_height + 6 + 4 <= height-5) win_height = t_height + 6 + 4; else { @@ -285,10 +249,10 @@ prepare_window(newtComponent *form, struct frontend *obj, struct question *q, in } t_height = win_height - (6 + 4); -t_width = get_text_width(ext_description); +t_width = cdebconf_newt_get_text_width(ext_description); t_width_buttons = 2*BUTTON_PADDING; -t_width_buttons += get_text_width(goback_text(obj)) + 3; -t_width_buttons += get_text_width(continue_t
[RFC 3/4] Remove redefined constants
Hi! Just a small cleanup to the source code of the newt frontend spotted while hacking around: TEXT_PADDING and BUTTON_PADDING were already defined in cdebconf_newt.h. --- packages/cdebconf/src/modules/frontend/newt/newt.c |4 1 files changed, 0 insertions(+), 4 deletions(-) diff --git a/packages/cdebconf/src/modules/frontend/newt/newt.c b/packages/cdebconf/src/modules/frontend/newt/newt.c index 0e1270b..d25e349 100644 --- a/packages/cdebconf/src/modules/frontend/newt/newt.c +++ b/packages/cdebconf/src/modules/frontend/newt/newt.c @@ -115,10 +115,6 @@ static void newt_progress_stop(struct frontend *obj); #include "cdebconf_newt.h" -/* Horizontal offset between buttons and text box */ -#define TEXT_PADDING 1 -/* Horizontal offset between text box and borders */ -#define BUTTON_PADDING 4 /* Padding of title width, allows for leading "[!!] " before title * and the two vertical bars and spaces that limit the title. */ -- Jérémy Bobbio.''`. [EMAIL PROTECTED]: :Ⓐ : # apt-get install anarchism `. `'` `- signature.asc Description: Digital signature
[RFC 2/4] Rename config-newt.h to cdebconf_newt.h for consistency
Hi! This patch just renames the header with the public API of the newt frontend to something a little more consistent with the namespace. --- packages/cdebconf/debian/changelog |2 ++ .../cdebconf/src/modules/frontend/newt/Makefile|2 +- .../src/modules/frontend/newt/cdebconf_newt.h | 20 .../src/modules/frontend/newt/config-newt.h| 20 packages/cdebconf/src/modules/frontend/newt/newt.c |2 +- 5 files changed, 25 insertions(+), 23 deletions(-) create mode 100644 packages/cdebconf/src/modules/frontend/newt/cdebconf_newt.h delete mode 100644 packages/cdebconf/src/modules/frontend/newt/config-newt.h diff --git a/packages/cdebconf/debian/changelog b/packages/cdebconf/debian/changelog index 830d6e8..5eb0e37 100644 --- a/packages/cdebconf/debian/changelog +++ b/packages/cdebconf/debian/changelog @@ -24,7 +24,9 @@ cdebconf (0.120) UNRELEASED; urgency=low * Put frontend plugins symbol in the "cdebconf_" namespaces. The old symbols are still looked up as a fallback to ensure compatibility. * Fix a memory leak in plugin_new() along the way. * Switch the newt frontend to use "cdebconf_newt_" namespace for its API. + * Rename config-newt.h to cebconf_newt.h for consistency. This header +defines the public interface used by plugins for the newt frontend. -- Joey Hess <[EMAIL PROTECTED]> Fri, 17 Aug 2007 13:54:30 -0400 diff --git a/packages/cdebconf/src/modules/frontend/newt/Makefile b/packages/cdebconf/src/modules/frontend/newt/Makefile index 56b9711..cea2ee3 100644 --- a/packages/cdebconf/src/modules/frontend/newt/Makefile +++ b/packages/cdebconf/src/modules/frontend/newt/Makefile @@ -8,5 +8,5 @@ include ../modules.mak install:: ifneq ($(TARGET),udeb) - install -m 644 ${srcdir}/src/modules/frontend/newt/config-newt.h $(DESTDIR)${incdir} + install -m 644 ${srcdir}/src/modules/frontend/newt/cdebconf_newt.h $(DESTDIR)${incdir} endif diff --git a/packages/cdebconf/src/modules/frontend/newt/cdebconf_newt.h b/packages/cdebconf/src/modules/frontend/newt/cdebconf_newt.h new file mode 100644 index 000..9ec7ade --- /dev/null +++ b/packages/cdebconf/src/modules/frontend/newt/cdebconf_newt.h @@ -0,0 +1,20 @@ + +#ifndef _CDEBCONF_NEWT_H_ +#define _CDEBCONF_NEWT_H_ + +/* Horizontal offset between buttons and text box */ +#define TEXT_PADDING 1 +/* Horizontal offset between text box and borders */ +#define BUTTON_PADDING 4 + +#define cdebconf_newt_create_form(scrollbar) newtForm((scrollbar), NULL, 0) + +void cdebconf_newt_create_window(const int width, const int height, const char *title, const char *priority); + +int +cdebconf_newt_get_text_height(const char *text, int win_width); + +int +cdebconf_newt_get_text_width(const char *text); + +#endif /* _CDEBCONF_NEWT_H_ */ diff --git a/packages/cdebconf/src/modules/frontend/newt/config-newt.h b/packages/cdebconf/src/modules/frontend/newt/config-newt.h deleted file mode 100644 index b32f0b4..000 --- a/packages/cdebconf/src/modules/frontend/newt/config-newt.h +++ /dev/null @@ -1,20 +0,0 @@ - -#ifndef _CDEBCONF_CONFIG_NEWT_H_ -#define _CDEBCONF_CONFIG_NEWT_H_ - -/* Horizontal offset between buttons and text box */ -#define TEXT_PADDING 1 -/* Horizontal offset between text box and borders */ -#define BUTTON_PADDING 4 - -#define cdebconf_newt_create_form(scrollbar) newtForm((scrollbar), NULL, 0) - -void cdebconf_newt_create_window(const int width, const int height, const char *title, const char *priority); - -int -cdebconf_newt_get_text_height(const char *text, int win_width); - -int -cdebconf_newt_get_text_width(const char *text); - -#endif /* _CDEBCONF_CONFIG_NEWT_H_ */ diff --git a/packages/cdebconf/src/modules/frontend/newt/newt.c b/packages/cdebconf/src/modules/frontend/newt/newt.c index 7bb85dd..0e1270b 100644 --- a/packages/cdebconf/src/modules/frontend/newt/newt.c +++ b/packages/cdebconf/src/modules/frontend/newt/newt.c @@ -113,7 +113,7 @@ typedef int (newt_handler)(struct frontend *obj, struct question *q); static void newt_progress_stop(struct frontend *obj); -#include "config-newt.h" +#include "cdebconf_newt.h" /* Horizontal offset between buttons and text box */ #define TEXT_PADDING 1 -- Jérémy Bobbio.''`. [EMAIL PROTECTED]: :Ⓐ : # apt-get install anarchism `. `'` `- signature.asc Description: Digital signature
[RFC 1/4] Switch the newt frontend to use "cdebconf_newt_" namespace for its API
Hi! This serie of patches will clean up the newt frontend API which can be used by plugins and adapt the entropy plugin to this new API. Applying this patch will break the build of the installer though, even applied together with the relevant modifications to the entropy plugin due to an issue with mklibs. More details to come in a separate mail. --- packages/cdebconf/debian/changelog |3 + .../src/modules/frontend/newt/config-newt.h|8 +- packages/cdebconf/src/modules/frontend/newt/newt.c | 84 ++-- 3 files changed, 48 insertions(+), 47 deletions(-) diff --git a/packages/cdebconf/debian/changelog b/packages/cdebconf/debian/changelog index 2231249..830d6e8 100644 --- a/packages/cdebconf/debian/changelog +++ b/packages/cdebconf/debian/changelog @@ -23,7 +23,8 @@ cdebconf (0.120) UNRELEASED; urgency=low for the help to figure this out! * Put frontend plugins symbol in the "cdebconf_" namespaces. The old symbols are still looked up as a fallback to ensure compatibility. * Fix a memory leak in plugin_new() along the way. + * Switch the newt frontend to use "cdebconf_newt_" namespace for its API. -- Joey Hess <[EMAIL PROTECTED]> Fri, 17 Aug 2007 13:54:30 -0400 diff --git a/packages/cdebconf/src/modules/frontend/newt/config-newt.h b/packages/cdebconf/src/modules/frontend/newt/config-newt.h index cfb8098..b32f0b4 100644 --- a/packages/cdebconf/src/modules/frontend/newt/config-newt.h +++ b/packages/cdebconf/src/modules/frontend/newt/config-newt.h @@ -7,14 +7,14 @@ /* Horizontal offset between text box and borders */ #define BUTTON_PADDING 4 -#define create_form(scrollbar) newtForm((scrollbar), NULL, 0) +#define cdebconf_newt_create_form(scrollbar) newtForm((scrollbar), NULL, 0) -void newt_create_window(const int width, const int height, const char *title, const char *priority); +void cdebconf_newt_create_window(const int width, const int height, const char *title, const char *priority); int -newt_get_text_height(const char *text, int win_width); +cdebconf_newt_get_text_height(const char *text, int win_width); int -newt_get_text_width(const char *text); +cdebconf_newt_get_text_width(const char *text); #endif /* _CDEBCONF_CONFIG_NEWT_H_ */ diff --git a/packages/cdebconf/src/modules/frontend/newt/newt.c b/packages/cdebconf/src/modules/frontend/newt/newt.c index dc51003..7bb85dd 100644 --- a/packages/cdebconf/src/modules/frontend/newt/newt.c +++ b/packages/cdebconf/src/modules/frontend/newt/newt.c @@ -162,7 +162,7 @@ help_text(struct frontend *obj) } void -newt_create_window(const int width, const int height, const char *title, const char *priority) +cdebconf_newt_create_window(const int width, const int height, const char *title, const char *priority) { static const char *sigils[][2] = { { "low", "." }, @@ -192,7 +192,7 @@ newt_create_window(const int width, const int height, const char *title, const c } int -newt_get_text_height(const char *text, int win_width) +cdebconf_newt_get_text_height(const char *text, int win_width) { newtComponent textbox, f; int t_height; @@ -220,14 +220,14 @@ newt_get_text_height(const char *text, int win_width) #endif t_height = newtTextboxGetNumLines(textbox); // This is needed so the textbox gets freed...ick -f = create_form(NULL); +f = cdebconf_newt_create_form(NULL); newtFormAddComponent(f, textbox); newtFormDestroy(f); return t_height; } int -newt_get_text_width(const char *text) +cdebconf_newt_get_text_width(const char *text) { int t_width = 0; const char *p = text; @@ -257,7 +257,7 @@ min_window_height(struct question *q, int win_width) q_ext_text = q_get_extended_description(q); if (q_ext_text != NULL) -height = newt_get_text_height(q_ext_text, win_width) + 1; +height = cdebconf_newt_get_text_height(q_ext_text, win_width) + 1; if (strcmp(type, "multiselect") == 0 || strcmp(type, "select") == 0) height += 4; // at least three lines for choices + blank line else if (strcmp(type, "string") == 0 || strcmp(type, "password") == 0) @@ -335,7 +335,7 @@ show_separate_window(struct frontend *obj, struct question *q) win_width = width-7; /* There are 5 characters for sigils, plus 4 for borders */ strtruncate(obj->title, win_width-9); -t_height = newt_get_text_height(full_description, win_width); +t_height = cdebconf_newt_get_text_height(full_description, win_width); if (t_height+extra <= height-5) win_height = t_height+extra; else { @@ -351,23 +351,23 @@ show_separate_window(struct frontend *obj, struct question *q) free(full_description); full_description = wrappedtext; #endif -t_width = newt_get_text_width(full_description); -t_width_descr = newt_get_text_width(descr); +t_width = cdebconf_newt_get_text_width(full_description); +t_width_descr = cdebconf_newt_get_
Re: Kernels at 2.6.21 rather than 2.6.22?
Martin Michlmayr <[EMAIL PROTECTED]> writes: > Is there a good reason why all the d-i kernel udebs are still at > 2.6.21 rather than 2.6.22? If not, I'd like to update mips* and arm. I personally prefer to discuss it tomorrow at the meeting. So we can decide it and try to move all arches together. -- O T A V I OS A L V A D O R - E-mail: [EMAIL PROTECTED] UIN: 5906116 GNU/Linux User: 239058 GPG ID: 49A5F855 Home Page: http://otavio.ossystems.com.br - "Microsoft sells you Windows ... Linux gives you the whole house." -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Re: [RFC] Remove massbuild bashisms
Jérémy Bobbio <[EMAIL PROTECTED]> writes: > I don't have a huge personal preference, although I like the idea of > having POSIX compliant shell scripts. If there's no opposition, I'll > commit it in a few days. Using the Branden suggestion I think it's OK for commiting. -- O T A V I OS A L V A D O R - E-mail: [EMAIL PROTECTED] UIN: 5906116 GNU/Linux User: 239058 GPG ID: 49A5F855 Home Page: http://otavio.ossystems.com.br - "Microsoft sells you Windows ... Linux gives you the whole house."
Re: [RFC] Use "cdebconf_" namespace for the handler of the newt entropy plugin
Jérémy Bobbio <[EMAIL PROTECTED]> writes: > Hi! > > This will make the handler of the newt entropy plugin to use use the > "cdebconf_" namespace introduced in the previous patch. Ack too :-) -- O T A V I OS A L V A D O R - E-mail: [EMAIL PROTECTED] UIN: 5906116 GNU/Linux User: 239058 GPG ID: 49A5F855 Home Page: http://otavio.ossystems.com.br - "Microsoft sells you Windows ... Linux gives you the whole house."
Re: [RFC] Put frontend plugins symbol in the "cdebconf_" namespaces
Jérémy Bobbio <[EMAIL PROTECTED]> writes: > Hi! > > As suggested by Colin [1]: this patch will put > frontend plugins symbol in the "cdebconf_" namespaces. > > [1] http://lists.debian.org/debian-boot/2007/08/msg6.html > > The old symbols are still looked up as a fallback to ensure compatibility. > Fix a memory leak in plugin_new() along the way. Very good :-) -- O T A V I OS A L V A D O R - E-mail: [EMAIL PROTECTED] UIN: 5906116 GNU/Linux User: 239058 GPG ID: 49A5F855 Home Page: http://otavio.ossystems.com.br - "Microsoft sells you Windows ... Linux gives you the whole house."
Re: [RFC] Load frontends with RTLD_NOW | RTLD_GLOBAL in cdebconf
Jérémy Bobbio <[EMAIL PROTECTED]> writes: > Hi! > > Here's the first patch of a series with the work I have done while > offline. Git was definitely helpful in this regard. :) > > When does frontend switching currently happens in d-i? I did not > experience any crash while running a dialog based installation with this > patch. (Using loop-aes encryption to be sure to get the entropy plugin.) > > Here's the patch: > > This will allow plugins to access frontend API without requiring calls to > dlsym(). Kudos to Steve Langasek for the help to figure this out! I think this OK :-) -- O T A V I OS A L V A D O R - E-mail: [EMAIL PROTECTED] UIN: 5906116 GNU/Linux User: 239058 GPG ID: 49A5F855 Home Page: http://otavio.ossystems.com.br - "Microsoft sells you Windows ... Linux gives you the whole house."
[RFC] Use "cdebconf_" namespace for the handler of the newt entropy plugin
Hi! This will make the handler of the newt entropy plugin to use use the "cdebconf_" namespace introduced in the previous patch. --- packages/cdebconf-entropy/debian/changelog |6 ++ .../cdebconf-entropy/newt-plugin-entropy-text.c|2 +- 2 files changed, 7 insertions(+), 1 deletions(-) diff --git a/packages/cdebconf-entropy/debian/changelog b/packages/cdebconf-entropy/debian/changelog index 4e97d3f..aed0eca 100644 --- a/packages/cdebconf-entropy/debian/changelog +++ b/packages/cdebconf-entropy/debian/changelog @@ -1,3 +1,9 @@ +cdebconf-entropy (0.5) UNRELEASED; urgency=low + + * Switch the handler symbol to the "cdebconf_" namespace. + + -- Jérémy Bobbio <[EMAIL PROTECTED]> Fri, 03 Aug 2007 02:12:31 +0200 + cdebconf-entropy (0.4) unstable; urgency=low * Use question_get_variable() from libdebconfclient0 and diff --git a/packages/cdebconf-entropy/newt-plugin-entropy-text.c b/packages/cdebconf-entropy/newt-plugin-entropy-text.c index d277efa..9fedfb2 100644 --- a/packages/cdebconf-entropy/newt-plugin-entropy-text.c +++ b/packages/cdebconf-entropy/newt-plugin-entropy-text.c @@ -134,7 +134,7 @@ copy_byte(int in, int out) } int -newt_handler_entropy_text(struct frontend *obj, struct question *q) +cdebconf_newt_handler_entropy_text(struct frontend *obj, struct question *q) { void *newt; newtComponent form; -- Jérémy Bobbio.''`. [EMAIL PROTECTED]: :Ⓐ : # apt-get install anarchism `. `'` `- signature.asc Description: Digital signature
Re: [RFC] Remove massbuild bashisms
On Tue, Aug 28, 2007 at 05:24:48PM +0200, Jérémy Bobbio wrote: > + BDEP_SOURCE_PREFIX=$(echo "$BDEP_SOURCE" | head -c 1) My recommendation was wrong -- I left out a step. Try this: _TMP=${BDEP_SOURCE#?} # everything but the first character BDEP_SOURCE_PREFIX=${BDEP_SOURCE%$_TMP} The first expansion gets matches our "suffix", and the second removes that suffix. Niftily, this works right (for your purposes) even if $_TMP ends up containing glob characters. They'll be treated literally, and not screw up your pattern. To stuff a glob pattern to be used as such inside a variable for use in a later parameter expansion would probably require a clever eval trick. Sorry for leading you astray with my first response. -- G. Branden Robinson| Never attribute to conspiracy that Debian GNU/Linux | which can be adequately explained [EMAIL PROTECTED] | by economics. http://people.debian.org/~branden/ | signature.asc Description: Digital signature
Re: [RFC] Remove massbuild bashisms
On Tue, Aug 28, 2007 at 12:30:35PM -0400, Branden Robinson wrote: > On Tue, Aug 28, 2007 at 05:24:48PM +0200, Jérémy Bobbio wrote: > > Hi! > > > > Attached is a patch that will remove bashisms in the massbuild script. > [...] > > I don't have a huge personal preference, although I like the idea of > > having POSIX compliant shell scripts. If there's no opposition, I'll > > commit it in a few days. > [...] > > + BDEP_SOURCE_PREFIX=$(echo "$BDEP_SOURCE" | head -c 1) > > That's a really expensive way of doing that. I recommend POSIX parameter > expansion, which will avoid forks and pipes. > > BDEP_SOURCE_PREFIX=${BDEP_SOURCE#?} Thanks for helping me improve my shell-fu. :) Patch localy amended. Cheers, -- Jérémy Bobbio.''`. [EMAIL PROTECTED]: :Ⓐ : # apt-get install anarchism `. `'` `- signature.asc Description: Digital signature
Re: [RFC] Remove massbuild bashisms
On Tue, Aug 28, 2007 at 05:24:48PM +0200, Jérémy Bobbio wrote: > Hi! > > Attached is a patch that will remove bashisms in the massbuild script. [...] > I don't have a huge personal preference, although I like the idea of > having POSIX compliant shell scripts. If there's no opposition, I'll > commit it in a few days. [...] > + BDEP_SOURCE_PREFIX=$(echo "$BDEP_SOURCE" | head -c 1) That's a really expensive way of doing that. I recommend POSIX parameter expansion, which will avoid forks and pipes. BDEP_SOURCE_PREFIX=${BDEP_SOURCE#?} -- G. Branden Robinson| It doesn't matter what you are Debian GNU/Linux | doing, emacs is always overkill. [EMAIL PROTECTED] | -- Stephen J. Carpenter http://people.debian.org/~branden/ | signature.asc Description: Digital signature
[RFC] Put frontend plugins symbol in the "cdebconf_" namespaces
Hi! As suggested by Colin [1]: this patch will put frontend plugins symbol in the "cdebconf_" namespaces. [1] http://lists.debian.org/debian-boot/2007/08/msg6.html The old symbols are still looked up as a fallback to ensure compatibility. Fix a memory leak in plugin_new() along the way. --- packages/cdebconf/debian/changelog |3 +++ packages/cdebconf/doc/plugins.txt |6 +++--- packages/cdebconf/src/plugin.c | 15 --- 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/packages/cdebconf/debian/changelog b/packages/cdebconf/debian/changelog index 2344d31..2231249 100644 --- a/packages/cdebconf/debian/changelog +++ b/packages/cdebconf/debian/changelog @@ -21,6 +21,9 @@ cdebconf (0.120) UNRELEASED; urgency=low * Load frontend with RTLD_NOW | RTLD_GLOBAL to allow plugins to access frontend API without requiring calls to dlsym(). Kudos to Steve Langasek for the help to figure this out! + * Put frontend plugins symbol in the "cdebconf_" namespaces. The old +symbols are still looked up as a fallback to ensure compatibility. + * Fix a memory leak in plugin_new() along the way. -- Joey Hess <[EMAIL PROTECTED]> Fri, 17 Aug 2007 13:54:30 -0400 diff --git a/packages/cdebconf/doc/plugins.txt b/packages/cdebconf/doc/plugins.txt index d491cee..1b4ea63 100644 --- a/packages/cdebconf/doc/plugins.txt +++ b/packages/cdebconf/doc/plugins.txt @@ -26,7 +26,7 @@ would be stored in: The library must provide a function with the following name: - _handler_ + cdebconf__handler_ Any hyphens in here are substituted with underscores, so: @@ -35,11 +35,11 @@ Any hyphens in here are substituted with underscores, so: The required prototype for this function depends on the frontend. For newt and text, it is (again with hyphens in substituted with underscores): - int _handler_(struct frontend *obj, struct question *q) + int cdebconf__handler_(struct frontend *obj, struct question *q) For gtk, it is: - int _handler_(struct frontend *obj, struct question *q, GtkWidget *questionbox); + int cdebconf__handler_(struct frontend *obj, struct question *q, GtkWidget *questionbox); The handler should return DC_OK (defined in common.h) if all went well, DC_GOBACK if the user wants to back up to the previous question, or DC_NOTOK diff --git a/packages/cdebconf/src/plugin.c b/packages/cdebconf/src/plugin.c index f09b0c8..ad28b47 100644 --- a/packages/cdebconf/src/plugin.c +++ b/packages/cdebconf/src/plugin.c @@ -59,11 +59,20 @@ struct plugin *plugin_new(const char *frontend, const char *filename) return NULL; } -symbollen = strlen(frontend) + 9 + strlen(plugin->name) + 1; +symbollen = strlen(frontend) + 18 + strlen(plugin->name) + 1; symbol = malloc(symbollen); -snprintf(symbol, symbollen, "%s_handler_%s", frontend, typesymbol); - +snprintf(symbol, symbollen, "cdebconf_%s_handler_%s", frontend, + typesymbol); plugin->handler = dlsym(plugin->module, symbol); +free(symbol); +if (plugin->handler == NULL) { +/* Let's try with the old style symbol name. */ +symbollen = strlen(frontend) + 9 + strlen(plugin->name) + 1; +symbol = malloc(symbollen); +snprintf(symbol, symbollen, "%s_handler_%s", frontend, typesymbol); +plugin->handler = dlsym(plugin->module, symbol); +free(symbol); +} if (plugin->handler == NULL) { INFO(INFO_WARN, "Malformed plugin module %s", filename); plugin_delete(plugin); -- Jérémy Bobbio.''`. [EMAIL PROTECTED]: :Ⓐ : # apt-get install anarchism `. `'` `- signature.asc Description: Digital signature
[RFC] Load frontends with RTLD_NOW | RTLD_GLOBAL in cdebconf
Hi! Here's the first patch of a series with the work I have done while offline. Git was definitely helpful in this regard. :) When does frontend switching currently happens in d-i? I did not experience any crash while running a dialog based installation with this patch. (Using loop-aes encryption to be sure to get the entropy plugin.) Here's the patch: This will allow plugins to access frontend API without requiring calls to dlsym(). Kudos to Steve Langasek for the help to figure this out! --- packages/cdebconf/debian/changelog |5 + packages/cdebconf/src/frontend.c |4 +--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/packages/cdebconf/debian/changelog b/packages/cdebconf/debian/changelog index 958c79a..2344d31 100644 --- a/packages/cdebconf/debian/changelog +++ b/packages/cdebconf/debian/changelog @@ -17,6 +17,11 @@ cdebconf (0.120) UNRELEASED; urgency=low [ Joey Hess ] * Call dh_md5sums. + [ Jérémy Bobbio ] + * Load frontend with RTLD_NOW | RTLD_GLOBAL to allow plugins to access +frontend API without requiring calls to dlsym(). Kudos to Steve Langasek +for the help to figure this out! + -- Joey Hess <[EMAIL PROTECTED]> Fri, 17 Aug 2007 13:54:30 -0400 cdebconf (0.119) unstable; urgency=low diff --git a/packages/cdebconf/src/frontend.c b/packages/cdebconf/src/frontend.c index 7dba994..9ab94d3 100644 --- a/packages/cdebconf/src/frontend.c +++ b/packages/cdebconf/src/frontend.c @@ -170,9 +170,7 @@ struct frontend *frontend_new(struct configuration *cfg, struct template_db *tdb question_setvalue(q, modname); question_deref(q); snprintf(tmp, sizeof(tmp), "%s/%s.so", modpath, modname); -//Frontend switching works when dlopening with RTLD_LAZY -//The real reason why it segfaultes with RTLD_NOW has yet to be found - if ((dlh = dlopen(tmp, RTLD_LAZY)) == NULL) + if ((dlh = dlopen(tmp, RTLD_NOW | RTLD_GLOBAL)) == NULL) DIE("Cannot load frontend module %s: %s", tmp, dlerror()); if ((mod = (struct frontend_module *)dlsym(dlh, "debconf_frontend_module")) == NULL) -- Jérémy Bobbio.''`. [EMAIL PROTECTED]: :Ⓐ : # apt-get install anarchism `. `'` `- signature.asc Description: Digital signature
[RFC] Remove massbuild bashisms
Hi! Attached is a patch that will remove bashisms in the massbuild script. This script is used to automatically create the udebs from kernel packages. With the attached set of changes, the enter key is required on top of pressing "y" to confirm the build. On the other hand, the script could also be set to explicitely use bash. I don't have a huge personal preference, although I like the idea of having POSIX compliant shell scripts. If there's no opposition, I'll commit it in a few days. Cheers, -- Jérémy Bobbio.''`. [EMAIL PROTECTED]: :Ⓐ : # apt-get install anarchism `. `'` `- Index: packages/kernel/massbuild === --- packages/kernel/massbuild (revision 49043) +++ packages/kernel/massbuild (working copy) @@ -275,6 +275,8 @@ clean_arch_tmp exit 1 fi + + BDEP_SOURCE_PREFIX=$(echo "$BDEP_SOURCE" | head -c 1) } retrieve_package() { @@ -303,10 +305,10 @@ fi ;; local) - url="$LMIRROR/pool/main/${BDEP_SOURCE:0:1}/$BDEP_SOURCE" + url="$LMIRROR/pool/main/${BDEP_SOURCE_PREFIX}/$BDEP_SOURCE" ;; pool) - url="$MIRROR/pool/main/${BDEP_SOURCE:0:1}/$BDEP_SOURCE" + url="$MIRROR/pool/main/${BDEP_SOURCE_PREFIX}/$BDEP_SOURCE" ;; incoming) url="$INCOMING" @@ -464,7 +466,7 @@ release manager. EOF fi -read -n 1 -s -p "Do you wish to continue [yN]? " reply +read -p "Do you wish to continue [yN]? " reply echo if [ "$reply" != y ] && [ "$reply" != Y ]; then exit 0 signature.asc Description: Digital signature
Kernels at 2.6.21 rather than 2.6.22?
Is there a good reason why all the d-i kernel udebs are still at 2.6.21 rather than 2.6.22? If not, I'd like to update mips* and arm. -- Martin Michlmayr http://www.cyrius.com/ -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Bug#438566: Promise TX4 disk ordering (was: various problems with RAID1/cryptsetup)
On Fri, Aug 17, 2007 at 09:36:29PM +0200, Luca Capello wrote: > 4) again, at reboot, the machine didn't boot, because the previous > /dev/sda1 is now /dev/sdb1. I discovered the real problem: AFAIK > the linux kernel erroneously maps the Promise TX4 devices, > counting from the last one. I can confirm this because I > attached a third SATA HD to the port3/channel3 and this one was > marked as /dev/sda instead of the expected /dev/sdc. According to a recent mail on LKML [1], this should be fixed in Linux 2.6.22. The debian-installer has not switched to this new version yet, but packages for 2.6.22 are available from unstable. Could you try it and see if the ordering is correct with the newer kernel? That would be definitely helpful. :) [1] http://lkml.org/lkml/2007/5/22/65 Cheers, -- Jérémy Bobbio.''`. [EMAIL PROTECTED]: :Ⓐ : # apt-get install anarchism `. `'` `- signature.asc Description: Digital signature
wrong /etc/fstab when using hw-raid (here: Adaptec 2100S and i2o-modules)
hi list, is expected some strange behavior last time i installed etch (4.0) on an FujitsuSiemens Primergy F200. The Maschine has 6 SCSI-Drives attached to an Adaptec 2100S, which is supported by the modules i20-core and i2o-block. I have configured my Drives as RAID5 in the Adaptec-BIOS. During boot the Adaptec-Controller shows only one drive. The Debian-Installer finds /dev/sda during install an lets me perfom all actions on that drive (here: creating a partition /dev/sda1 for /boot and a LVM for the rest of the FS). When rebooting after installation has finished, its starts up with normal boot messages. LVM is found, als PV and VG are found to. I2O-Modules are loaded. When it tries to mount /dev/sda1 to /boot it fails, because /dev/sda1 could not be found. I can continue boot with CTRL-D. Searching around /dev i found /dev/i2o and therein /dev/i2o/hda1 - which is my /boot-Partition. After editing /etc/fstab (change /dev/sda to /dev/i2o/hda1) and reboot, everything works fine. So: Debian-Installer finds the RAID to be /dev/sda, but after loading the i2o-Module during boot, the RAID ist found under /dev/i2o/hda1. Is that a "bug"? Belonging to the Debian-Installer oder to the i2o-Modules? Regards, Arne Metzger -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Re: Porting D-I to the Hurd
Hello, On 28/08/07, Joey Hess <[EMAIL PROTECTED]> wrote: > > (CCing you in case you're not on the list.) Thanks. I'm subscribed to the list now and checked out the previous mails too. Otavio Salvador wrote: > > It's a good start step to get debootstrap to work. Next step is to get > > the whole d-i to build and boot ;-). > > A good first step to that might be to get the debian-installer build > process for the hurd to the point that it can generate a d-i tree on > disk, which could then be chrooted (or hurd equiv) into, and the > installer started. > Will get on it ASAP. -- Regards Vikram Vincent http://groups.google.com/group/bangalore_alive/ http://fci.wikia.com/wiki/Campaign_to_promote_free_software_in_karnataka