(* libguestfs * Copyright (C) 2009-2025 Red Hat Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA *) (* Please read generator/README first. *) open Types (* Inspection APIs. *) let non_daemon_functions = [ { defaults with name = "inspect_list_applications"; added = (1, 7, 8); style = RStructList ("applications", "application"), [String (Mountable, "root")], []; deprecated_by = Replaced_by "inspect_list_applications2"; shortdesc = "get list of applications installed in the operating system"; longdesc = {|Return the list of applications installed in the operating system. I This call works differently from other parts of the inspection API. You have to call C, then C, then mount up the disks, before calling this. Listing applications is a significantly more difficult operation which requires access to the full filesystem. Also note that unlike the other C calls which are just returning data cached in the libguestfs handle, this call actually reads parts of the mounted filesystems during the call. This returns an empty list if the inspection code was not able to determine the list of applications. The application structure contains the following fields: =over 4 =item C The name of the application. For Linux guests, this is the package name. =item C The display name of the application, sometimes localized to the install language of the guest operating system. If unavailable this is returned as an empty string C<"">. Callers needing to display something can use C instead. =item C For package managers which use epochs, this contains the epoch of the package (an integer). If unavailable, this is returned as C<0>. =item C The version string of the application or package. If unavailable this is returned as an empty string C<"">. =item C The release string of the application or package, for package managers that use this. If unavailable this is returned as an empty string C<"">. =item C The installation path of the application (on operating systems such as Windows which use installation paths). This path is in the format used by the guest operating system, it is not a libguestfs path. If unavailable this is returned as an empty string C<"">. =item C The install path translated into a libguestfs path. If unavailable this is returned as an empty string C<"">. =item C The name of the publisher of the application, for package managers that use this. If unavailable this is returned as an empty string C<"">. =item C The URL (eg. upstream URL) of the application. If unavailable this is returned as an empty string C<"">. =item C For packaging systems which support this, the name of the source package. If unavailable this is returned as an empty string C<"">. =item C A short (usually one line) description of the application or package. If unavailable this is returned as an empty string C<"">. =item C A longer description of the application or package. If unavailable this is returned as an empty string C<"">. =back Please read L for more details.|} }; ] let daemon_functions = [ { defaults with name = "inspect_get_format"; added = (1, 9, 4); style = RString (RPlainString, "format"), [String (Mountable, "root")], []; impl = OCaml "Inspect.inspect_get_format"; deprecated_by = Deprecated_no_replacement; shortdesc = "get format of inspected operating system"; longdesc = {|Before libguestfs 1.38, there was some unreliable support for detecting installer CDs. This API would return: =over 4 =item C This is an installed operating system. =item C The disk image being inspected is not an installed operating system, but a I install disk, live CD, or similar. =item C The format of this disk image is not known. =back In libguestfs E 1.38, this only returns C. Use libosinfo directly to detect installer CDs. Please read L for more details.|} }; { defaults with name = "inspect_is_live"; added = (1, 9, 4); style = RBool "live", [String (Mountable, "root")], []; impl = OCaml "Inspect.inspect_is_live"; deprecated_by = Deprecated_no_replacement; shortdesc = "get live flag for install disk"; longdesc = "\ This is deprecated and always returns C. Please read L for more details." }; { defaults with name = "inspect_is_netinst"; added = (1, 9, 4); style = RBool "netinst", [String (Mountable, "root")], []; impl = OCaml "Inspect.inspect_is_netinst"; deprecated_by = Deprecated_no_replacement; shortdesc = "get netinst (network installer) flag for install disk"; longdesc = "\ This is deprecated and always returns C. Please read L for more details." }; { defaults with name = "inspect_is_multipart"; added = (1, 9, 4); style = RBool "multipart", [String (Mountable, "root")], []; impl = OCaml "Inspect.inspect_is_multipart"; deprecated_by = Deprecated_no_replacement; shortdesc = "get multipart flag for install disk"; longdesc = "\ This is deprecated and always returns C. Please read L for more details." }; ]