Hello community,
here is the log from the commit of package mksusecd for openSUSE:Factory checked in at 2018-11-30 16:32:20
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/mksusecd (Old)
and /work/SRC/openSUSE:Factory/.mksusecd.new.19453 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mksusecd"
Fri Nov 30 16:32:20 2018 rev:55 rq:652626 version:1.67
Changes:
--------
--- /work/SRC/openSUSE:Factory/mksusecd/mksusecd.changes 2018-11-18 23:31:14.861549463 +0100
+++ /work/SRC/openSUSE:Factory/.mksusecd.new.19453/mksusecd.changes 2018-11-30 16:32:25.721359796 +0100
@@ -0,0 +1,12 @@
+-------------------------------------------------------------------
+Tue Nov 29 07:10:57 UTC 2018 - Jan Engelhardt
+
+- Use noun phrase in summary.
+
+--------------------------------------------------------------------
+Tue Nov 27 15:07:05 UTC 2018 - snwint@suse.de
+
+- merge gh#openSUSE/mksusecd#40
+- support aarch64 media
+- 1.67
+
Old:
----
mksusecd-1.66.tar.xz
New:
----
mksusecd-1.67.tar.xz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ mksusecd.spec ++++++
--- /var/tmp/diff_new_pack.ByY3UP/_old 2018-11-30 16:32:26.149359234 +0100
+++ /var/tmp/diff_new_pack.ByY3UP/_new 2018-11-30 16:32:26.149359234 +0100
@@ -18,9 +18,9 @@
Name: mksusecd
-Version: 1.66
+Version: 1.67
Release: 0
-Summary: Create SUSE Linux installation ISOs
+Summary: Tool to create SUSE Linux installation ISOs
License: GPL-3.0+
Group: Hardware/Other
Url: https://github.com/wfeldt/mksusecd
++++++ mksusecd-1.66.tar.xz -> mksusecd-1.67.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mksusecd-1.66/VERSION new/mksusecd-1.67/VERSION
--- old/mksusecd-1.66/VERSION 2018-11-15 16:30:07.000000000 +0100
+++ new/mksusecd-1.67/VERSION 2018-11-27 16:07:05.000000000 +0100
@@ -1 +1 @@
-1.66
+1.67
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mksusecd-1.66/changelog new/mksusecd-1.67/changelog
--- old/mksusecd-1.66/changelog 2018-11-15 16:30:07.000000000 +0100
+++ new/mksusecd-1.67/changelog 2018-11-27 16:07:05.000000000 +0100
@@ -1,3 +1,7 @@
+2018-11-27: 1.67
+ - merge gh#openSUSE/mksusecd#40
+ - support aarch64 media
+
2018-11-15: 1.66
- merge gh#openSUSE/mksusecd#39
- add HOWTO describing some typical uses
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mksusecd-1.66/isohybrid.c new/mksusecd-1.67/isohybrid.c
--- old/mksusecd-1.66/isohybrid.c 2018-11-15 16:30:07.000000000 +0100
+++ new/mksusecd-1.67/isohybrid.c 2018-11-27 16:07:05.000000000 +0100
@@ -46,7 +46,7 @@
uuid_t disk_uuid, part_uuid, iso_uuid;
uint8_t mode = 0;
-enum { VERBOSE = 1 , EFI = 2 , MAC = 4 , MODE_GPT = 8 , MODE_MBR = 0x10 };
+enum { VERBOSE = 1 , EFI = 2 , MAC = 4 , MODE_GPT = 8 , MODE_MBR = 0x10 , LEGACY = 0x20 };
/* partition numbers (1 based) */
int part_data = 0;
@@ -254,6 +254,8 @@
printf(FMT, " --no-code", "Don't include MBR boot code");
printf(FMT, " --no-chs", "Don't fill in CHS values, use 0xffffff instead");
printf(FMT, " --size", "Specify disk size to assume when writing MBR (in 512 byte units)");
+ printf(FMT, " --legacy", "Expect an El Torito boot record (default)");
+ printf(FMT, " --no-legacy", "Do not expect an El Torito boot record");
printf("\n");
printf(FMT, " --forcehd0", "Assume we are loaded as disk ID 0");
@@ -289,6 +291,8 @@
{ "no-mbr", no_argument, NULL, 1003 },
{ "no-code", no_argument, NULL, 1004 },
{ "no-chs", no_argument, NULL, 1005 },
+ { "legacy", no_argument, NULL, 1007 },
+ { "no-legacy", no_argument, NULL, 1008 },
{ "forcehd0", no_argument, NULL, 'f' },
{ "ctrlhd0", no_argument, NULL, 'c' },
@@ -303,7 +307,8 @@
{ 0, 0, 0, 0 }
};
- opterr = mode = 0;
+ opterr = 0;
+ mode = LEGACY;
while ((n = getopt_long_only(argc, argv, optstr, lopt, &ind)) != -1)
{
switch (n)
@@ -394,6 +399,14 @@
errx(1, "invalid size: `%s'", optarg);
break;
+ case 1007:
+ mode |= LEGACY;
+ break;
+
+ case 1008:
+ mode &= ~LEGACY;
+ break;
+
case 'V':
printf("%s version %s\n", prog, VERSION);
exit(0);
@@ -522,9 +535,9 @@
cs += ve[i];
if (mode & VERBOSE)
- printf("ve[%d]: %d, cs: %d\n", i, ve[i], cs);
+ printf("ve[%d]: 0x%x, cs: 0x%x\n", i, ve[i], cs);
}
- if ((ve[0] != 0x0001) || (ve[15] != 0xAA55) || (cs & 0xFFFF))
+ if (((ve[0] & 0xff) != 0x01) || (ve[15] != 0xAA55) || (cs & 0xFFFF))
return 1;
return 0;
@@ -557,7 +570,7 @@
buf += 2;
if (de_boot != 0x88 || de_media != 0
- || (de_seg != 0 && de_seg != 0x7C0) || de_count != 4)
+ || (de_seg != 0 && de_seg != 0x7C0))
return 1;
return 0;
@@ -1031,17 +1044,20 @@
if (fread(buf, sizeof(char), BUFSIZE, fp) != BUFSIZE)
err(1, "%s", argv[0]);
- if (check_catalogue(buf))
- errx(1, "%s: invalid boot catalogue", argv[0]);
+ if(mode & LEGACY)
+ {
+ if (check_catalogue(buf))
+ errx(1, "%s: invalid boot catalogue", argv[0]);
- buf += sizeof(ve);
- if (read_catalogue(buf))
- errx(1, "%s: unexpected boot catalogue parameters", argv[0]);
+ buf += sizeof(ve);
+ if (read_catalogue(buf))
+ errx(1, "%s: unexpected boot catalogue parameters", argv[0]);
- if (mode & VERBOSE)
- display_catalogue();
+ if (mode & VERBOSE)
+ display_catalogue();
- buf += 32;
+ buf += 32;
+ }
if (mode & EFI)
{
@@ -1098,10 +1114,13 @@
if (fread(buf, sizeof(char), 4, fp) != 4)
err(1, "%s", argv[0]);
- if (memcmp(buf, "\xFB\xC0\x78\x70", 4))
- errx(1, "%s: boot loader does not have an isolinux.bin hybrid " \
- "signature. Note that isolinux-debug.bin does not support " \
- "hybrid booting", argv[0]);
+ if(mode & LEGACY)
+ {
+ if (memcmp(buf, "\xFB\xC0\x78\x70", 4))
+ warnx("%s: boot loader does not have an isolinux.bin hybrid " \
+ "signature. Note that isolinux-debug.bin does not support " \
+ "hybrid booting", argv[0]);
+ }
no_cat:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mksusecd-1.66/mksusecd new/mksusecd-1.67/mksusecd
--- old/mksusecd-1.66/mksusecd 2018-11-15 16:30:07.000000000 +0100
+++ new/mksusecd-1.67/mksusecd 2018-11-27 16:07:05.000000000 +0100
@@ -341,7 +341,7 @@
die "no password\n" if $opt_crypto && $opt_crypto_password eq "";
-$ENV{PATH} = "$LIBEXECDIR/mksusecd:/usr/bin:/bin:/usr/sbin:/sbin";
+$ENV{PATH} = "/usr/bin:/bin:/usr/sbin:/sbin";
if($opt_rebuild_initrd && $>) {
die "mksusecd must be run with root permissions when --rebuild-initrd is used\n"
@@ -392,6 +392,7 @@
my $orig_initrd;
my $initrd_has_parts;
my $has_efi = 0;
+my $has_el_torito = 0;
my $sign_key_pub;
my $sign_key_dir;
my $initrd_installkeys;
@@ -1312,6 +1313,7 @@
my $t = (keys %$_)[0];
if($t eq 'eltorito') {
+ $has_el_torito = 1;
copy_file "$_->{$t}{base}/$_->{$t}{file}";
push @{$mkisofs->{sort}}, "$tmp_new/$_->{$t}{base}/boot.catalog 4";
# push @{$mkisofs->{sort}}, fname("$_->{$t}{base}/$_->{$t}{file}") . " 3";
@@ -1547,6 +1549,13 @@
substr($boot_catalog, 32 * 1, 32) = $entry[0];
+ if(!$has_el_torito && $has_efi) {
+ # change platform id (1 byte at offset 1) from 0x0 to 0xef (EFI)...
+ substr($boot_catalog, 1, 1) = "\xef";
+ # ... and adjust header checksum (16 bits at offset 0x1c)
+ substr($boot_catalog, 0x1c, 2) = pack("v", unpack("v", substr($boot_catalog, 0x1c, 2)) - 0xef00);
+ }
+
for (my $i = 1; $i < $entries; $i++) {
my $section_head = pack "CCva28", $i == $entries - 1 ? 0x91 : 0x90, 0xef, 1, "";
substr($boot_catalog, 32 * (2 * $i), 32) = $section_head;
@@ -1679,6 +1688,7 @@
}
$opt .= " --uefi" if $has_efi;
+ $opt .= " --no-legacy" if !$has_el_torito;
$opt .= " --gpt" if $opt_hybrid_gpt;
$opt .= " --mbr" if $opt_hybrid_mbr;
$opt .= " --no-mbr" if $opt_no_prot_mbr;
@@ -1688,7 +1698,7 @@
$opt .= " --offset $mkisofs->{partition_start}" if $mkisofs->{partition_start};
$opt .= " --size $image_size" if $image_size;
- my $cmd = "isohybrid $opt '$iso_file'";
+ my $cmd = "$LIBEXECDIR/mksusecd/isohybrid $opt '$iso_file'";
print "running:\n$cmd\n" if $opt_verbose >= 1;