diff options
-rw-r--r-- | autoscripts/postinst-menu | 3 | ||||
-rw-r--r-- | autoscripts/postrm-menu | 1 | ||||
-rwxr-xr-x | dh_installmenu | 18 |
3 files changed, 17 insertions, 5 deletions
diff --git a/autoscripts/postinst-menu b/autoscripts/postinst-menu new file mode 100644 index 00000000..b56a3462 --- /dev/null +++ b/autoscripts/postinst-menu @@ -0,0 +1,3 @@ +if [ "$1" = "configure" ] && [ -x "`which update-menus 2>/dev/null`" ]; then + update-menus +fi diff --git a/autoscripts/postrm-menu b/autoscripts/postrm-menu new file mode 100644 index 00000000..a180558d --- /dev/null +++ b/autoscripts/postrm-menu @@ -0,0 +1 @@ +if [ -x "`which update-menus 2>/dev/null`" ]; then update-menus ; fi diff --git a/dh_installmenu b/dh_installmenu index 963f546f..327fac0f 100755 --- a/dh_installmenu +++ b/dh_installmenu @@ -18,17 +18,18 @@ B<dh_installmenu> [S<B<debhelper options>>] [B<-n>] dh_installmenu is a debhelper program that is responsible for installing files used by the debian menu package into package build directories. +It also automatically generates the postinst and postrm commands needed to +interface with the debian menu package. These commands are inserted into +the maintainer scripts by dh_installdeb. See L<dh_installdeb(1)> for an +explanation of how this works. + If a file named debian/package.menu exists, then it is installed into usr/share/menu/package in the package build directory. This is a debian menu file. See L<menufile(5)> for its format. If a file named debian/package.menu-method exits, then it is installed into etc/menu-methods/package in the package build directory. This is a debian -menu method file. In this case, dh_installmenu also automatically generates -the postinst and postrm commands needed to -interface with the debian menu package. These commands are inserted into -the maintainer scripts by dh_installdeb. See L<dh_installdeb(1)> for an -explanation of how this works. +menu method file. =head1 OPTIONS @@ -54,6 +55,13 @@ foreach my $package (@{$dh{DOPACKAGES}}) { doit("install","-d","$tmp/usr/share/menu"); } doit("install","-p","-m644",$menu,"$tmp/usr/share/menu/$package"); + + # Add the scripts if a menu-method file doesn't exist. + # The scripts for menu-method handle everything these do, too. + if ($menu_method eq "" && ! $dh{NOSCRIPTS}) { + autoscript($package,"postinst","postinst-menu"); + autoscript($package,"postrm","postrm-menu") + } } if ($menu_method ne '') { |