Why doesn't "osinfo-query os" detect Ubuntu 18.04?
OS: Kubuntu 18.04.1 (and Ubuntu 18.04.1 in a virtual machine)
When I run osinfo-query os
after installing libosinfo-bin
, the output doesn't include Ubuntu 18.04:
$ osinfo-query os | grep -i ubuntu | cut -d ' ' -f -2
ubuntu10.04
ubuntu10.10
ubuntu11.04
ubuntu11.10
ubuntu12.04
ubuntu12.10
ubuntu13.04
ubuntu13.10
ubuntu14.04
ubuntu14.10
ubuntu15.04
ubuntu15.10
ubuntu16.04
ubuntu16.10
ubuntu17.04
ubuntu17.10
ubuntu4.10
ubuntu5.04
ubuntu5.10
ubuntu6.06
ubuntu6.10
ubuntu7.04
ubuntu7.10
ubuntu8.04
ubuntu8.10
ubuntu9.04
ubuntu9.10
$
Why is that? And can I somehow update something to get Ubuntu 18.04 included?
The reason I'm asking is because of:
Next we passed the
--os-variant
option. While this is not mandatory, is highly recommended to use it, since it can improve performance of the virtual machine. The option will try to fine tune the guest to the specific OS version. If the option is not passed, the program will attempt to auto-detect the correct value from the installation media.
which I read in How to create and manage KVM virtual machines from CLI.
In response to Rinzwind's answer, the output of locate
after running sudo updatedb
is:
$ locate libosinfo
/usr/lib/x86_64-linux-gnu/libosinfo-1.0.so.0
/usr/lib/x86_64-linux-gnu/libosinfo-1.0.so.0.1001.0
/usr/share/doc/gir1.2-libosinfo-1.0
/usr/share/doc/libosinfo-1.0-0
/usr/share/doc/libosinfo-bin
/usr/share/doc/gir1.2-libosinfo-1.0/changelog.Debian.gz
/usr/share/doc/gir1.2-libosinfo-1.0/copyright
/usr/share/doc/libosinfo-1.0-0/NEWS.gz
/usr/share/doc/libosinfo-1.0-0/README
/usr/share/doc/libosinfo-1.0-0/changelog.Debian.gz
/usr/share/doc/libosinfo-1.0-0/copyright
/usr/share/doc/libosinfo-bin/changelog.Debian.gz
/usr/share/doc/libosinfo-bin/copyright
/var/cache/apt/archives/libosinfo-bin_1.1.0-1_amd64.deb
/var/lib/dpkg/info/gir1.2-libosinfo-1.0:amd64.list
/var/lib/dpkg/info/gir1.2-libosinfo-1.0:amd64.md5sums
/var/lib/dpkg/info/libosinfo-1.0-0:amd64.list
/var/lib/dpkg/info/libosinfo-1.0-0:amd64.md5sums
/var/lib/dpkg/info/libosinfo-1.0-0:amd64.shlibs
/var/lib/dpkg/info/libosinfo-1.0-0:amd64.symbols
/var/lib/dpkg/info/libosinfo-1.0-0:amd64.triggers
/var/lib/dpkg/info/libosinfo-bin.list
/var/lib/dpkg/info/libosinfo-bin.md5sums
Neither /usr/share/libosinfo/db
or /etc/libosinfo/db
are present.
Running locate os-info
as suggested by Rinzwind did the job:
$ locate osinfo | grep ubuntu
/usr/share/osinfo/install-script/ubuntu.com
/usr/share/osinfo/install-script/ubuntu.com/ubuntu-preseed-jeos.xml
/usr/share/osinfo/os/ubuntu.com
/usr/share/osinfo/os/ubuntu.com/ubuntu-10.04.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-10.10.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-11.04.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-11.10.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-12.04.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-12.10.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-13.04.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-13.10.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-14.04.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-14.10.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-15.04.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-15.10.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-16.04.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-16.10.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-17.04.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-17.10.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-4.10.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-5.04.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-5.10.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-6.06.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-6.10.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-7.04.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-7.10.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-8.04.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-8.10.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-9.04.xml
/usr/share/osinfo/os/ubuntu.com/ubuntu-9.10.xml
$
It should now be easy to add /usr/share/osinfo/os/ubuntu.com/ubuntu-18.04.xml
. Though it still leaves open the question of why it wasn't included in the first place.
Solution 1:
To update the osinfo database, which is actually just a collection of XML files, do the following:
1: Install package osinfo-db-tools
to get the osinfo-db-import
program (at least on Debian'ish distros):
apt update;apt install osinfo-db-tools
2: Download the newest osinfo-db file from releases.pagure.org example:
wget -O "/tmp/osinfo-db.tar.xz" "https://releases.pagure.org/libosinfo/osinfo-db-20200325.tar.xz"
3: Import the downloaded osinfo-db file:
osinfo-db-import --local "/tmp/osinfo-db.tar.xz"
The new osinfo-db XML files will be located in /etc/osinfo/..
The osinfo-db XML files provided by the original distro package are still located in /usr/share/osinfo
.
The newly path created by osinfo-db-import
take precedens of the original path.
If you want to overwrite the original osinfo-db XMLs use the option --system
instead of --local
(source)
Solution 2:
You could always take it from the GitLab site then replace it.
Might need to install the git
, osinfo-db-tools
, intltool
and make
first
sudo apt install osinfo-db-tools intltool make git
Clone the osinfo from the GitLab page
git clone https://gitlab.com/libosinfo/osinfo-db
Go to the osinfo-db
folder
cd osinfo-db/
Prepared the os files
./prepare-release.sh
During the prepare it showed the following line:
osinfo-db-import --root /home/terrance/builder --system osinfo-db-20180830.tar.xz
So, I went to that folder cd ~/builder
and it contained a usr
folder. All I had to do was copy that folder to the root and it updated
cd ~/builder
sudo cp -Rv * /
And now it detects Ubuntu 18.04
terrance@terrance-ubuntu:~/builder$ osinfo-query os | grep -i ubuntu
ubuntu10.04 | Ubuntu 10.04 LTS | 10.04 | http://ubuntu.com/ubuntu/10.04
ubuntu10.10 | Ubuntu 10.10 | 10.10 | http://ubuntu.com/ubuntu/10.10
ubuntu11.04 | Ubuntu 11.04 | 11.04 | http://ubuntu.com/ubuntu/11.04
ubuntu11.10 | Ubuntu 11.10 | 11.10 | http://ubuntu.com/ubuntu/11.10
ubuntu12.04 | Ubuntu 12.04 LTS | 12.04 | http://ubuntu.com/ubuntu/12.04
ubuntu12.10 | Ubuntu 12.10 | 12.10 | http://ubuntu.com/ubuntu/12.10
ubuntu13.04 | Ubuntu 13.04 | 13.04 | http://ubuntu.com/ubuntu/13.04
ubuntu13.10 | Ubuntu 13.10 | 13.10 | http://ubuntu.com/ubuntu/13.10
ubuntu14.04 | Ubuntu 14.04 LTS | 14.04 | http://ubuntu.com/ubuntu/14.04
ubuntu14.10 | Ubuntu 14.10 | 14.10 | http://ubuntu.com/ubuntu/14.10
ubuntu15.04 | Ubuntu 15.04 | 15.04 | http://ubuntu.com/ubuntu/15.04
ubuntu15.10 | Ubuntu 15.10 | 15.10 | http://ubuntu.com/ubuntu/15.10
ubuntu16.04 | Ubuntu 16.04 | 16.04 | http://ubuntu.com/ubuntu/16.04
ubuntu16.10 | Ubuntu 16.10 | 16.10 | http://ubuntu.com/ubuntu/16.10
ubuntu17.04 | Ubuntu 17.04 | 17.04 | http://ubuntu.com/ubuntu/17.04
ubuntu17.10 | Ubuntu 17.10 | 17.10 | http://ubuntu.com/ubuntu/17.10
ubuntu18.04 | Ubuntu 18.04 LTS | 18.04 | http://ubuntu.com/ubuntu/18.04
ubuntu4.10 | Ubuntu 4.10 | 4.10 | http://ubuntu.com/ubuntu/4.10
ubuntu5.04 | Ubuntu 5.04 | 5.04 | http://ubuntu.com/ubuntu/5.04
ubuntu5.10 | Ubuntu 5.10 | 5.10 | http://ubuntu.com/ubuntu/5.10
ubuntu6.06 | Ubuntu 6.06 LTS | 6.06 | http://ubuntu.com/ubuntu/6.06
ubuntu6.10 | Ubuntu 6.10 | 6.10 | http://ubuntu.com/ubuntu/6.10
ubuntu7.04 | Ubuntu 7.04 | 7.04 | http://ubuntu.com/ubuntu/7.04
ubuntu7.10 | Ubuntu 7.10 | 7.10 | http://ubuntu.com/ubuntu/7.10
ubuntu8.04 | Ubuntu 8.04 LTS | 8.04 | http://ubuntu.com/ubuntu/8.04
ubuntu8.10 | Ubuntu 8.10 | 8.10 | http://ubuntu.com/ubuntu/8.10
ubuntu9.04 | Ubuntu 9.04 | 9.04 | http://ubuntu.com/ubuntu/9.04
ubuntu9.10 | Ubuntu 9.10 | 9.10 | http://ubuntu.com/ubuntu/9.10