r39508 - in /trunk/libconfig-model-perl/debian/dh: ./ dh_config postinst-config-model

ddumont-guest at users.alioth.debian.org ddumont-guest at users.alioth.debian.org
Wed Jul 8 16:14:26 UTC 2009


Author: ddumont-guest
Date: Wed Jul  8 16:13:49 2009
New Revision: 39508

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=39508
Log:
- very first try at dh_config

Added:
    trunk/libconfig-model-perl/debian/dh/
    trunk/libconfig-model-perl/debian/dh/dh_config
    trunk/libconfig-model-perl/debian/dh/postinst-config-model

Added: trunk/libconfig-model-perl/debian/dh/dh_config
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-perl/debian/dh/dh_config?rev=39508&op=file
==============================================================================
--- trunk/libconfig-model-perl/debian/dh/dh_config (added)
+++ trunk/libconfig-model-perl/debian/dh/dh_config Wed Jul  8 16:13:49 2009
@@ -1,0 +1,56 @@
+#!/usr/bin/perl
+
+# dh_config file provided by libconfig-model-perl package
+
+# See /usr/share/doc/debhelper/PROGRAMMING for debhelper details
+
+use warnings;
+use strict;
+use File::Find ;
+
+use Debian::Debhelper::Dh_Lib ;
+
+init(options => { model_name    => \$dh{MODEL_NAME}, 
+		  model_package => \$dh{MODEL_PACKAGE},
+		  model_version => \$dh{MODEL_VERSION},
+		}
+    );
+
+# debian/config file: foo.config-model
+my $package = $dh{MAIN_PACKAGE};
+exit 0  unless defined $package ;
+
+my $metaconf = "debian/$package.config-model" ;
+
+# do nothing if no model name was provided
+exit 0 unless ($dh{MODEL} or -e $metaconf) ;
+
+# declare model name to load ($model below)
+# declare which package provides the model (optional)
+open(META,$metaconf) || die "Can't open $metaconf:$!";
+foreach (<META>) {
+    chomp;
+    my ($k,$v) = split /\s*?[:= ]\s*/ ;
+    foreach my $dhk (grep /^MODEL_/,keys %dh) {
+	$dh{$dhk} ||= $v if uc($k) eq $dhk ;
+    }
+}
+
+next unless defined $dh{MODEL_NAME} ; 
+
+# add dependency 
+addsubstvar($package,'misc:Depends', 'libconfig-model-perl', '>= 0.637') ;
+
+if (defined $dh{MODEL_PACKAGE}) {
+    # add dependency in misc:Depends control file
+    addsubstvar($package,'misc:Depends', 
+		$dh{MODEL_PACKAGE},$dh{MODEL_VERSION}) ;
+}
+else {
+    # should we check that model file is declared in *.install ?
+}
+
+# calls autoscript to update pkg.postinst with config-edit command
+autoscript($package,postinst => 'postinst-config-model') ;
+
+

Added: trunk/libconfig-model-perl/debian/dh/postinst-config-model
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconfig-model-perl/debian/dh/postinst-config-model?rev=39508&op=file
==============================================================================
--- trunk/libconfig-model-perl/debian/dh/postinst-config-model (added)
+++ trunk/libconfig-model-perl/debian/dh/postinst-config-model Wed Jul  8 16:13:49 2009
@@ -1,0 +1,17 @@
+# Do we need to setup debconf to check if user want automatic upgrade ?
+# should this question be asked when installing libconfig-model-perl
+# or foo (and any other package that may use cm upgrade ?)
+
+# Do we need a general debconf question to decide about general
+# policy in case of error (force || UI || skip) ?
+
+# In case of error:
+# - fall back on other method (rather moot if new policy is provided
+#   only through a model)
+# - use -force option ?
+# - fire UI ?
+# - don't upgrade 
+
+# FIXME: upgrade requiring user interaction are not handled
+config-edit -model Approx -ui none -save
+




More information about the Pkg-perl-cvs-commits mailing list