[Libosinfo] [PATCH] Add Slackware metadata

Matteo Bernardini matteo.bernardini at gmail.com
Thu Sep 11 18:10:15 UTC 2014


2014-09-11 19:19 GMT+02:00 Christophe Fergeau <cfergeau at redhat.com>:
> Hey,
>
> Thanks a lot for all this data! A few comments below

thanks to you for reviewing it!

>
> On Thu, Sep 11, 2014 at 05:58:25PM +0200, ponce wrote:
>> From: Matteo Bernardini <ponce at slackbuilds.org>
>>
>> Signed-off-by: Matteo Bernardini <ponce at slackbuilds.org>
>> Reviewed-by: Robby Workman <rworkman at slackware.com>
>> ---
>>  data/oses/Makefile.am                              |   1 +
>>  data/oses/slackware.xml.in                         | 166 +++++++++++++++++++++
>>  po/POTFILES.in                                     |   1 +
>>  .../slackware-13.0-install-dvd.iso.txt             |  33 ++++
>>  .../slackware64-13.0-install-dvd.iso.txt           |  33 ++++
>>  .../slackware-13.1-install-dvd.iso.txt             |  33 ++++
>>  .../slackware64-13.1-install-dvd.iso.txt           |  33 ++++
>>  .../slackware-13.37-install-dvd.iso.txt            |  33 ++++
>>  .../slackware64-13.37-install-dvd.iso.txt          |  33 ++++
>>  .../slackware-14.0-install-dvd.iso.txt             |  33 ++++
>>  .../slackware64-14.0-install-dvd.iso.txt           |  33 ++++
>>  .../slackware-14.1-install-dvd.iso.txt             |  33 ++++
>>  .../slackware64-14.1-install-dvd.iso.txt           |  33 ++++
>>  test/test-isodetect.c                              |   7 +
>>  14 files changed, 505 insertions(+)
>>  create mode 100644 data/oses/slackware.xml.in
>>  create mode 100644 test/isodata/slackware/slackware13.0/slackware-13.0-install-dvd.iso.txt
>>  create mode 100644 test/isodata/slackware/slackware13.0/slackware64-13.0-install-dvd.iso.txt
>>  create mode 100644 test/isodata/slackware/slackware13.1/slackware-13.1-install-dvd.iso.txt
>>  create mode 100644 test/isodata/slackware/slackware13.1/slackware64-13.1-install-dvd.iso.txt
>>  create mode 100644 test/isodata/slackware/slackware13.37/slackware-13.37-install-dvd.iso.txt
>>  create mode 100644 test/isodata/slackware/slackware13.37/slackware64-13.37-install-dvd.iso.txt
>>  create mode 100644 test/isodata/slackware/slackware14.0/slackware-14.0-install-dvd.iso.txt
>>  create mode 100644 test/isodata/slackware/slackware14.0/slackware64-14.0-install-dvd.iso.txt
>>  create mode 100644 test/isodata/slackware/slackware14.1/slackware-14.1-install-dvd.iso.txt
>>  create mode 100644 test/isodata/slackware/slackware14.1/slackware64-14.1-install-dvd.iso.txt
>>
>> diff --git a/data/oses/Makefile.am b/data/oses/Makefile.am
>> index e1fb6fb..35769e2 100644
>> --- a/data/oses/Makefile.am
>> +++ b/data/oses/Makefile.am
>> @@ -18,6 +18,7 @@ database_in_files = \
>>       opensuse.xml.in \
>>       rhl.xml.in      \
>>       rhel.xml.in     \
>> +     slackware.xml.in \
>>       solaris.xml.in  \
>>       suse.xml.in     \
>>       ubuntu.xml.in   \
>> diff --git a/data/oses/slackware.xml.in b/data/oses/slackware.xml.in
>> new file mode 100644
>> index 0000000..645d390
>> --- /dev/null
>> +++ b/data/oses/slackware.xml.in
>> @@ -0,0 +1,166 @@
>> +<libosinfo version="0.0.1">
>> +
>> +  <os id="http://mirrors.slackware.com/slackware/slackware-13.0">
>> +    <short-id>slackware13.0</short-id>
>> +    <_name>Slackware 13.0</_name>
>> +    <version>13.0</version>
>> +    <_vendor>Slackware</_vendor>
>> +    <family>linux</family>
>> +    <distro>slackware</distro>
>> +    <release-date>2009-08-26</release-date>
>> +
>> +    <media arch="i486">
>
> i486 does not exist in data/schemas/libosinfo.rng which causes
> test-xml-validate to fail (when running make check).
> You could add the new value there, but I'm not sure how much existing
> code hardcodes the known values already. Slackware binaries are exactly
> i486 binaries ? They won't work on an i386 but an i686 is not required?

Yes, they are built with "-O2 -march=i486 -mtune=i686", so binaries
actually run fine on i486.
I think there should be no probs either in switching arch to i686 if
it's safer, also because the use cases for virtualizing i486 that I
can think of are very few... if someone complains it also can be
changed again later...
let me know the way you prefer.

>
>> +      <url>http://mirrors.slackware.com/slackware/slackware-iso/slackware-13.0-iso/slackware-13.0-install-dvd.iso</url>
>> +      <iso>
>> +        <volume-id>SlackDVD</volume-id>
>> +        <application-id>Slackware 13.0 DVD</application-id>
>> +        <publisher-id></publisher-id>
>> +      </iso>
>> +      <kernel>kernels/hugesmp.s/bzImage</kernel>
>> +      <initrd>isolinux/initrd.img</initrd>
>> +    </media>
>> +    <media arch="x86_64">
>> +      <url>http://mirrors.slackware.com/slackware/slackware-iso/slackware64-13.0-iso/slackware64-13.0-install-dvd.iso</url>
>> +      <iso>
>> +        <volume-id>SlackDVD</volume-id>
>> +        <application-id>Slackware 13.0 DVD</application-id>
>> +        <publisher-id></publisher-id>
>> +      </iso>
>> +      <kernel>kernels/huge.s/bzImage</kernel>
>> +      <initrd>isolinux/initrd.img</initrd>
>> +    </media>
>> +  </os>
>> +
>> +  <os id="http://mirrors.slackware.com/slackware/slackware-13.1">
>> +    <short-id>slackware13.1</short-id>
>> +    <_name>Slackware 13.1</_name>
>> +    <version>13.1</version>
>> +    <_vendor>Slackware</_vendor>
>> +    <family>linux</family>
>> +    <distro>slackware</distro>
>> +    <upgrades id="http://mirrors.slackware.com/slackware/slackware-13.0"/>
>> +    <derives-from id="http://mirrors.slackware.com/slackware/slackware-13.0"/>
>> +    <release-date>2010-05-19</release-date>
>> +
>> +    <media arch="i486">
>> +      <url>http://mirrors.slackware.com/slackware/slackware-iso/slackware-13.1-iso/slackware-13.1-install-dvd.iso</url>
>> +      <iso>
>> +        <volume-id>SlackDVD</volume-id>
>> +        <application-id>Slackware 13.1 DVD</application-id>
>> +        <publisher-id></publisher-id>
>> +      </iso>
>> +      <kernel>kernels/hugesmp.s/bzImage</kernel>
>> +      <initrd>isolinux/initrd.img</initrd>
>> +    </media>
>> +    <media arch="x86_64">
>> +      <url>http://mirrors.slackware.com/slackware/slackware-iso/slackware64-13.1-iso/slackware64-13.1-install-dvd.iso</url>
>> +      <iso>
>> +        <volume-id>SlackDVD</volume-id>
>> +        <application-id>Slackware 13.1 DVD</application-id>
>
> All the 64 bit images starting with 13.1 seem to be using Slackware64
> here. This is good as otherwise libosinfo would not be able to tell the
> difference between a 32 or 64 bit image.

Yes, my bad: I'll change the xml accordingly...
Just to let you know the logic behind the patch, I added versions from
13.0-onward as they are the ones still supported (there's no defined
eol_date): what do you think it's better, to start from 13.1 or to add
another field to the xml to let it recognize the arch (a suggestion of
the field to use would be appreciated ;) )?

>
> I would also add some information about the supported virtio devices,
> but this can be added later.

Ok, I'll have a look.
To explain, it's just that I was adding libosinfo to slackbuilds.org
(Slackware's third party repository of build scripts) as a dependency
of the newer virt-manager and I tried to do something to let it
support also Slackware itself (with some debugging help from Robby
Workman and Willy Sudiarto Raharjo)...
Then I thought that maybe this stuff could have been useful also upstream...

Any hint to enhance slackware support is obviously welcome! :)

> The patches should be good to go once make check passes :)

fine!

Matteo Bernardini




More information about the Libosinfo mailing list