view debian-build/postinst @ 10840:10f45897d653

Config fixed, changed put_image to use memcpy instead of native blits (for compatibility reasons), always clear primary layer (to have always black background) and try to center image.
author zdar
date Sun, 07 Sep 2003 19:42:35 +0000
parents 33f43b0f24f7
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(1.0);
my @savedolddata = ();
my $didupgrade = 0;

dealwithupgrades();

my $mcfg = new ConfHelper('mplayer', "/etc/mplayer/mplayer.conf");
$mcfg->setconfarea("
#MPlayer config file generated by .deb package.
#ffactor	=	0.9
#fs	=	yes
");

###########################################################################

debug("Configuring video output driver...");

my $dcarea = <<"EOF";
# MPlayer video output driver, configured by mplayer.deb
EOF

  $dcarea .= "vo=" . scalar(get("mplayer/voutput"));
  $dcarea .= "\n";

$mcfg->setconfarea($dcarea);

if ($didupgrade) {
  $mcfg->setotherarea_DANGEROUS(@savedolddata);
}

#%###################################

exit unless (get("mplayer/configure") eq 'true');
exit unless (fget("mplayer/configure", "isdefault") eq 'false');

#%##################################
get("mplayer/cfgnote");



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')) {
    print STDERR "Upgrading...\n";
#?    saveolddata("/etc/network/interfaces", "pppconf");
    $didupgrade = 1;
    for my $file ("/etc/mplayer/mplayer.conf"
    #, "/etc/mplayer/fonts/sth
    ) {
      debug("Deleting $file");
      unlink $file;
    }
  } else {
    print STDERR "Upgrade refused, exiting.\n";
    exit 0;
  }
}

# Gets any debconf area for other packages and saves it off.

sub saveolddata {
  my ($file, $package) = @_;
  my $conf = new ConfHelper($package, $file);
  push(@savedolddata, $conf->{startline} . "\n");
  push(@savedolddata, $conf->getconfarea());
  push(@savedolddata, $conf->{endline} . "\n");
}
		  
sub debug {
  print STDERR @_, "\n";
}