Hello community, here is the log from the commit of package mkdud for openSUSE:Factory checked in at 2016-01-21 23:45:04 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/mkdud (Old) and /work/SRC/openSUSE:Factory/.mkdud.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "mkdud" Changes: -------- --- /work/SRC/openSUSE:Factory/mkdud/mkdud.changes 2016-01-20 09:55:21.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.mkdud.new/mkdud.changes 2016-01-22 01:10:46.000000000 +0100 @@ -1,0 +2,6 @@ +Thu Jan 21 08:51:11 UTC 2016 - snwint@suse.com + +- Remove warning on yast replacement for versions supporting it. +- 1.24 + +------------------------------------------------------------------- Old: ---- mkdud-1.23.tar.xz New: ---- mkdud-1.24.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ mkdud.spec ++++++ --- /var/tmp/diff_new_pack.OZZMLD/_old 2016-01-22 01:10:48.000000000 +0100 +++ /var/tmp/diff_new_pack.OZZMLD/_new 2016-01-22 01:10:48.000000000 +0100 @@ -23,7 +23,7 @@ Summary: Create driver update from rpms License: GPL-3.0+ Group: Hardware/Other -Version: 1.23 +Version: 1.24 Release: 0 Source: %{name}-%{version}.tar.xz Url: https://github.com/wfeldt/mkdud ++++++ mkdud-1.23.tar.xz -> mkdud-1.24.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mkdud-1.23/VERSION new/mkdud-1.24/VERSION --- old/mkdud-1.23/VERSION 2016-01-19 14:45:13.000000000 +0100 +++ new/mkdud-1.24/VERSION 2016-01-21 09:46:54.000000000 +0100 @@ -1 +1 @@ -1.23 +1.24 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mkdud-1.23/changelog new/mkdud-1.24/changelog --- old/mkdud-1.23/changelog 2016-01-19 14:45:13.000000000 +0100 +++ new/mkdud-1.24/changelog 2016-01-21 09:46:54.000000000 +0100 @@ -1,3 +1,6 @@ +2016-01-20: 1.24 + - Remove warning on yast replacement for versions supporting it. + 2016-01-19: 1.23 - better public key file detection diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mkdud-1.23/mkdud new/mkdud-1.24/mkdud --- old/mkdud-1.23/mkdud 2016-01-19 14:45:13.000000000 +0100 +++ new/mkdud-1.24/mkdud 2016-01-21 09:46:54.000000000 +0100 @@ -95,6 +95,7 @@ our $VERSION = "0.0"; my @all_archs = qw ( x86_64 aarch64 armv7l i386 ia64 ppc ppc64 ppc64le s390 s390x ); +my $REPLACEABLE_YAST = '3.1.135'; sub usage; sub get_file_arch; @@ -155,6 +156,7 @@ my $sign_key_ok; my $obs; my $pubkey_info; +my $yast_version = 0; # linuxrc versions in service packs my $servicepack; @@ -571,7 +573,7 @@ if(/^RPM/) { my $ft = { type => 'rpm', file => $_[0] }; - my $f = `rpm --nosignature -qp --qf '%{NAME}-%{VERSION}-%{RELEASE}.%{ARCH}' $_[0] 2>$tmp_err`; + my $f = `rpm --nosignature -qp --qf '%{NAME}\t%{VERSION}\t%{RELEASE}.%{ARCH}' $_[0] 2>$tmp_err`; if($f eq "") { print STDERR "failed to read rpm: $_[0]\n"; my $x; @@ -581,7 +583,13 @@ exit 1; } - $ft->{canonical_name} = $f; + # Check if yast base package is to be replaced and remember its version: + if($f =~ /^yast2\t(.+)\t/) { + $yast_version = $1; + # print STDERR "yast version: $yast_version\n"; + } + + ($ft->{canonical_name} = $f) =~ s/\t/-/g; my $ar = $f =~ /\.([^.]+)$/ ? $1 : undef; $ar = "i386" if $ar =~ /^i.86$/; @@ -1048,10 +1056,13 @@ if(!$opt_force) { if(lstat "$base/inst-sys/sbin/yast") { - print STDERR - "Warning: prevented driver update from replacing /sbin/yast.\n" . - "If you really need to do this, use --force.\n"; - unlink "$base/inst-sys/sbin/yast"; + if(vercmp($yast_version, $REPLACEABLE_YAST) < 0 ) { + print STDERR + "Warning: prevented driver update from replacing /sbin/yast.\n" . + "yast2 >=$REPLACEABLE_YAST is considered safely replacable.\n" . + "If you really need to do this, use --force.\n"; + unlink "$base/inst-sys/sbin/yast"; + } } if(-e "$base/inst-sys/usr/src/packages") { @@ -2223,3 +2234,11 @@ return undef; } + +# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - +sub vercmp { + my ($s1, $s2) = @_; + $s1 =~ s/(\d+)/sprintf("%010d", $1)/ge; + $s2 =~ s/(\d+)/sprintf("%010d", $1)/ge; + return $s1 cmp $s2; +}
participants (1)
-
root@hilbert.suse.de