From 3344698027a29a69aeedf0178a653908dfeddc37 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Luis=20Guzm=C3=A1n?= <ark@switnet.org>
Date: Mon, 22 May 2023 06:45:34 +0000
Subject: [PATCH] osinfo-db: remove list of non-free distros.

---
 .../osinfo-db/01_fix_t9_broken_links.patch    |  52 ++++
 .../DATA/osinfo-db/guix_1.3-e75ed5cd.patch    | 150 -----------
 .../DATA/osinfo-db/guix_base-9bb849fe.patch   | 148 -----------
 .../osinfo-db/hyperbola_03-a77800ad.patch     | 160 ------------
 .../DATA/osinfo-db/pure-os_8-3570a396.patch   |  58 -----
 helpers/DATA/osinfo-db/recommended-distros    |   9 +
 .../DATA/osinfo-db/trisquel9-e43f4830.patch   | 245 ------------------
 helpers/make-osinfo-db                        |  69 ++++-
 8 files changed, 127 insertions(+), 764 deletions(-)
 create mode 100644 helpers/DATA/osinfo-db/01_fix_t9_broken_links.patch
 delete mode 100644 helpers/DATA/osinfo-db/guix_1.3-e75ed5cd.patch
 delete mode 100644 helpers/DATA/osinfo-db/guix_base-9bb849fe.patch
 delete mode 100644 helpers/DATA/osinfo-db/hyperbola_03-a77800ad.patch
 delete mode 100644 helpers/DATA/osinfo-db/pure-os_8-3570a396.patch
 create mode 100644 helpers/DATA/osinfo-db/recommended-distros
 delete mode 100644 helpers/DATA/osinfo-db/trisquel9-e43f4830.patch

diff --git a/helpers/DATA/osinfo-db/01_fix_t9_broken_links.patch b/helpers/DATA/osinfo-db/01_fix_t9_broken_links.patch
new file mode 100644
index 00000000..75a17320
--- /dev/null
+++ b/helpers/DATA/osinfo-db/01_fix_t9_broken_links.patch
@@ -0,0 +1,52 @@
+From 99dc628f9a606921968d8433facf3ded0461384f Mon Sep 17 00:00:00 2001
+From: Victor Toso <victortoso@redhat.com>
+Date: Mon, 3 Apr 2023 15:05:36 +0200
+Subject: [PATCH] trisquel9: fix broken links
+
+Trisquel already released versions 10 and 11 and has removed from its
+site the iso images. Remove the urls from the database.
+
+Signed-off-by: Victor Toso <victortoso@redhat.com>
+---
+ data/os/trisquel.info/trisquel-9.xml.in | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/data/os/trisquel.info/trisquel-9.xml.in b/data/os/trisquel.info/trisquel-9.xml.in
+index 9ff6f1a5e..ba94fad9d 100644
+--- a/data/os/trisquel.info/trisquel-9.xml.in
++++ b/data/os/trisquel.info/trisquel-9.xml.in
+@@ -28,7 +28,6 @@
+     <!-- x86_64 -->
+     <media arch="x86_64" live="true" installer-script="false">
+       <variant id="trisquel"/>
+-      <url>https://cdimage.trisquel.info/trisquel-images/trisquel_9.0.2_amd64.iso</url>
+       <iso>
+         <volume-id>trisquel 9.0.(\d) amd64.*</volume-id>
+       </iso>
+@@ -37,7 +36,6 @@
+     </media>
+     <media arch="x86_64" live="true" installer-script="false">
+       <variant id="mini"/>
+-      <url>https://cdimage.trisquel.info/trisquel-images/trisquel-mini_9.0.2_amd64.iso</url>
+       <iso>
+         <volume-id>trisquel-mini 9.0.(\d) amd64.*</volume-id>
+       </iso>
+@@ -46,7 +44,6 @@
+     </media>
+     <media arch="x86_64" live="true" installer-script="false">
+       <variant id="sugar-toast"/>
+-      <url>https://cdimage.trisquel.info/trisquel-images/trisquel-sugar_9.0.2_amd64.iso</url>
+       <iso>
+         <volume-id>trisquel-sugar 9.0.(\d) amd64.*</volume-id>
+       </iso>
+@@ -55,7 +52,6 @@
+     </media>
+     <media arch="x86_64" live="true" installer-script="false">
+       <variant id="triskel"/>
+-      <url>https://cdimage.trisquel.info/trisquel-images/triskel_9.0.2_amd64.iso</url>
+       <iso>
+         <volume-id>triskel 9.0.(\d) amd64.*</volume-id>
+       </iso>
+-- 
+GitLab
+
diff --git a/helpers/DATA/osinfo-db/guix_1.3-e75ed5cd.patch b/helpers/DATA/osinfo-db/guix_1.3-e75ed5cd.patch
deleted file mode 100644
index a57e6dcb..00000000
--- a/helpers/DATA/osinfo-db/guix_1.3-e75ed5cd.patch
+++ /dev/null
@@ -1,150 +0,0 @@
-From e75ed5cdfb18ba61366881589dabdcfa253fca78 Mon Sep 17 00:00:00 2001
-From: Mathieu Othacehe <othacehe@gnu.org>
-Date: Tue, 28 Sep 2021 16:45:52 +0000
-Subject: [PATCH] guix: Add 1.3 release.
-
-Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
----
- data/os/guix.gnu.org/guix-1.3.xml.in          | 48 +++++++++++++++++++
- ...ix-system-install-1.3.0.i686-linux.iso.txt | 33 +++++++++++++
- ...-system-install-1.3.0.x86_64-linux.iso.txt | 33 +++++++++++++
- 3 files changed, 114 insertions(+)
- create mode 100644 data/os/guix.gnu.org/guix-1.3.xml.in
- create mode 100644 tests/isodata/guix/guix-1.3/guix-system-install-1.3.0.i686-linux.iso.txt
- create mode 100644 tests/isodata/guix/guix-1.3/guix-system-install-1.3.0.x86_64-linux.iso.txt
-
-diff --git a/data/os/guix.gnu.org/guix-1.3.xml.in b/data/os/guix.gnu.org/guix-1.3.xml.in
-new file mode 100644
-index 00000000..c1e53850
---- /dev/null
-+++ b/data/os/guix.gnu.org/guix-1.3.xml.in
-@@ -0,0 +1,48 @@
-+<libosinfo version="0.0.1">
-+<!-- Licensed under the GNU General Public License version 2 or later.
-+     See http://www.gnu.org/licenses/ for a copy of the license text -->
-+  <os id="http://guix.gnu.org/guix/1.3">
-+    <short-id>guix-1.3</short-id>
-+    <name>Guix 1.3</name>
-+    <version>1.3</version>
-+    <vendor>Guix Contributors</vendor>
-+    <family>linux</family>
-+    <distro>guix</distro>
-+    <upgrades id="http://guix.gnu.org/guix/1.1"/>
-+    <derives-from id="http://guix.gnu.org/guix/1.1"/>
-+
-+    <release-date>2021-05-11</release-date>
-+
-+    <media arch="i686">
-+      <url>https://ftp.gnu.org/gnu/guix/guix-system-install-1.3.0.i686-linux.iso</url>
-+      <iso>
-+        <volume-id>GUIX_I686-LINUX_1.3.0</volume-id>
-+        <volume-size>636252160</volume-size>
-+      </iso>
-+      <kernel>gnu/store/506a8398hzkdqcm6y7r45fm0dvpaagks-linux-libre-5.4.31/bzImage</kernel>
-+      <initrd>gnu/store/f1gga79nhl5if3rmm9n793c6jmdkb0j9-raw-initrd/initrd.cpio.gz</initrd>
-+    </media>
-+    <media arch="x86_64">
-+      <url>https://ftp.gnu.org/gnu/guix/guix-system-install-1.3.0.x86_64-linux.iso</url>
-+      <iso>
-+        <volume-id>GUIX_X86_64-LINUX_1.3.0</volume-id>
-+        <volume-size>638605312</volume-size>
-+      </iso>
-+      <kernel>gnu/store/g56i8savnfr7981fil03idkjl0syj29d-linux-libre-5.4.31/bzImage</kernel>
-+      <initrd>gnu/store/33mpn6f0hy4m73m4isd5lg83qxwclld8-raw-initrd/initrd.cpio.gz</initrd>
-+    </media>
-+
-+
-+    <resources arch="all">
-+      <minimum>
-+        <ram>536870912</ram>
-+        <storage>4294967296</storage>
-+      </minimum>
-+
-+      <recommended>
-+        <ram>2147483648</ram>
-+        <storage>21474836480</storage>
-+      </recommended>
-+    </resources>
-+  </os>
-+</libosinfo>
-diff --git a/tests/isodata/guix/guix-1.3/guix-system-install-1.3.0.i686-linux.iso.txt b/tests/isodata/guix/guix-1.3/guix-system-install-1.3.0.i686-linux.iso.txt
-new file mode 100644
-index 00000000..1a5c24cd
---- /dev/null
-+++ b/tests/isodata/guix/guix-1.3/guix-system-install-1.3.0.i686-linux.iso.txt
-@@ -0,0 +1,33 @@
-+CD-ROM is in ISO 9660 format
-+System id: 
-+Volume id: GUIX_I686-LINUX_1.3.0
-+Volume set id: 
-+Publisher id: 
-+Data preparer id: XORRISO-1.5.2 2019.10.26.180001, LIBISOBURN-1.5.2, LIBISOFS-1.5.2, LIBBURN-1.5.2
-+Application id: 
-+Copyright File id: 
-+Abstract File id: 
-+Bibliographic File id: 
-+Volume set size is: 1
-+Volume set sequence number is: 1
-+Logical block size is: 2048
-+Volume size is: 310670
-+El Torito VD version 1 found, boot catalog is in sector 49266
-+NO Joliet present
-+
-+SUSP signatures version 1 found
-+Rock Ridge signatures version 1 found
-+Rock Ridge id 'RRIP_1991A'
-+Eltorito validation header:
-+    Hid 1
-+    Arch 0 (x86)
-+    ID ''
-+    Cksum AA 55 OK
-+    Key 55 AA
-+    Eltorito defaultboot header:
-+        Bootid 88 (bootable)
-+        Boot media 0 (No Emulation Boot)
-+        Load segment 0
-+        Sys type 0
-+        Nsect 4
-+        Bootoff C9C9 51657
-diff --git a/tests/isodata/guix/guix-1.3/guix-system-install-1.3.0.x86_64-linux.iso.txt b/tests/isodata/guix/guix-1.3/guix-system-install-1.3.0.x86_64-linux.iso.txt
-new file mode 100644
-index 00000000..f65ca7f3
---- /dev/null
-+++ b/tests/isodata/guix/guix-1.3/guix-system-install-1.3.0.x86_64-linux.iso.txt
-@@ -0,0 +1,33 @@
-+CD-ROM is in ISO 9660 format
-+System id: 
-+Volume id: GUIX_X86_64-LINUX_1.3.0
-+Volume set id: 
-+Publisher id: 
-+Data preparer id: XORRISO-1.5.2 2019.10.26.180001, LIBISOBURN-1.5.2, LIBISOFS-1.5.2, LIBBURN-1.5.2
-+Application id: 
-+Copyright File id: 
-+Abstract File id: 
-+Bibliographic File id: 
-+Volume set size is: 1
-+Volume set sequence number is: 1
-+Logical block size is: 2048
-+Volume size is: 311819
-+El Torito VD version 1 found, boot catalog is in sector 49075
-+NO Joliet present
-+
-+SUSP signatures version 1 found
-+Rock Ridge signatures version 1 found
-+Rock Ridge id 'RRIP_1991A'
-+Eltorito validation header:
-+    Hid 1
-+    Arch 0 (x86)
-+    ID ''
-+    Cksum AA 55 OK
-+    Key 55 AA
-+    Eltorito defaultboot header:
-+        Bootid 88 (bootable)
-+        Boot media 0 (No Emulation Boot)
-+        Load segment 0
-+        Sys type 0
-+        Nsect 4
-+        Bootoff C4F4 50420
--- 
-GitLab
-
diff --git a/helpers/DATA/osinfo-db/guix_base-9bb849fe.patch b/helpers/DATA/osinfo-db/guix_base-9bb849fe.patch
deleted file mode 100644
index 130dd2fc..00000000
--- a/helpers/DATA/osinfo-db/guix_base-9bb849fe.patch
+++ /dev/null
@@ -1,148 +0,0 @@
-From 9bb849fee4fd22d58a1e3d154c26272e1f642605 Mon Sep 17 00:00:00 2001
-From: Julien Lepiller <julien@lepiller.eu>
-Date: Sat, 29 Aug 2020 00:53:56 +0200
-Subject: [PATCH] guix: add distro
-
-Signed-off-by: Julien Lepiller <julien@lepiller.eu>
----
- data/os/guix.gnu.org/guix-1.1.xml.in          | 46 +++++++++++++++++++
- ...ix-system-install-1.1.0.i686-linux.iso.txt | 33 +++++++++++++
- ...-system-install-1.1.0.x86_64-linux.iso.txt | 33 +++++++++++++
- 3 files changed, 112 insertions(+)
- create mode 100644 data/os/guix.gnu.org/guix-1.1.xml.in
- create mode 100644 tests/isodata/guix/guix-1.1/guix-system-install-1.1.0.i686-linux.iso.txt
- create mode 100644 tests/isodata/guix/guix-1.1/guix-system-install-1.1.0.x86_64-linux.iso.txt
-
-diff --git a/data/os/guix.gnu.org/guix-1.1.xml.in b/data/os/guix.gnu.org/guix-1.1.xml.in
-new file mode 100644
-index 00000000..5533687e
---- /dev/null
-+++ b/data/os/guix.gnu.org/guix-1.1.xml.in
-@@ -0,0 +1,46 @@
-+<libosinfo version="0.0.1">
-+<!-- Licensed under the GNU General Public License version 2 or later.
-+     See http://www.gnu.org/licenses/ for a copy of the license text -->
-+  <os id="http://guix.gnu.org/guix/1.1">
-+    <short-id>guix-1.1</short-id>
-+    <name>Guix 1.1</name>
-+    <version>1.1</version>
-+    <vendor>Guix Contributors</vendor>
-+    <family>linux</family>
-+    <distro>guix</distro>
-+
-+    <release-date>2020-04-15</release-date>
-+
-+    <media arch="i686">
-+      <!--<url>https://ftp.gnu.org/gnu/guix/guix-system-install-1.1.0.i686-linux.iso.xz</url>-->
-+      <iso>
-+        <volume-id>GUIX_IMAGE</volume-id>
-+        <volume-size>584865792</volume-size>
-+      </iso>
-+      <kernel>gnu/store/506a8398hzkdqcm6y7r45fm0dvpaagks-linux-libre-5.4.31/bzImage</kernel>
-+      <initrd>gnu/store/f1gga79nhl5if3rmm9n793c6jmdkb0j9-raw-initrd/initrd.cpio.gz</initrd>
-+    </media>
-+    <media arch="x86_64">
-+      <!--<url>https://ftp.gnu.org/gnu/guix/guix-system-install-1.1.0.x86_64-linux.iso.xz</url>-->
-+      <iso>
-+        <volume-id>GUIX_IMAGE</volume-id>
-+        <volume-size>586209280</volume-size>
-+      </iso>
-+      <kernel>gnu/store/g56i8savnfr7981fil03idkjl0syj29d-linux-libre-5.4.31/bzImage</kernel>
-+      <initrd>gnu/store/33mpn6f0hy4m73m4isd5lg83qxwclld8-raw-initrd/initrd.cpio.gz</initrd>
-+    </media>
-+
-+
-+    <resources arch="all">
-+      <minimum>
-+        <ram>536870912</ram>
-+        <storage>4294967296</storage>
-+      </minimum>
-+
-+      <recommended>
-+        <ram>2147483648</ram>
-+        <storage>21474836480</storage>
-+      </recommended>
-+    </resources>
-+  </os>
-+</libosinfo>
-diff --git a/tests/isodata/guix/guix-1.1/guix-system-install-1.1.0.i686-linux.iso.txt b/tests/isodata/guix/guix-1.1/guix-system-install-1.1.0.i686-linux.iso.txt
-new file mode 100644
-index 00000000..2bda2615
---- /dev/null
-+++ b/tests/isodata/guix/guix-1.1/guix-system-install-1.1.0.i686-linux.iso.txt
-@@ -0,0 +1,33 @@
-+CD-ROM is in ISO 9660 format
-+System id: 
-+Volume id: GUIX_IMAGE
-+Volume set id: 
-+Publisher id: 
-+Data preparer id: XORRISO-1.5.2 2019.10.26.180001, LIBISOBURN-1.5.2, LIBISOFS-1.5.2, LIBBURN-1.5.2
-+Application id: 
-+Copyright File id: 
-+Abstract File id: 
-+Bibliographic File id: 
-+Volume set size is: 1
-+Volume set sequence number is: 1
-+Logical block size is: 2048
-+Volume size is: 285579
-+El Torito VD version 1 found, boot catalog is in sector 49266
-+NO Joliet present
-+
-+SUSP signatures version 1 found
-+Rock Ridge signatures version 1 found
-+Rock Ridge id 'RRIP_1991A'
-+Eltorito validation header:
-+    Hid 1
-+    Arch 0 (x86)
-+    ID ''
-+    Cksum AA 55 OK
-+    Key 55 AA
-+    Eltorito defaultboot header:
-+        Bootid 88 (bootable)
-+        Boot media 0 (No Emulation Boot)
-+        Load segment 0
-+        Sys type 0
-+        Nsect 4
-+        Bootoff C9C9 51657
-diff --git a/tests/isodata/guix/guix-1.1/guix-system-install-1.1.0.x86_64-linux.iso.txt b/tests/isodata/guix/guix-1.1/guix-system-install-1.1.0.x86_64-linux.iso.txt
-new file mode 100644
-index 00000000..840368b3
---- /dev/null
-+++ b/tests/isodata/guix/guix-1.1/guix-system-install-1.1.0.x86_64-linux.iso.txt
-@@ -0,0 +1,33 @@
-+CD-ROM is in ISO 9660 format
-+System id: 
-+Volume id: GUIX_IMAGE
-+Volume set id: 
-+Publisher id: 
-+Data preparer id: XORRISO-1.5.2 2019.10.26.180001, LIBISOBURN-1.5.2, LIBISOFS-1.5.2, LIBBURN-1.5.2
-+Application id: 
-+Copyright File id: 
-+Abstract File id: 
-+Bibliographic File id: 
-+Volume set size is: 1
-+Volume set sequence number is: 1
-+Logical block size is: 2048
-+Volume size is: 286235
-+El Torito VD version 1 found, boot catalog is in sector 49075
-+NO Joliet present
-+
-+SUSP signatures version 1 found
-+Rock Ridge signatures version 1 found
-+Rock Ridge id 'RRIP_1991A'
-+Eltorito validation header:
-+    Hid 1
-+    Arch 0 (x86)
-+    ID ''
-+    Cksum AA 55 OK
-+    Key 55 AA
-+    Eltorito defaultboot header:
-+        Bootid 88 (bootable)
-+        Boot media 0 (No Emulation Boot)
-+        Load segment 0
-+        Sys type 0
-+        Nsect 4
-+        Bootoff C4F4 50420
--- 
-GitLab
-
diff --git a/helpers/DATA/osinfo-db/hyperbola_03-a77800ad.patch b/helpers/DATA/osinfo-db/hyperbola_03-a77800ad.patch
deleted file mode 100644
index 81d465c7..00000000
--- a/helpers/DATA/osinfo-db/hyperbola_03-a77800ad.patch
+++ /dev/null
@@ -1,160 +0,0 @@
-From a77800ad268fef69928a93e0e5083bab22fd6155 Mon Sep 17 00:00:00 2001
-From: Mercy Corder <myrcy@posteo.net>
-Date: Sun, 12 Dec 2021 21:48:08 +0000
-Subject: [PATCH] add Hyperbola
-
----
- data/os/hyperbola.info/hyperbola-03.xml.in    | 65 +++++++++++++++++++
- .../hyperbola-milky-way-v0.3.1-dual.iso.txt   | 30 +++++++++
- ...hypertalking-milky-way-v0.3.1-dual.iso.txt | 30 +++++++++
- 3 files changed, 125 insertions(+)
- create mode 100644 data/os/hyperbola.info/hyperbola-03.xml.in
- create mode 100644 tests/isodata/hyperbola/hyperbola-milky-way-v0.3.1-dual.iso.txt
- create mode 100644 tests/isodata/hyperbola/hypertalking-milky-way-v0.3.1-dual.iso.txt
-
-diff --git a/data/os/hyperbola.info/hyperbola-03.xml.in b/data/os/hyperbola.info/hyperbola-03.xml.in
-new file mode 100644
-index 00000000..893cda51
---- /dev/null
-+++ b/data/os/hyperbola.info/hyperbola-03.xml.in
-@@ -0,0 +1,65 @@
-+<?xml version="1.0"?>
-+<libosinfo version="0.0.1">
-+  <!-- Licensed under the GNU General Public License version 2 or later.
-+     See http://www.gnu.org/licenses/ for a copy of the license text -->
-+  <os id="http://hyperbola.info/hyperbola/03">
-+    <short-id>hyperbola03</short-id>
-+    <name>Hyperbola</name>
-+    <version>03</version>
-+    <vendor>Hyperbola Project</vendor>
-+    <family>linux</family>
-+    <distro>hyperbola</distro>
-+    <release-date>2019-09-23</release-date>
-+
-+    <variant id="hyperbola">
-+      <name>Hypebola 03</name>
-+    </variant>
-+    <variant id="talking">
-+      <name>Hypetalking 03</name>
-+    </variant>
-+
-+    <!-- x86_64 -->
-+    <media arch="x86_64" live="true" installer-script="false">
-+      <variant id="hyperbola"/>
-+      <url>https://repo.hyperbola.info:50000/other/live_images/gnu-plus-linux-libre/hyperbola-milky-way-v0.3.1/hyperbola-milky-way-v0.3.1-dual.iso</url>
-+      <iso>
-+        <volume-id>HYPER_v031.*</volume-id>
-+        <volume-size>691011584</volume-size>
-+      </iso>
-+      <kernel>hyperbola/boot/x86_64/vmlinuz</kernel>
-+      <initrd>hyperbola/boot/x86_64/hyperiso.img</initrd>
-+    </media>
-+    <media arch="x86_64" live="true" installer-script="false">
-+      <variant id="talking"/>
-+      <url>https://repo.hyperbola.info:50000/other/live_images/gnu-plus-linux-libre/hypertalking-milky-way-v0.3.1/hypertalking-milky-way-v0.3.1-dual.iso</url>
-+      <iso>
-+        <volume-id>HYPER_v031.*</volume-id>
-+        <volume-size>721420288</volume-size>
-+      </iso>
-+      <kernel>hyperbola/boot/x86_64/vmlinuz</kernel>
-+      <initrd>hyperbola/boot/x86_64/hyperiso.img</initrd>
-+    </media>
-+
-+    <resources arch="all">
-+      <minimum>
-+        <n-cpus>1</n-cpus>
-+        <cpu>1000000000</cpu>
-+        <ram>53687091</ram>
-+        <storage>1000000000</storage>
-+      </minimum>
-+      <recommended>
-+        <n-cpus>1</n-cpus>
-+        <cpu>1000000000</cpu>
-+        <ram>67108864</ram>
-+        <storage>16106127360</storage>
-+      </recommended>
-+    </resources>
-+
-+    <devices>
-+      <device id="http://usb.org/usb/80ee/0021"/> <!-- tablet -->
-+      <device id="http://pcisig.com/pci/1af4/1000"/> <!-- virtio-net -->
-+      <device id="http://pcisig.com/pci/1af4/1001"/> <!-- virtio-block -->
-+    </devices>
-+
-+  </os>
-+</libosinfo>
-diff --git a/tests/isodata/hyperbola/hyperbola-milky-way-v0.3.1-dual.iso.txt b/tests/isodata/hyperbola/hyperbola-milky-way-v0.3.1-dual.iso.txt
-new file mode 100644
-index 00000000..e584f713
---- /dev/null
-+++ b/tests/isodata/hyperbola/hyperbola-milky-way-v0.3.1-dual.iso.txt
-@@ -0,0 +1,30 @@
-+CD-ROM is in ISO 9660 format
-+System id: 
-+Volume id: HYPER_v031
-+Volume set id: 
-+Publisher id: HYPERBOLA GNU/LINUX-LIBRE <HTTPS://WWW.HYPERBOLA.INFO>
-+Data preparer id: PREPARED BY MKHYPERISO
-+Application id: HYPERBOLA GNU/LINUX-LIBRE LIVE/RESCUE CD
-+Copyright File id: 
-+Abstract File id: 
-+Bibliographic File id: 
-+Volume set size is: 1
-+Volume set sequence number is: 1
-+Logical block size is: 2048
-+Volume size is: 337408
-+El Torito VD version 1 found, boot catalog is in sector 41
-+NO Joliet present
-+Rock Ridge signatures version 1 found
-+Eltorito validation header:
-+    Hid 1
-+    Arch 0 (x86)
-+    ID ''
-+    Key 55 AA
-+    Eltorito defaultboot header:
-+        Bootid 88 (bootable)
-+        Boot media 0 (No Emulation Boot)
-+        Load segment 0
-+        Sys type 0
-+        Nsect 4
-+        Bootoff 4C2A 19498
-+
-diff --git a/tests/isodata/hyperbola/hypertalking-milky-way-v0.3.1-dual.iso.txt b/tests/isodata/hyperbola/hypertalking-milky-way-v0.3.1-dual.iso.txt
-new file mode 100644
-index 00000000..f7598bd5
---- /dev/null
-+++ b/tests/isodata/hyperbola/hypertalking-milky-way-v0.3.1-dual.iso.txt
-@@ -0,0 +1,30 @@
-+CD-ROM is in ISO 9660 format
-+System id: 
-+Volume id: HYPER_v031
-+Volume set id: 
-+Publisher id: HYPERBOLA GNU/LINUX-LIBRE <HTTPS://WWW.HYPERBOLA.INFO>
-+Data preparer id: PREPARED BY MKHYPERISO
-+Application id: HYPERBOLA GNU/LINUX-LIBRE LIVE/RESCUE CD
-+Copyright File id: 
-+Abstract File id: 
-+Bibliographic File id: 
-+Volume set size is: 1
-+Volume set sequence number is: 1
-+Logical block size is: 2048
-+Volume size is: 352256
-+El Torito VD version 1 found, boot catalog is in sector 41
-+NO Joliet present
-+Rock Ridge signatures version 1 found
-+Eltorito validation header:
-+    Hid 1
-+    Arch 0 (x86)
-+    ID ''
-+    Key 55 AA
-+    Eltorito defaultboot header:
-+        Bootid 88 (bootable)
-+        Boot media 0 (No Emulation Boot)
-+        Load segment 0
-+        Sys type 0
-+        Nsect 4
-+        Bootoff 4C2A 19498
-+
--- 
-GitLab
-
diff --git a/helpers/DATA/osinfo-db/pure-os_8-3570a396.patch b/helpers/DATA/osinfo-db/pure-os_8-3570a396.patch
deleted file mode 100644
index 18b28df5..00000000
--- a/helpers/DATA/osinfo-db/pure-os_8-3570a396.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From 3570a3965b6ebce5b59b8b2e96f0730f4c3e1340 Mon Sep 17 00:00:00 2001
-From: Chris Lamb <chris.lamb@puri.sm>
-Date: Mon, 11 Feb 2019 23:24:40 +0100
-Subject: [PATCH] pureos: Add generic PureOS entry.
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Signed-off-by: Chris Lamb <lamby@debian.org>
-Reviewed-by: Fabiano Fidêncio <fidencio@redhat.com>
----
- data/os/pureos.net/pureos-8.xml.in | 34 ++++++++++++++++++++++++++++++
- 1 file changed, 34 insertions(+)
- create mode 100644 data/os/pureos.net/pureos-8.xml.in
-
-diff --git a/data/os/pureos.net/pureos-8.xml.in b/data/os/pureos.net/pureos-8.xml.in
-new file mode 100644
-index 00000000..13c5ba6b
---- /dev/null
-+++ b/data/os/pureos.net/pureos-8.xml.in
-@@ -0,0 +1,34 @@
-+<libosinfo version="0.0.1">
-+<!-- Licensed under the GNU General Public License version 2 or later.
-+     See http://www.gnu.org/licenses/ for a copy of the license text -->
-+  <os id="http://pureos.net/pureos/8">
-+    <short-id>pureos8</short-id>
-+    <name>PureOS</name>
-+    <version>8</version>
-+    <vendor>Purism, SPC</vendor>
-+    <family>linux</family>
-+    <distro>pureos</distro>
-+
-+    <resources arch="all">
-+      <minimum>
-+        <cpu>1000000000</cpu>
-+        <n-cpus>1</n-cpus>
-+        <ram>1073741824</ram>
-+        <storage>5368709120</storage>
-+      </minimum>
-+      <recommended>
-+        <cpu>1000000000</cpu>
-+        <ram>1073741824</ram>
-+        <storage>16106127360</storage>
-+      </recommended>
-+    </resources>
-+
-+    <media arch="x86_64" live="true">
-+      <iso>
-+        <volume-id>PureOS 8.0 GNOME Live</volume-id>
-+      </iso>
-+      <kernel>casper/vmlinuz</kernel>
-+      <initrd>casper/initrd.img</initrd>
-+    </media>
-+  </os>
-+</libosinfo>
--- 
-GitLab
-
diff --git a/helpers/DATA/osinfo-db/recommended-distros b/helpers/DATA/osinfo-db/recommended-distros
new file mode 100644
index 00000000..a45299b2
--- /dev/null
+++ b/helpers/DATA/osinfo-db/recommended-distros
@@ -0,0 +1,9 @@
+# Distro - Domain - Lowercase_name
+Dragora - dragora.org - dragora
+Dyne:bolic - dyne.org - dynebolic
+Guix - guix.gnu.org - guix
+Hyperbola - hyperbola.info - hyperbola
+Parabola - parabola.nu - parabola
+PureOS - pureos.net - pureos
+Trisquel - trisquel.info - trisquel
+Ututo - ututo.org - ututo
diff --git a/helpers/DATA/osinfo-db/trisquel9-e43f4830.patch b/helpers/DATA/osinfo-db/trisquel9-e43f4830.patch
deleted file mode 100644
index 8705b826..00000000
--- a/helpers/DATA/osinfo-db/trisquel9-e43f4830.patch
+++ /dev/null
@@ -1,245 +0,0 @@
-From e43f4830933fa4f88ab6f6017be566bea559305d Mon Sep 17 00:00:00 2001
-From: Mercy <myrcy@posteo.net>
-Date: Fri, 10 Dec 2021 23:35:10 -0700
-Subject: [PATCH] Trisquel: Add Trisquel 9 Etiona Trisquel GNU/Linux is a free
- OS for home users, small businesses, and education
-
-Signed-off-by: Mercy <myrcy@posteo.net>
----
- data/os/trisquel.info/trisquel-9.xml.in       | 76 +++++++++++++++++++
- .../trisquel9/triskel_9.0.1_amd64.iso.txt     | 29 +++++++
- .../trisquel-mini_9.0.1_amd64.iso.txt         | 29 +++++++
- .../trisquel-sugar_9.0.1_amd64.iso.txt        | 29 +++++++
- .../trisquel9/trisquel_9.0.1_amd64.iso.txt    | 29 +++++++
- 5 files changed, 192 insertions(+)
- create mode 100644 data/os/trisquel.info/trisquel-9.xml.in
- create mode 100644 tests/isodata/trisquel/trisquel9/triskel_9.0.1_amd64.iso.txt
- create mode 100644 tests/isodata/trisquel/trisquel9/trisquel-mini_9.0.1_amd64.iso.txt
- create mode 100644 tests/isodata/trisquel/trisquel9/trisquel-sugar_9.0.1_amd64.iso.txt
- create mode 100644 tests/isodata/trisquel/trisquel9/trisquel_9.0.1_amd64.iso.txt
-
-diff --git a/data/os/trisquel.info/trisquel-9.xml.in b/data/os/trisquel.info/trisquel-9.xml.in
-new file mode 100644
-index 00000000..2d3f5352
---- /dev/null
-+++ b/data/os/trisquel.info/trisquel-9.xml.in
-@@ -0,0 +1,76 @@
-+<?xml version="1.0"?>
-+<libosinfo version="0.0.1">
-+  <!-- Licensed under the GNU General Public License version 2 or later.
-+     See http://www.gnu.org/licenses/ for a copy of the license text -->
-+  <os id="http://trisquel.info/trisquel/9">
-+    <short-id>trisquel9</short-id>
-+    <name>Trisquel</name>
-+    <version>9</version>
-+    <vendor>The Trisquel Project</vendor>
-+    <family>linux</family>
-+    <distro>trisquel</distro>
-+    <release-date>2021-10-16</release-date>
-+    <derives-from id="http://ubuntu.com/ubuntu/18.04"/>
-+
-+    <variant id="trisquel">
-+      <name>Trisquel 9</name>
-+    </variant>
-+    <variant id="triskel">
-+      <name>Triskel 9</name>
-+    </variant>
-+    <variant id="mini">
-+      <name>Trisquel 9 Mini</name>
-+    </variant>
-+    <variant id="sugar-toast">
-+      <name>Trisquel 9 Sugar Toast</name>
-+    </variant>
-+
-+    <!-- x86_64 -->
-+    <media arch="x86_64" live="true" installer-script="false">
-+      <variant id="trisquel"/>
-+      <url>https://cdimage.trisquel.info/trisquel-images/trisquel_9.0.1_amd64.iso</url>
-+      <iso>
-+        <volume-id>trisquel 9.0.1 amd64.*</volume-id>
-+      </iso>
-+      <kernel>casper/vmlinuz</kernel>
-+      <initrd>casper/initrd</initrd>
-+    </media>
-+    <media arch="x86_64" live="true" installer-script="false">
-+      <variant id="mini"/>
-+      <url>https://cdimage.trisquel.info/trisquel-images/trisquel-mini_9.0.1_amd64.iso</url>
-+      <iso>
-+        <volume-id>trisquel-mini 9.0.1 amd64.*</volume-id>
-+      </iso>
-+      <kernel>casper/vmlinuz</kernel>
-+      <initrd>casper/initrd</initrd>
-+    </media>
-+    <media arch="x86_64" live="true" installer-script="false">
-+      <variant id="sugar-toast"/>
-+      <url>https://cdimage.trisquel.info/trisquel-images/trisquel-sugar_9.0.1_amd64.iso</url>
-+      <iso>
-+        <volume-id>trisquel-sugar 9.0.1 amd64.*</volume-id>
-+      </iso>
-+      <kernel>casper/vmlinuz</kernel>
-+      <initrd>casper/initrd</initrd>
-+    </media>
-+    <media arch="x86_64" live="true" installer-script="false">
-+      <variant id="triskel"/>
-+      <url>https://cdimage.trisquel.info/trisquel-images/triskel_9.0.1_amd64.iso</url>
-+      <iso>
-+        <volume-id>triskel 9.0.1 amd64.*</volume-id>
-+      </iso>
-+      <kernel>casper/vmlinuz</kernel>
-+      <initrd>casper/initrd</initrd>
-+    </media>
-+
-+
-+    <resources arch="all">
-+      <recommended>
-+        <cpu>1000000000</cpu>
-+        <ram>1073741824</ram>
-+        <storage>16106127360</storage>
-+      </recommended>
-+    </resources>
-+
-+  </os>
-+</libosinfo>
-diff --git a/tests/isodata/trisquel/trisquel9/triskel_9.0.1_amd64.iso.txt b/tests/isodata/trisquel/trisquel9/triskel_9.0.1_amd64.iso.txt
-new file mode 100644
-index 00000000..b220fd50
---- /dev/null
-+++ b/tests/isodata/trisquel/trisquel9/triskel_9.0.1_amd64.iso.txt
-@@ -0,0 +1,29 @@
-+CD-ROM is in ISO 9660 format
-+System id: 
-+Volume id: triskel 9.0.1 amd64
-+Volume set id: 
-+Publisher id: 
-+Data preparer id: XORRISO-1.4.8 2017.09.12.143001, LIBISOBURN-1.4.8, LIBISOFS-1.4.8, LIBBURN-1.4.8
-+Application id: TRISKEL 9.0.1 AMD64
-+Copyright File id: 
-+Abstract File id: 
-+Bibliographic File id: 
-+Volume set size is: 1
-+Volume set sequence number is: 1
-+Logical block size is: 2048
-+Volume size is: 1032192
-+El Torito VD version 1 found, boot catalog is in sector 79
-+Joliet with UCS level 3 found
-+Rock Ridge signatures version 1 found
-+Eltorito validation header:
-+    Hid 1
-+    Arch 0 (x86)
-+    ID ''
-+    Key 55 AA
-+    Eltorito defaultboot header:
-+        Bootid 88 (bootable)
-+        Boot media 0 (No Emulation Boot)
-+        Load segment 0
-+        Sys type 0
-+        Nsect 4
-+        Bootoff 250 592
-diff --git a/tests/isodata/trisquel/trisquel9/trisquel-mini_9.0.1_amd64.iso.txt b/tests/isodata/trisquel/trisquel9/trisquel-mini_9.0.1_amd64.iso.txt
-new file mode 100644
-index 00000000..747f1be5
---- /dev/null
-+++ b/tests/isodata/trisquel/trisquel9/trisquel-mini_9.0.1_amd64.iso.txt
-@@ -0,0 +1,29 @@
-+CD-ROM is in ISO 9660 format
-+System id: 
-+Volume id: trisquel-mini 9.0.1 amd64
-+Volume set id: 
-+Publisher id: 
-+Data preparer id: XORRISO-1.4.8 2017.09.12.143001, LIBISOBURN-1.4.8, LIBISOFS-1.4.8, LIBBURN-1.4.8
-+Application id: TRISQUEL-MINI 9.0.1 AMD64
-+Copyright File id: 
-+Abstract File id: 
-+Bibliographic File id: 
-+Volume set size is: 1
-+Volume set sequence number is: 1
-+Logical block size is: 2048
-+Volume size is: 625856
-+El Torito VD version 1 found, boot catalog is in sector 79
-+Joliet with UCS level 3 found
-+Rock Ridge signatures version 1 found
-+Eltorito validation header:
-+    Hid 1
-+    Arch 0 (x86)
-+    ID ''
-+    Key 55 AA
-+    Eltorito defaultboot header:
-+        Bootid 88 (bootable)
-+        Boot media 0 (No Emulation Boot)
-+        Load segment 0
-+        Sys type 0
-+        Nsect 4
-+        Bootoff 250 592
-diff --git a/tests/isodata/trisquel/trisquel9/trisquel-sugar_9.0.1_amd64.iso.txt b/tests/isodata/trisquel/trisquel9/trisquel-sugar_9.0.1_amd64.iso.txt
-new file mode 100644
-index 00000000..2b45e3e5
---- /dev/null
-+++ b/tests/isodata/trisquel/trisquel9/trisquel-sugar_9.0.1_amd64.iso.txt
-@@ -0,0 +1,29 @@
-+CD-ROM is in ISO 9660 format
-+System id: 
-+Volume id: trisquel-sugar 9.0.1 amd64
-+Volume set id: 
-+Publisher id: 
-+Data preparer id: XORRISO-1.4.8 2017.09.12.143001, LIBISOBURN-1.4.8, LIBISOFS-1.4.8, LIBBURN-1.4.8
-+Application id: TRISQUEL-SUGAR 9.0.1 AMD64
-+Copyright File id: 
-+Abstract File id: 
-+Bibliographic File id: 
-+Volume set size is: 1
-+Volume set sequence number is: 1
-+Logical block size is: 2048
-+Volume size is: 582336
-+El Torito VD version 1 found, boot catalog is in sector 79
-+Joliet with UCS level 3 found
-+Rock Ridge signatures version 1 found
-+Eltorito validation header:
-+    Hid 1
-+    Arch 0 (x86)
-+    ID ''
-+    Key 55 AA
-+    Eltorito defaultboot header:
-+        Bootid 88 (bootable)
-+        Boot media 0 (No Emulation Boot)
-+        Load segment 0
-+        Sys type 0
-+        Nsect 4
-+        Bootoff 250 592
-diff --git a/tests/isodata/trisquel/trisquel9/trisquel_9.0.1_amd64.iso.txt b/tests/isodata/trisquel/trisquel9/trisquel_9.0.1_amd64.iso.txt
-new file mode 100644
-index 00000000..6bfcb7dd
---- /dev/null
-+++ b/tests/isodata/trisquel/trisquel9/trisquel_9.0.1_amd64.iso.txt
-@@ -0,0 +1,29 @@
-+CD-ROM is in ISO 9660 format
-+System id: 
-+Volume id: trisquel 9.0.1 amd64
-+Volume set id: 
-+Publisher id: 
-+Data preparer id: XORRISO-1.4.8 2017.09.12.143001, LIBISOBURN-1.4.8, LIBISOFS-1.4.8, LIBBURN-1.4.8
-+Application id: TRISQUEL 9.0.1 AMD64
-+Copyright File id: 
-+Abstract File id: 
-+Bibliographic File id: 
-+Volume set size is: 1
-+Volume set sequence number is: 1
-+Logical block size is: 2048
-+Volume size is: 1340864
-+El Torito VD version 1 found, boot catalog is in sector 79
-+Joliet with UCS level 3 found
-+Rock Ridge signatures version 1 found
-+Eltorito validation header:
-+    Hid 1
-+    Arch 0 (x86)
-+    ID ''
-+    Key 55 AA
-+    Eltorito defaultboot header:
-+        Bootid 88 (bootable)
-+        Boot media 0 (No Emulation Boot)
-+        Load segment 0
-+        Sys type 0
-+        Nsect 4
-+        Bootoff 250 592
--- 
-GitLab
-
diff --git a/helpers/make-osinfo-db b/helpers/make-osinfo-db
index 1a85f6bc..5bcc3c87 100644
--- a/helpers/make-osinfo-db
+++ b/helpers/make-osinfo-db
@@ -18,16 +18,79 @@
 #    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
 #
 
-VERSION=1
+VERSION=2
+
+EXTERNAL='deb-src http://ftp.us.debian.org/debian bookworm main'
+REPOKEY=04EE7237B7D453EC
 
 . ./config
 
+rd_domain=($(cat $DATA/recommended-distros|grep -v \#|awk '{print$3}'))
+rd_lcname=($(cat $DATA/recommended-distros|grep -v \#|awk '{print$5}'))
+
+# Apply latest patchs
+for patch in $(ls -v ${DATA}/*.patch)
+do
+    echo "Applying $patch"
+    patch --no-backup-if-mismatch -Np1 < $patch
+done
+
+# Remove non-free distros references.
+TMPDIR=$(mktemp -d os-XXXX)
+for i in "${rd_domain[@]}"
+do
+    mv data/os/$i $TMPDIR || true
+done
+for a in $(ls data/os/)
+do
+    # Remove os references
+    for b in $(grep -rl $a debian/patches/|sed 's|debian/patches/||')
+    do
+        echo "Check for $b ..."
+        sed -i "/$b/d" debian/patches/series
+        rm debian/patches/$b
+    done
+done
+rm -rf data/os
+mv $TMPDIR data/os
+
+# Remove tests for non-free distros.
+TMPDIR2=$(mktemp -d os-XXXX)
+TMPDIR3=$(mktemp -d os-XXXX)
+for i in "${rd_lcname[@]}"
+do
+    mv tests/isodata/$i $TMPDIR2 || true
+    mv tests/treeinfodata/$i $TMPDIR3 || true
+    # Remove references to non-free containers
+    for a in $(ls tests/isodata/)
+    do
+        rm $(grep -rl $a ci/containers/) || true
+        rm $(grep -rl $a ci/buildenv/) || true
+    done
+done
+rm -rf tests/isodata
+rm -rf tests/treeinfodata
+mv $TMPDIR2 tests/isodata
+mv $TMPDIR3 tests/treeinfodata
+
+# Remove install-scripts
+TMPDIR4=$(mktemp -d os-XXXX)
+for i in "${rd_domain[@]}"
+do
+    mv data/install-script/$i $TMPDIR4 || true
+done
+rm -rf data/install-script
+mv $TMPDIR4 data/install-script
+
+# Avoid test error out.
+rm tests/test_treeinfo.py \
+   tests/test_related.py
+
 #Apply changes for new fully free distros availbale at libosinfo.
 # trisquel.info
 sed -i '/derives-from/d' data/os/trisquel.info/trisquel-9.xml.in
 sed -i '/release-date/a \ \ \ \ <codename>Etiona</codename>' data/os/trisquel.info/trisquel-9.xml.in
 
-
-changelog "Apply changes for new fully free distros availbale at libosinfo."
+changelog "Remove non-free suggestions from db osinfo."
 
 compile
-- 
GitLab