commit mksusecd for openSUSE:Factory
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 <jengelh@inai.de> + +- 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;
participants (1)
-
root