Hello community,
here is the log from the commit of package pesign-obs-integration for
openSUSE:Factory checked in at 2015-01-25 21:13:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/pesign-obs-integration (Old)
and /work/SRC/openSUSE:Factory/.pesign-obs-integration.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "pesign-obs-integration"
Changes:
--------
---
/work/SRC/openSUSE:Factory/pesign-obs-integration/pesign-obs-integration.changes
2014-09-17 21:23:47.000000000 +0200
+++
/work/SRC/openSUSE:Factory/.pesign-obs-integration.new/pesign-obs-integration.changes
2015-01-25 21:13:21.000000000 +0100
@@ -1,0 +2,10 @@
+Thu Jan 22 15:56:41 UTC 2015 - [email protected]
+
+- Add support for file verify flags (bnc#905420).
+
+-------------------------------------------------------------------
+Thu Jan 22 15:55:26 UTC 2015 - [email protected]
+
+- Sort the parts of the repackage spec file for easier debugging.
+
+-------------------------------------------------------------------
@@ -8 +18 @@
-Wed Sep 3 01:48:48 CEST 2014 - [email protected]
+Wed Sep 3 01:41:37 CEST 2014 - [email protected]
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ pesign-obs-integration.spec ++++++
--- /var/tmp/diff_new_pack.USvYi2/_old 2015-01-25 21:13:23.000000000 +0100
+++ /var/tmp/diff_new_pack.USvYi2/_new 2015-01-25 21:13:23.000000000 +0100
@@ -1,7 +1,7 @@
#
# spec file for package pesign-obs-integration
#
-# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2015 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
++++++ pesign-gen-repackage-spec ++++++
--- /var/tmp/diff_new_pack.USvYi2/_old 2015-01-25 21:13:23.000000000 +0100
+++ /var/tmp/diff_new_pack.USvYi2/_new 2015-01-25 21:13:23.000000000 +0100
@@ -152,7 +152,7 @@
$res{$tag} = query_single($rpm, $tag);
}
my @files;
- my @list = query_array($rpm, qw(filenames fileflags filemodes
fileusername filegroupname filesizes filemtimes filelinktos));
+ my @list = query_array($rpm, qw(filenames fileflags filemodes
fileusername filegroupname filesizes filemtimes filelinktos fileverifyflags));
for my $file (@list) {
my $new = {
name => $file->[0],
@@ -163,6 +163,7 @@
size => $file->[5],
mtime => $file->[6],
target => $file->[7],
+ verify => $file->[8],
};
push(@files, $new);
if ($new->{name} =~ /\.ko$/ && S_ISREG($new->{mode})) {
@@ -264,7 +265,7 @@
print SPEC "$tag: " . quote($p->{$tag}) . "\n";
}
print SPEC "BuildArch: noarch\n" if $p->{arch} eq "noarch";
- for my $dep (keys(%dep2tag)) {
+ for my $dep (sort(keys(%dep2tag))) {
print_deps($dep, $p->{$dep});
}
if ($cert_subpackage && $p->{is_kmp}) {
@@ -273,7 +274,7 @@
print SPEC "\%description -n $p->{name}\n";
print SPEC quote($p->{description}) . "\n\n";
- for my $script (keys(%script2tag)) {
+ for my $script (sort(keys(%script2tag))) {
next unless $p->{$script};
print SPEC "\%$script -p $p->{$script}{interp} -n $p->{name}";
print_script("$script-$p->{name}", $p->{$script});
@@ -343,6 +344,18 @@
ghost => (1 << 6),
);
+my %verifyflags = (
+ filedigest=> (1 << 0),
+ size => (1 << 1),
+ link => (1 << 2),
+ user => (1 << 3),
+ group => (1 << 4),
+ mtime => (1 << 5),
+ mode => (1 << 6),
+ rdev => (1 << 7),
+ caps => (1 << 8),
+);
+
sub print_files {
my $files = shift;
@@ -385,6 +398,15 @@
# perl core does not provide lutimes()/utimensat()
system("touch", "-h", "-d\@$f->{mtime}", $path);
}
+ my $verify_attrs = "";
+ for my $flag (sort(keys(%verifyflags))) {
+ if (!($f->{verify} & $verifyflags{$flag})) {
+ $verify_attrs .= "$flag ";
+ }
+ }
+ if ($verify_attrs) {
+ $attrs .= "%verify(not $verify_attrs) ";
+ }
print SPEC "$attrs " . quote($f->{name}) . "\n";
if (-e "$path.sig") {
@@ -412,7 +434,7 @@
my ($main_name, $main_ver, $main_rel, $nosrc) = ($1, $2, $3, $4);
if (!exists($packages{$main_name})) {
# create an empty main package
- my $first = (values(%packages))[0];
+ my $first = (sort(keys(%packages)))[0];
$packages{$main_name} = {
name => $main_name,
version => $main_ver,
@@ -420,7 +442,7 @@
};
for my $tag (qw(description changelog arch), @simple_tags) {
next if $packages{$main_name}->{$tag};
- $packages{$main_name}->{$tag} = $first->{$tag};
+ $packages{$main_name}->{$tag} = $packages{$first}->{$tag};
}
}
$packages{$main_name}->{nosource} = $nosrc ? 1 : 0;
@@ -440,9 +462,9 @@
open(SPEC, '>', "$output/repackage.spec") or die "$output/repackage.spec:
$!\n";
print_package($packages{$main_name}, 1);
-for my $p (values(%packages)) {
- next if $p->{name} eq $main_name;
- print_package($p, 0);
+for my $name (sort(keys(%packages))) {
+ next if $name eq $main_name;
+ print_package($packages{$name}, 0);
}
if ($cert_subpackage) {
my $certdir = "/etc/uefi/certs";
--
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]