Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
DISCONTINUED:openSUSE:11.1:Update
update-alternatives
update-alternatives-suse.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File update-alternatives-suse.patch of Package update-alternatives
--- update-alternatives.pl +++ update-alternatives.pl @@ -4,10 +4,36 @@ use warnings; use POSIX qw(:errno_h); -use Dpkg; -use Dpkg::Gettext; +# use Dpkg; +our ($progname) = $0 =~ m#(?:.*/)?([^/]*)#; +our $version = "1.14"; +our $admindir = "/var/lib/rpm"; +#use Dpkg::Gettext; +eval 'use Locale::gettext'; +if ($@) { + eval q{ + sub _g { + return shift; + } + sub textdomain { + } + sub ngettext { + if ($_[2] == 1) { + return $_[0]; + } else { + return $_[1]; + } + } + }; +} else { + eval q{ + sub _g { + return gettext(shift); + } + }; +} -textdomain("dpkg"); +textdomain("rpm"); # Global variables: @@ -54,7 +80,7 @@ my %slavelinkcount; sub version { - printf _g("Debian %s version %s.\n"), $progname, $version; + printf _g("SUSE %s version %s.\n"), $progname, $version; printf _g(" Copyright (C) 1995 Ian Jackson. @@ -133,7 +159,7 @@ } while (($version = gl("version")) ne '') { defined($versionnum{$version}) && badfmt(sprintf(_g("duplicate path %s"), $version)); - if (-r $version) { + if (-r $version || $mode eq 'remove' && $apath eq $version) { push(@versions, $version); my $i; $versionnum{$version} = $i = $#versions; @@ -231,9 +257,9 @@ if $verbosemode > 0; } elsif (!defined($linkname) || (defined($linkname) && $linkname ne "$altdir/$name")) { - checked_rm("$link.dpkg-tmp"); - checked_symlink("$altdir/$name", "$link.dpkg-tmp"); - checked_mv("$link.dpkg-tmp", $link); + checked_rm("$link.rpm-tmp"); + checked_symlink("$altdir/$name", "$link.rpm-tmp"); + checked_mv("$link.rpm-tmp", $link); } $linkname = readlink("$altdir/$name"); if (defined($linkname) && $linkname eq $path) { @@ -250,8 +276,8 @@ my ($spath, $preferred) = (@_); printf STDOUT _g("Using '%s' to provide '%s'.") . "\n", $spath, $name; - checked_symlink("$spath","$altdir/$name.dpkg-tmp"); - checked_mv("$altdir/$name.dpkg-tmp", "$altdir/$name"); + checked_symlink("$spath","$altdir/$name.rpm-tmp"); + checked_mv("$altdir/$name.rpm-tmp", "$altdir/$name"); # Link slaves... for (my $slnum = 0; $slnum < @slavenames; $slnum++) { @@ -260,8 +286,8 @@ checked_alternative($slave, $slavelinks[$slnum], $slavepath{$preferred, $slnum}); checked_symlink($slavepath{$preferred, $slnum}, - "$altdir/$slave.dpkg-tmp"); - checked_mv("$altdir/$slave.dpkg-tmp", "$altdir/$slave"); + "$altdir/$slave.rpm-tmp"); + checked_mv("$altdir/$slave.rpm-tmp", "$altdir/$slave"); } else { pr(sprintf(_g("Removing %s (%s), not appropriate with %s."), $slave, $slavelinks[$slnum], $versions[$preferred])) @@ -389,7 +415,7 @@ if (defined($linkname= readlink("$altdir/$name"))) { if ($linkname eq $best) { $state= 'expected'; - } elsif (defined(readlink("$altdir/$name.dpkg-tmp"))) { + } elsif (defined(readlink("$altdir/$name.rpm-tmp"))) { $state= 'expected-inprogress'; } else { $state= 'unexpected'; @@ -409,7 +435,7 @@ if ($action eq 'auto') { &pr(sprintf(_g("Setting up automatic selection of %s."), $name)) if $verbosemode > 0; - checked_rm("$altdir/$name.dpkg-tmp"); + checked_rm("$altdir/$name.rpm-tmp"); checked_rm("$altdir/$name"); $state= 'nonexistent'; $mode = 'auto'; @@ -547,7 +573,7 @@ } else { if ($state eq 'expected-inprogress') { &pr(sprintf(_g("Recovering from previous failed update of %s ..."), $name)); - checked_mv("$altdir/$name.dpkg-tmp", "$altdir/$name"); + checked_mv("$altdir/$name.rpm-tmp", "$altdir/$name"); $state= 'expected'; } } @@ -559,8 +585,8 @@ # state=unexpected => mode=manual # mode=auto => state!=expected-inprogress && state!=unexpected -open(AF,">$admindir/$name.dpkg-new") || - &quit(sprintf(_g("unable to open %s for write: %s"), "$admindir/$name.dpkg-new", $!)); +open(AF,">$admindir/$name.rpm-new") || + &quit(sprintf(_g("unable to open %s for write: %s"), "$admindir/$name.rpm-new", $!)); paf($mode); &paf($link); for (my $j = 0; $j <= $#slavenames; $j++) { @@ -579,7 +605,7 @@ } } &paf(''); -close(AF) || &quit(sprintf(_g("unable to close %s: %s"), "$admindir/$name.dpkg-new", $!)); +close(AF) || &quit(sprintf(_g("unable to close %s: %s"), "$admindir/$name.rpm-new", $!)); if ($mode eq 'auto') { if ($best eq '') { @@ -587,25 +613,25 @@ if $verbosemode > 0; checked_rm("$altdir/$name"); checked_rm("$link"); - checked_rm("$admindir/$name.dpkg-new"); + checked_rm("$admindir/$name.rpm-new"); checked_rm("$admindir/$name"); exit(0); } else { checked_alternative($name, $link, $best); - checked_rm("$altdir/$name.dpkg-tmp"); - symlink($best,"$altdir/$name.dpkg-tmp"); + checked_rm("$altdir/$name.rpm-tmp"); + symlink($best,"$altdir/$name.rpm-tmp"); } } -checked_mv("$admindir/$name.dpkg-new", "$admindir/$name"); +checked_mv("$admindir/$name.rpm-new", "$admindir/$name"); if ($mode eq 'auto') { - checked_mv("$altdir/$name.dpkg-tmp", "$altdir/$name"); + checked_mv("$altdir/$name.rpm-tmp", "$altdir/$name"); for (my $j = 0; $j <= $#slavenames; $j++) { $sname= $slavenames[$j]; $slink= $slavelinks[$j]; $spath= $slavepath{$bestnum,$j}; - checked_rm("$altdir/$sname.dpkg-tmp"); + checked_rm("$altdir/$sname.rpm-tmp"); if ($spath eq '') { &pr(sprintf(_g("Removing %s (%s), not appropriate with %s."), $sname, $slink, $best)) if $verbosemode > 0; @@ -613,8 +639,8 @@ checked_rm("$slink"); } else { checked_alternative($sname, $slink, $spath); - checked_symlink("$spath", "$altdir/$sname.dpkg-tmp"); - checked_mv("$altdir/$sname.dpkg-tmp", "$altdir/$sname"); + checked_symlink("$spath", "$altdir/$sname.rpm-tmp"); + checked_mv("$altdir/$sname.rpm-tmp", "$altdir/$sname"); } } }
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor