[Libosinfo] [PATCH] fedora: Adjust initrd/kernel paths to real file

Lasse Schuirmann lasse.schuirmann at gmail.com
Thu May 29 17:44:57 UTC 2014


2014-05-29 19:37 GMT+02:00 Zeeshan Ali (Khattak) <zeeshanak at gnome.org>:
> On Thu, May 29, 2014 at 4:44 PM, Lasse Schuirmann
> <lasse.schuirmann at gmail.com> wrote:
>> This makes archive handling a bit easier for people using libarchive
>> since they don't need to support hardlinks in archives which is
>> complicated. (E.g. gnomes file-roller and KDEs Ark do not support
>> hardlinks, there are probably more implementations that don't.)
>
> Looks good otherwise. Two comments below:
>
>> (Note that the file bodies lie on different locations in the
>> 32bit/64bit isos. I have checked both isos, this is intentionally.)
>
> Didn't quite understand that.
>
>> >From 5d4d60aa9d1981ac9b1896228df7fe57cd54559f Mon Sep 17 00:00:00 2001
>> From: Lasse Schuirmann <lasse.schuirmann at gmail.com>
>> Date: Thu, 29 May 2014 17:31:48 +0200
>> Subject: [PATCH] fedora: Adjust initrd/kernel paths to real file
>>
>> The new paths point to the archive entries containing also the body of
>> the file. The other entries are just hardlinks.
>> ---
>>  data/oses/fedora.xml.in | 6 +++---
>>  1 file changed, 3 insertions(+), 3 deletions(-)
>>
>> diff --git a/data/oses/fedora.xml.in b/data/oses/fedora.xml.in
>> index 27cdd4a..f33fdb0 100644
>> --- a/data/oses/fedora.xml.in
>> +++ b/data/oses/fedora.xml.in
>> @@ -1469,8 +1469,8 @@
>>          <volume-id>Fedora 20.* i386</volume-id>
>>          <system-id>LINUX</system-id>
>>        </iso>
>> -      <kernel>isolinux/vmlinuz</kernel>
>> -      <initrd>isolinux/initrd.img</initrd>
>> +      <kernel>images/pxeboot/vmlinuz</kernel>
>> +      <initrd>images/pxeboot/initrd.img</initrd>
>>      </media>
>>      <media arch="x86_64">
>>        <url>http://download.fedoraproject.org/pub/fedora/linux/releases/20/Fedora/x86_64/iso/Fedora-20-x86_64-DVD.iso</url>
>> @@ -1479,7 +1479,7 @@
>>          <system-id>LINUX</system-id>
>>        </iso>
>>        <kernel>isolinux/vmlinuz</kernel>
>
> Forgot this one?
No, this is what you didn't understand above.

Let me rephrase:

The kernel paths are intentionally different in the two isos.

If you look in the isos, you'll see that in the 32 bit iso:
- isolinux/vmlinuz is a hardlink to images/pxeboot/vmlinux
- isolinux/initrd.img is a hardlink to images/pxeboot/initrd.img

In the 64 bit iso:
- /images/pxeboot/vmlinux is a hardlink to isolinux/vmlinuz
- isolinux/initrd.img is a hardlink to images/pxeboot/initrd.img

What is the hardlink and what is the "real file" is determined during
the compression process nondeterministically. (To be exact the first
occurrence will be the "real" file [entry + body] and the following
will be only the entries without body in this archive format IIRC.)
That is the reason while the paths of the 32 bit iso and the 64 bit
iso differ.


>> -      <initrd>isolinux/initrd.img</initrd>
>> +      <initrd>images/pxeboot/initrd.img</initrd>
>>      </media>
>
>
> --
> Regards,
>
> Zeeshan Ali (Khattak)
> ________________________________________
> Befriend GNOME: http://www.gnome.org/friends/




More information about the Libosinfo mailing list