MozillaFirefox/mozilla-get-app-id
Wolfgang Rosenauer f61f955454 - Mozilla Firefox 134.0.1
* Fixed UI hangs happening on YouTube and Google Docs in some situations
    (bmo#1939295)
  * Fixed a startup crash affecting some users upgrading from Firefox 133
    (bmo#1941134)
  * Fixed an issue where search engines selection menus and context
    menus could be broken if a user had previously reverted to an
    earlier version (bmo#1940533)
- raised required rust version to 1.81

OBS-URL: https://build.opensuse.org/package/show/mozilla:Factory/MozillaFirefox?expand=0&rev=1197
2025-01-17 12:57:47 +00:00

52 lines
1.1 KiB
Perl

#!/usr/bin/perl -w
use XML::Simple;
my $file = shift || die "Usage: $0 [install.rdf|somefile.xpi]\n";
my $xml;
if ($file =~ /\.xpi$/) {
use Archive::Zip qw/:ERROR_CODES :CONSTANTS/;
my $zip = Archive::Zip->new();
if ( $zip->read($file) != AZ_OK ) {
die "zip file read error\n";
}
my $data = $zip->contents("install.rdf");
die "missing install.rdf in $file\n" unless $data;
$xml = XMLin($data) || die "$!\n";
} elsif ($file =~ /install.rdf/) {
$xml = XMLin($file) || die "$!\n";
} else {
die "unsupported file format\n";
}
my $desc;
for my $tag (qw/RDF:Description Description/) {
if (exists $xml->{$tag}) {
if (ref $xml->{$tag} eq 'ARRAY') {
$desc = $xml->{$tag};
} else {
$desc = [ $xml->{$tag} ];
}
}
}
my $uuid;
my $id;
for my $x (@$desc) {
if ($x->{"em:id"} =~ /{[[:xdigit:]]+-/) {
print STDERR "Warning: multiple uuids!\n" if defined $uuid;
$uuid = $x->{"em:id"};
} elsif ($x->{"em:id"} =~ /@/) {
print STDERR "Warning: multiple ids!\n" if defined $id;
$id = $x->{"em:id"};
}
}
if (defined $id) {
print "$id\n";
} elsif (defined $uuid) {
print "$uuid\n";
} else {
exit 1;
}