[Pkg-wpa-devel] Re: Bug#353530: Several package enhancements, fixing some flaws in maintainer scripts


Sun Feb 19 13:06:39 UTC 2006


Thank you very much for your bugreport and your patch.

We are currently preparing an upload for 0.4.7-4, you can look at our
current process here:
http://svn.debian.org/wsvn/pkg-wpa/trunk/wpasupplicant/?rev=0&sc=0

Parts of your patch are already included there, I will look if anything
is missing. The svn should already be lintian clean.

Thanks again,
	Reinhard.

On Sun, Feb 19, 2006 at 09:44:58PM +1000, Kel Modderman wrote:
> Package: wpasupplicant
> Version: 0.4.7-3
> 
> The following lintian report shows some quire serious problems:-
> 
> Now running lintian...
> dpkg-source: warning: extracting unsigned source package (./dsc)
> E: wpasupplicant: duplicate-updaterc.d-calls-in-postinst wpasupplicant
> E: wpasupplicant: duplicate-updaterc.d-calls-in-postrm wpasupplicant
> E: wpasupplicant: duplicate-conffile /etc/init.d/wpasupplicant
> E: wpasupplicant: duplicate-conffile /etc/default/wpasupplicant
> E: wpasupplicant: duplicate-conffile /etc/wpa_supplicant.conf
> W: wpasupplicant: wrong-name-for-upstream-changelog 
> usr/share/doc/wpasupplicant/ChangeLog.gz
> Finished running lintian.
> 
> Upon inspecting the source package I also noticed a few other things that 
> could be improved. Attached is a series of patches to address each issue 
> that will be briefly described below:-
> 
> 00_debian-changelog.patch
> 
> The changelog entry briefly describing the following changes
> 
> 
> 01_use-upstream-manpages.patch
> 
> Remove debian manpages and used those that are (well) maintained upstream. 
> No need to duplicate efforts here imho.
> 
> 
> 02_wpagui-manpage-man8.patch
> 
> Install wpa_gui manpage to man8, as it is an administration tool. The other 
> manpages also live here.
> 
> 
> 03_cleanup-install-target.patch
> 
> Eliminate double handling of the binary installation. Don't use debian/tmp 
> or *.install files. Install binaries directly into their respective package 
> staging directory tree via existing debian/rules commands.
> 
> 
> 04_precise-qmake-cmd.patch
> 
> Explicitly define qmake-qt4 as the $(QMAKE) var. Fails to build on systems 
> with previous/parallel qt installations.
> 
> 
> 05_let-debhelper4-mark-conffiles.patch
> 
> The debhelper compat level used marks conffiles automatically.
> 
> 
> 06_let-dh_installinit-create-postrm.patch
> 
> The current postrm file contains the #DEBHELPER# token, which is 
> automatically replaced by the _exact_ same code in the rest of the script 
> by dh_installinit. This is not good.
> 
> 
> 07_dh_installinit-postinst-cleanup.patch
> 
> Set the update-rc.d options in debian/rules. Also eliminate duplication of 
> code automatically injected by dh_installinit.
> 
> 
> 08_install-upstream-changelog-correctly.patch
> 
> Use debian/rules to correctly install the upstream changelog.
> 
> 
> 09_add-watch-file.patch
> 
> Add a watch file to assist in tracking new upstream releases.
> 
> 
> Thanks, Kel.
> 

> diff -Nru wpasupplicant-0.4.7.orig/debian/changelog wpasupplicant-0.4.7/debian/changelog
> --- wpasupplicant-0.4.7.orig/debian/changelog	2006-02-19 10:55:12.000000000 +1000
> +++ wpasupplicant-0.4.7/debian/changelog	2006-02-19 14:34:27.083389648 +1000
> @@ -1,3 +1,26 @@
> +wpasupplicant (0.4.7-3.1) unstable; urgency=low
> +
> +  * Use upstream manpages.
> +  * Install wpagui manpage to man8.
> +  * Install packaged binaries directly into their package staging directories
> +    instead of double handling them via debain/tmp. Remove wpagui.install and
> +    wpasupplicant.install.
> +  * Use qmake-qt4 directly, to avoid ftbfs on systems with other qt
> +    versions installed.
> +  * When using debhelper >= 4.1.0, conffiles are automatically marked, do not
> +    duplicate this. Remove wpasupplicant.conffiles.
> +  * Avoid duplication of update-rc.d commands in postrm by allowing
> +    dh_installinit to automatically handle the situation. Remove
> +    wpasupplicant.postrm.
> +  * Use dh_installinit --update-rcd-params option when creating the
> +    wpasupplicant.postinst script.
> +  * Remove code duplicated by dh_installinit in wpasupplicant.postinst,
> +    invoke-rc.d is added automatically.
> +  * Install upstream changelog with correct name.
> +  * Add watch file.
> +
> + -- Kel Modderman <kelrin at tpg.com.au>  Sun, 19 Feb 2006 13:55:46 +1000
> +
>  wpasupplicant (0.4.7-3) unstable; urgency=low
>  
>    * Another brown paper bag release.

> diff -Nru wpasupplicant-0.4.7.orig/debian/wpa_cli.1 wpasupplicant-0.4.7/debian/wpa_cli.1
> --- wpasupplicant-0.4.7.orig/debian/wpa_cli.1	2006-02-19 10:55:12.000000000 +1000
> +++ wpasupplicant-0.4.7/debian/wpa_cli.1	1970-01-01 10:00:00.000000000 +1000
> @@ -1,38 +0,0 @@
> -.TH WPA_CLI 1 05.09.2004 "" "WPA client"
> -.SH NAME
> -wpa_cli \- WPA command line client
> -.SH SYNOPSIS
> -.B wpa_cli
> -.I "[\-p<path>] [\-i<ifname>] [\-hvB] [\-a<actionfile>] [commands...]"
> -.SH "DESCRIPTION"
> -This manual page documents briefly the
> -.BR wpa_cli
> -utility.
> -.SH OPTIONS
> -A summary of commands follows. For a complete description, run
> -.BR wpa_cli\ \-h
> -from the command line. See the help output for a complete list of
> -query commands.
> -.TP
> -.B \-p<path>
> -Path to find control sockets.
> -.TP
> -.B \-B
> -Run a daemon in the background.
> -.TP
> -.B \-a<actionfile>
> -Run in daemon mode, executing the action file based on events from wpa_supplicant.
> -.TP
> -.B \-i<ifname>
> -Interface to listen on. Default interface is the first found in the socket path.
> -.TP
> -.B \-h
> -Help.
> -.TP
> -.B \-v
> -Version information.
> -.SH "SEE ALSO"
> -wpa_supplicant(1), wpa_passphrase(1)
> -.SH AUTHOR
> -This manual page was written by Kyle McMartin <kyle at debian.org> for
> -the Debian GNU system (but may be used by others).
> diff -Nru wpasupplicant-0.4.7.orig/debian/wpa_passphrase.1 wpasupplicant-0.4.7/debian/wpa_passphrase.1
> --- wpasupplicant-0.4.7.orig/debian/wpa_passphrase.1	2006-02-19 10:55:12.000000000 +1000
> +++ wpasupplicant-0.4.7/debian/wpa_passphrase.1	1970-01-01 10:00:00.000000000 +1000
> @@ -1,25 +0,0 @@
> -.TH WPA_PASSPHRASE 1 05.09.2004 "" "WPA Passphrase"
> -.SH NAME
> -wpa_passphrase \- set WPA passphrase for a SSID
> -.SH SYNOPSIS
> -.B wpa_passphrase
> -.I "<ssid> <passphrase>"
> -.SH "DESCRIPTION"
> -This manual page documents briefly the
> -.BR wpa_passphrase
> -utility.
> -.SH OPTIONS
> -A summary of commands follows. For a complete description, run
> -.BR wpa_passphase
> -from the command line.
> -.TP
> -.B <ssid>
> -SSID to change passphrase on.
> -.TP
> -.B <passphrase>
> -Passphrase to use on SSID. If passphrase is left out, it will be read from stdin.
> -.SH "SEE ALSO"
> -wpa_supplicant(1), wpa_cli(1)
> -.SH AUTHOR
> -This manual page was written by Kyle McMartin <kyle at debian.org> for
> -the Debian GNU system (but may be used by others).
> diff -Nru wpasupplicant-0.4.7.orig/debian/wpa_supplicant.1 wpasupplicant-0.4.7/debian/wpa_supplicant.1
> --- wpasupplicant-0.4.7.orig/debian/wpa_supplicant.1	2006-02-19 10:55:12.000000000 +1000
> +++ wpasupplicant-0.4.7/debian/wpa_supplicant.1	1970-01-01 10:00:00.000000000 +1000
> @@ -1,63 +0,0 @@
> -.TH WPA_SUPPLICANT 1 05.09.2004 "" "WPA Supplicant"
> -.SH NAME
> -wpa_supplicant \- WiFi Protected Access client daemon
> -.SH SYNOPSIS
> -.B wpa_supplicant
> -.I "[\-BddehLqqvwW] \-i<ifname> \-c<conf> [\-D<driver>] [\-N \-i<ifname> \-c<conf> [\-D<driver>] ...]"
> -.SH "DESCRIPTION"
> -This manual page documents briefly the
> -.BR wpa_supplicant
> -daemon.
> -.SH OPTIONS
> -A summary of commands follows. For a complete description, run
> -.BR wpa_supplicant
> -from the command line.
> -.TP
> -.B \-i<iface>
> -Interface to listen on.
> -.TP
> -.B \-c<conf>
> -Path to configuration file, typically /etc/wpa_supplicant.conf. An
> -example configuration file with many examples can be found in 
> -/usr/share/doc/wpasupplicant/examples/wpa_supplicant.conf.gz.
> -.TP
> -.B \-D<driver>
> -Driver to use.
> -.TP
> -.B \-B
> -Fork daemon to the background.
> -.TP
> -.B \-d
> -Show debugging info (\-dd for even more).
> -.TP
> -.B \-K
> -Include keys (passwords, etc.) in debug output.
> -.TP
> -.B \-t
> -Include timestamp in debug messages.
> -.TP
> -.B \-h
> -Show help text.
> -.TP
> -.B \-L
> -Show license text.
> -.TP
> -.B \-q
> -Decrease debugging info (\-qq for even less).
> -.TP
> -.B \-v
> -Show version text.
> -.TP
> -.B \-w
> -Wait for <iface> to be added, if needed.
> -.TP
> -.B \-W
> -Wait for a control interface monitor before starting.
> -.TP
> -.B \-N
> -Start describing a new interface.
> -.SH "SEE ALSO"
> -wpa_passphrase(1), wpa_cli(1)
> -.SH AUTHOR
> -This manual page was written by Kyle McMartin <kyle at debian.org> for
> -the Debian GNU system (but may be used by others).
> diff -Nru wpasupplicant-0.4.7.orig/debian/wpasupplicant.manpages wpasupplicant-0.4.7/debian/wpasupplicant.manpages
> --- wpasupplicant-0.4.7.orig/debian/wpasupplicant.manpages	2006-02-19 10:55:12.000000000 +1000
> +++ wpasupplicant-0.4.7/debian/wpasupplicant.manpages	2006-02-19 13:10:34.969387256 +1000
> @@ -1,3 +1,3 @@
> -debian/wpa_cli.1
> -debian/wpa_supplicant.1
> -debian/wpa_passphrase.1
> +doc/docbook/wpa_cli.8
> +doc/docbook/wpa_passphrase.8
> +doc/docbook/wpa_supplicant.8

> diff -Nru wpasupplicant-0.4.7.orig/debian/wpa_gui.1 wpasupplicant-0.4.7/debian/wpa_gui.1
> --- wpasupplicant-0.4.7.orig/debian/wpa_gui.1	2006-02-19 10:55:12.000000000 +1000
> +++ wpasupplicant-0.4.7/debian/wpa_gui.1	1970-01-01 10:00:00.000000000 +1000
> @@ -1,25 +0,0 @@
> -.TH WPA_GUI 1 05.09.2004 "" "WPA GUI"
> -.SH NAME
> -wpa_gui \- WPA GUI client
> -.SH SYNOPSIS
> -.B wpa_gui
> -.I "[\-p<ctrl iface dir>] [\-i<ctrl iface>]"
> -.SH "DESCRIPTION"
> -This manual page documents briefly the
> -.BR wpa_gui
> -utility.
> -.SH OPTIONS
> -A summary of parameters to wpa_gui follows.
> -.TP
> -.B \-p<ctrl iface dir>
> -Path to where to find the control interface sockets. Typically this
> -is /var/run/wpa_supplicant/
> -.TP
> -.B \-i<ctrl iface>
> -Interface to listen on, ie, the socket you want to connect to, typically
> -a file in /var/run/wpa_supplicant/
> -.SH "SEE ALSO"
> -wpa_supplicant(1), wpa_passphrase(1), wpa_cli(1)
> -.SH AUTHOR
> -This manual page was written by Kyle McMartin <kyle at debian.org> for
> -the Debian GNU system (but may be used by others).
> diff -Nru wpasupplicant-0.4.7.orig/debian/wpa_gui.8 wpasupplicant-0.4.7/debian/wpa_gui.8
> --- wpasupplicant-0.4.7.orig/debian/wpa_gui.8	1970-01-01 10:00:00.000000000 +1000
> +++ wpasupplicant-0.4.7/debian/wpa_gui.8	2006-02-19 13:17:20.789693192 +1000
> @@ -0,0 +1,25 @@
> +.TH WPA_GUI 8 02.18.2006 "" "WPA GUI"
> +.SH NAME
> +wpa_gui \- WPA GUI client
> +.SH SYNOPSIS
> +.B wpa_gui
> +.I "[\-p<ctrl iface dir>] [\-i<ctrl iface>]"
> +.SH "DESCRIPTION"
> +This manual page documents briefly the
> +.BR wpa_gui
> +utility.
> +.SH OPTIONS
> +A summary of parameters to wpa_gui follows.
> +.TP
> +.B \-p<ctrl iface dir>
> +Path to where to find the control interface sockets. Typically this
> +is /var/run/wpa_supplicant/
> +.TP
> +.B \-i<ctrl iface>
> +Interface to listen on, ie, the socket you want to connect to, typically
> +a file in /var/run/wpa_supplicant/
> +.SH "SEE ALSO"
> +wpa_supplicant(1), wpa_passphrase(1), wpa_cli(1)
> +.SH AUTHOR
> +This manual page was written by Kyle McMartin <kyle at debian.org> for
> +the Debian GNU system (but may be used by others).
> diff -Nru wpasupplicant-0.4.7.orig/debian/wpagui.manpages wpasupplicant-0.4.7/debian/wpagui.manpages
> --- wpasupplicant-0.4.7.orig/debian/wpagui.manpages	2006-02-19 10:55:12.000000000 +1000
> +++ wpasupplicant-0.4.7/debian/wpagui.manpages	2006-02-19 13:17:30.027288864 +1000
> @@ -1 +1 @@
> -debian/wpa_gui.1
> +debian/wpa_gui.8

> diff -Nru wpasupplicant-0.4.7.orig/debian/rules wpasupplicant-0.4.7/debian/rules
> --- wpasupplicant-0.4.7.orig/debian/rules	2006-02-19 10:55:12.000000000 +1000
> +++ wpasupplicant-0.4.7/debian/rules	2006-02-19 13:36:07.607390864 +1000
> @@ -47,15 +47,12 @@
>  	dh_clean -k
>  	dh_installdirs
>  
> -	mkdir -p debian/tmp/etc
> -	mkdir -p debian/tmp/usr/sbin
> -
>  	install -p wpa_cli wpa_passphrase wpa_supplicant \
> -		debian/tmp/usr/sbin
> +		debian/wpasupplicant/usr/sbin
>  	install --mode=644 -p debian/wpa_supplicant.defconf \
> -		debian/tmp/etc/wpa_supplicant.conf
> +		debian/wpasupplicant/etc/wpa_supplicant.conf
>  
> -	install -p wpa_gui-qt4/wpa_gui debian/tmp/usr/sbin
> +	install -p wpa_gui-qt4/wpa_gui debian/wpagui/usr/sbin
>  	
>  	dh_install
>  
> diff -Nru wpasupplicant-0.4.7.orig/debian/wpagui.install wpasupplicant-0.4.7/debian/wpagui.install
> --- wpasupplicant-0.4.7.orig/debian/wpagui.install	2006-02-19 10:55:12.000000000 +1000
> +++ wpasupplicant-0.4.7/debian/wpagui.install	1970-01-01 10:00:00.000000000 +1000
> @@ -1 +0,0 @@
> -debian/tmp/usr/sbin/wpa_gui /usr/sbin
> diff -Nru wpasupplicant-0.4.7.orig/debian/wpasupplicant.install wpasupplicant-0.4.7/debian/wpasupplicant.install
> --- wpasupplicant-0.4.7.orig/debian/wpasupplicant.install	2006-02-19 10:55:12.000000000 +1000
> +++ wpasupplicant-0.4.7/debian/wpasupplicant.install	1970-01-01 10:00:00.000000000 +1000
> @@ -1,4 +0,0 @@
> -debian/tmp/etc/wpa_supplicant.conf /etc
> -debian/tmp/usr/sbin/wpa_supplicant /usr/sbin
> -debian/tmp/usr/sbin/wpa_cli /usr/sbin
> -debian/tmp/usr/sbin/wpa_passphrase /usr/sbin

> diff -Nru wpasupplicant-0.4.7.orig/debian/rules wpasupplicant-0.4.7/debian/rules
> --- wpasupplicant-0.4.7.orig/debian/rules	2006-02-19 13:18:37.861976000 +1000
> +++ wpasupplicant-0.4.7/debian/rules	2006-02-19 13:22:39.943174488 +1000
> @@ -20,7 +20,7 @@
>  WPASUP=wpasupplicant
>  WPAGUI=wpagui
>  
> -QMAKE=qmake
> +QMAKE=qmake-qt4
>  
>  # This has to be exported to make some magic below work.
>  export DH_OPTIONS

> diff -Nru wpasupplicant-0.4.7.orig/debian/wpasupplicant.conffiles wpasupplicant-0.4.7/debian/wpasupplicant.conffiles
> --- wpasupplicant-0.4.7.orig/debian/wpasupplicant.conffiles	2006-02-19 10:55:12.000000000 +1000
> +++ wpasupplicant-0.4.7/debian/wpasupplicant.conffiles	1970-01-01 10:00:00.000000000 +1000
> @@ -1,3 +0,0 @@
> -/etc/default/wpasupplicant
> -/etc/wpa_supplicant.conf
> -/etc/init.d/wpasupplicant

> diff -Nru wpasupplicant-0.4.7.orig/debian/wpasupplicant.postrm wpasupplicant-0.4.7/debian/wpasupplicant.postrm
> --- wpasupplicant-0.4.7.orig/debian/wpasupplicant.postrm	2006-02-19 10:55:12.000000000 +1000
> +++ wpasupplicant-0.4.7/debian/wpasupplicant.postrm	1970-01-01 10:00:00.000000000 +1000
> @@ -1,10 +0,0 @@
> -#!/bin/sh
> -# postrm for wpasupplicant
> -
> -if [ "$1" = "purge" ] ; then
> -    update-rc.d wpasupplicant remove >/dev/null
> -fi
> -
> -#DEBHELPER#
> -
> -exit 0

> diff -Nru wpasupplicant-0.4.7.orig/debian/rules wpasupplicant-0.4.7/debian/rules
> --- wpasupplicant-0.4.7.orig/debian/rules	2006-02-19 13:37:04.439751000 +1000
> +++ wpasupplicant-0.4.7/debian/rules	2006-02-19 13:46:32.768351952 +1000
> @@ -65,7 +65,7 @@
>  	dh_installchangelogs
>  	dh_installman
>  	dh_installdocs
> -	dh_installinit
> +	dh_installinit --update-rcd-params="start 38 S . stop 34 0 6 ."
>  	dh_strip
>  	dh_link
>  	dh_compress
> diff -Nru wpasupplicant-0.4.7.orig/debian/wpasupplicant.postinst wpasupplicant-0.4.7/debian/wpasupplicant.postinst
> --- wpasupplicant-0.4.7.orig/debian/wpasupplicant.postinst	2006-02-19 10:55:12.000000000 +1000
> +++ wpasupplicant-0.4.7/debian/wpasupplicant.postinst	2006-02-19 13:47:58.459324944 +1000
> @@ -8,14 +8,6 @@
>  
>  set -e
>  
> -case "$1" in
> -        abort*upgrade)         exit 0;;
> -        abort*remove)          exit 0;;
> -        abort*deconfigure)     exit 0;;
> -        configure) ;;
> -        *)                     exit 0;
> -esac
> -
>  if [ -x "/etc/init.d/wpasupplicant" ]; then
>  	# remove legacy run levels
>          if [ -x "/etc/rcS.d/S21wpasupplicant" ]; then
> @@ -25,14 +17,6 @@
>  	if [ -x "/etc/rc2.d/S20wpasupplicant" ]; then
>                  update-rc.d -f wpasupplicant remove > /dev/null
>          fi
> -
> -        update-rc.d wpasupplicant start 38 S . stop 34 0 6 . >/dev/null
> -fi
> -
> -if [ -x /usr/sbin/invoke-rc.d ]; then
> -        invoke-rc.d wpasupplicant start 2>&1 3>&1 || true
> -else
> -        /etc/init.d/wpasupplicant start 2>&1 3>&1 || true
>  fi
>  
>  #DEBHELPER#

> diff -Nru wpasupplicant-0.4.7.orig/debian/rules wpasupplicant-0.4.7/debian/rules
> --- wpasupplicant-0.4.7.orig/debian/rules	2006-02-19 13:46:32.768351000 +1000
> +++ wpasupplicant-0.4.7/debian/rules	2006-02-19 13:52:17.104004976 +1000
> @@ -62,7 +62,7 @@
>  	dh_testdir 
>  	dh_testroot
>  	dh_installexamples
> -	dh_installchangelogs
> +	dh_installchangelogs ChangeLog
>  	dh_installman
>  	dh_installdocs
>  	dh_installinit --update-rcd-params="start 38 S . stop 34 0 6 ."
> diff -Nru wpasupplicant-0.4.7.orig/debian/wpasupplicant.docs wpasupplicant-0.4.7/debian/wpasupplicant.docs
> --- wpasupplicant-0.4.7.orig/debian/wpasupplicant.docs	2006-02-19 10:55:12.000000000 +1000
> +++ wpasupplicant-0.4.7/debian/wpasupplicant.docs	1970-01-01 10:00:00.000000000 +1000
> @@ -1 +0,0 @@
> -ChangeLog

> diff -Nru wpasupplicant-0.4.7.orig/debian/watch wpasupplicant-0.4.7/debian/watch
> --- wpasupplicant-0.4.7.orig/debian/watch	1970-01-01 10:00:00.000000000 +1000
> +++ wpasupplicant-0.4.7/debian/watch	2006-02-19 14:42:27.620336928 +1000
> @@ -0,0 +1,2 @@
> +version=3
> +http://hostap.epitest.fi/releases/wpa_supplicant-(.*)\.tar\.gz debian




More information about the Pkg-wpa-devel mailing list