view debian/postinst @ 25186:919916007cd2

this local variable can be static
author ben
date Fri, 30 Nov 2007 19:51:30 +0000
parents a5bef61f49bf
children
line wrap: on
line source

#!/usr/bin/perl -w

# mplayer postinst

require ConfHelper;

use Debconf::Client::ConfModule qw(:all);
use IO::Handle;
use Fcntl;
my $version = version(2.0);
my $didupgrade = 0;

dealwithupgrades();

my $mcfg = new ConfHelper('mplayer', "/etc/mplayer/mplayer.conf");



my $dcarea = "" ;
my $font =  scalar(get("mplayer/ttfont"))  ;
  $dcarea .= "#truetype font\nfont=" . $font . "\n"   if $font;
$mcfg->setconfarea($dcarea);



sub dealwithupgrades {
  open(OLDCONF, "</etc/mplayer/mplayer.conf") || return 1;
  close OLDCONF;

  my $mconf = new ConfHelper("mplayer", "/etc/mplayer/mplayer.conf");
  return 1 if ($mconf->hasconfarea());
  undef $mconf;

  if ((get('mplayer/replace-existing-files') eq 'true') &&
      (fget('mplayer/replace-existing-files', 'isdefault') eq 'false')) {
    $didupgrade = 1;
    for my $file ("/etc/mplayer/mplayer.conf"    ) {
      debug("Moving away $file");
      rename($file,$file . ".old");
    }
  } else {
    debug("Upgrade refused, exiting");
    exit 0;
  }
}

sub debug {
  print STDERR @_, "\n";
}


# pass control to debhelper scripts..
#
my $temp="set -e\nset -- @ARGV\n" . << 'DEBHELPER_EOF_';
#DEBHELPER#
DEBHELPER_EOF_
system ($temp) / 256 == 0
   or die "Problem with debhelper scripts: $!";