Top |
gchar * | distro | Read |
gchar * | family | Read |
OsinfoAvatarFormat * | avatar-format | Read |
OsinfoPathFormat | path-format | Read |
gchar * | product-key-format | Read |
gchar * | profile | Read / Write / Construct Only |
gchar * | template-data | Read / Write / Construct Only |
gchar * | template-uri | Read / Write / Construct Only |
GEnum ├── OsinfoDeviceDriverSigningReq ╰── OsinfoPathFormat GFlags ╰── OsinfoInstallScriptInjectionMethod GObject ╰── OsinfoEntity ├── OsinfoInstallScript ╰── OsinfoProduct ╰── OsinfoOs
OsinfoInstallScript is an object used to generate an automated installation script for an OS. The OS configuration data (language, keyboard, timezone, ...) comes from an OsinfoInstallConfig object.
OsinfoInstallScript * osinfo_install_script_new_uri (const gchar *id
,const gchar *profile
,const gchar *templateUri
);
Construct a new install script from a stylesheet URI
OsinfoInstallScript * osinfo_install_script_new_data (const gchar *id
,const gchar *profile
,const gchar *templateData
);
Construct a new install script from stylesheet data
const gchar *
osinfo_install_script_get_template_uri
(OsinfoInstallScript *script
);
const gchar *
osinfo_install_script_get_template_data
(OsinfoInstallScript *script
);
const gchar *
osinfo_install_script_get_profile (OsinfoInstallScript *script
);
const gchar *
osinfo_install_script_get_product_key_format
(OsinfoInstallScript *script
);
If this function returns a non-NULL string, it means that the script
requires you to specify product registration key through OsinfoInstallConfig
instance passed to script generation methods.
The returned string specifies the expected format of the product key like this:
@ - any character % - alphabet
$ - alphanumeric character
All other characters represent themselves.
For example in case of installer for Microsoft Windows XP, you'll get "$$$$$-$$$$$-$$$$$-$$$$$-$$$$$". That means a product key consists of 24 alphanumeric characters and 4 '-' characters at (0-based) indices 5, 11, 17 and 23.
void osinfo_install_script_set_output_prefix (OsinfoInstallScript *script
,const gchar *prefix
);
const gchar *
osinfo_install_script_get_output_prefix
(OsinfoInstallScript *script
);
const gchar *
osinfo_install_script_get_output_filename
(OsinfoInstallScript *script
);
Some operating systems are able to use any script filename, allowing the
application to set the filename as desired. libosinfo provides this
functionality by set the expected filename's prefix using
osinfo_install_script_set_output_prefix()
function.
const gchar *
osinfo_install_script_get_expected_filename
(OsinfoInstallScript *script
);
Some operating systems (as Windows) expect that script filename has particular name to work.
OsinfoAvatarFormat *
osinfo_install_script_get_avatar_format
(OsinfoInstallScript *script
);
Some install scripts have restrictions on the format of the user avatar. Use this method to retrieve those restrictions in the form of an OsinfoAvatarFormat instance.
void osinfo_install_script_generate_async (OsinfoInstallScript *script
,OsinfoOs *os
,OsinfoInstallConfig *config
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
);
gchar * osinfo_install_script_generate_finish (OsinfoInstallScript *script
,GAsyncResult *res
,GError **error
);
gchar * osinfo_install_script_generate (OsinfoInstallScript *script
,OsinfoOs *os
,OsinfoInstallConfig *config
,GCancellable *cancellable
,GError **error
);
void osinfo_install_script_generate_output_async (OsinfoInstallScript *script
,OsinfoOs *os
,OsinfoInstallConfig *config
,GFile *output_dir
,GCancellable *cancellable
,GAsyncReadyCallback callback
,gpointer user_data
);
GFile * osinfo_install_script_generate_output_finish (OsinfoInstallScript *script
,GAsyncResult *res
,GError **error
);
GFile * osinfo_install_script_generate_output (OsinfoInstallScript *script
,OsinfoOs *os
,OsinfoInstallConfig *config
,GFile *output_dir
,GCancellable *cancellable
,GError **error
);
Creates an install script written in a file
script |
the install script |
|
os |
the os entity |
|
config |
the install script config |
|
output_dir |
the directory where file containing the output script will be written |
|
cancellable |
a GCancellable, or |
[allow-none] |
error |
The location where to store any error, or |
gchar * osinfo_install_script_generate_command_line (OsinfoInstallScript *script
,OsinfoOs *os
,OsinfoInstallConfig *config
);
Some install scripts need to pass a command line to the kernel, Such install scripts belong to OSs that provide paths to the kernel and initrd files that can be used to directly boot (http://wiki.qemu.org/download/qemu-doc.htmldirect_005flinux_005fboot) the OS in order to pass the needed commandline to it.
gboolean osinfo_install_script_has_config_param (const OsinfoInstallScript *script
,const OsinfoInstallConfigParam *config_param
);
gboolean osinfo_install_script_has_config_param_name (const OsinfoInstallScript *script
,const gchar *name
);
OsinfoInstallConfigParam * osinfo_install_script_get_config_param (const OsinfoInstallScript *script
,const gchar *name
);
Get a config param from the config param's list
GList *
osinfo_install_script_get_config_param_list
(const OsinfoInstallScript *script
);
Get the list of valid config parameters for script
.
the
list of valid OsinfoInstallConfigParam parameters. Free with
g_list_free()
when done. The elements are owned by libosinfo.
[transfer container][element-type OsinfoInstallScript]
OsinfoInstallConfigParamList *
osinfo_install_script_get_config_params
(const OsinfoInstallScript *script
);
Get the list of valid config parameters for script
.
OsinfoPathFormat
osinfo_install_script_get_path_format (OsinfoInstallScript *script
);
gboolean
osinfo_install_script_get_can_pre_install_drivers
(OsinfoInstallScript *script
);
Whether install script can install drivers at the very beginning of installation. This is needed for devices for which the OS in question does not have out of the box support for and devices are required/prefered to be available during actual installation.
gboolean
osinfo_install_script_get_can_post_install_drivers
(OsinfoInstallScript *script
);
int
osinfo_install_script_get_pre_install_drivers_signing_req
(OsinfoInstallScript *script
);
If install script can install drivers at the very beginning of installation, this function retrieves the requirement about signed status of drivers.
int
osinfo_install_script_get_post_install_drivers_signing_req
(OsinfoInstallScript *script
);
If install script can install drivers at the end of installation, this function retrieves the requirement about signed status of drivers.
unsigned int
osinfo_install_script_get_injection_methods
(OsinfoInstallScript *script
);
Retrieve the supported method to inject the script in to the installation process.
gboolean
osinfo_install_script_get_needs_internet
(OsinfoInstallScript *script
);
Some install scripts cannot ensure that they work without an internet connection.
#define OSINFO_INSTALL_SCRIPT_PROP_TEMPLATE_URI "template-uri"
#define OSINFO_INSTALL_SCRIPT_PROP_TEMPLATE_DATA "template-data"
#define OSINFO_INSTALL_SCRIPT_PROP_PRODUCT_KEY_FORMAT "product-key-format"
#define OSINFO_INSTALL_SCRIPT_PROP_EXPECTED_FILENAME "expected-filename"
#define OSINFO_INSTALL_SCRIPT_PROP_CAN_PRE_INSTALL_DRIVERS "can-pre-install-drivers"
#define OSINFO_INSTALL_SCRIPT_PROP_CAN_POST_INSTALL_DRIVERS "can-post-install-drivers"
#define OSINFO_INSTALL_SCRIPT_PROP_NEEDS_INTERNET "needs-internet"
#define OSINFO_INSTALL_SCRIPT_PROP_PRE_INSTALL_DRIVERS_SIGNING_REQ "pre-install-drivers-signing-req"
#define OSINFO_INSTALL_SCRIPT_PROP_POST_INSTALL_DRIVERS_SIGNING_REQ "post-install-drivers-signing-req"
#define OSINFO_INSTALL_SCRIPT_PROP_INJECTION_METHOD "injection-method"
OSINFO_DEVICE_DRIVER_SIGNING_REQ_NONE
: Script do not require device drivers
to be signed.
OSINFO_DEVICE_DRIVER_SIGNING_REQ_STRICT
: Script must only be given signed
device drivers. Some scripts will allow overriding this requirement through
osinfo_install_config_set_driver_signing function. You can query if a
script supports this by checking if
OSINFO_INSTALL_CONFIG_PROP_DRIVER_SIGNING configuration parameter is used
by the script in question (or other scripts in the same profile).
OSINFO_DEVICE_DRIVER_SIGNING_REQ_WARN
: A warning will be issued by OS
installer if device drivers are not signed and most probably require user
input (and thus breaking unattended installation). See
OSINFO_DEVICE_DRIVER_SIGNING_REQ_STRICT on how this warning can be disabled
for some scripts.
OSINFO_INSTALL_SCRIPT_INJECTION_METHOD_CDROM
: Support injection of the
installation script trough a CD-ROM.
OSINFO_INSTALL_SCRIPT_INJECTION_METHOD_DISK
: Support injection of the
installation script trough a disk.
OSINFO_INSTALL_SCRIPT_INJECTION_METHOD_FLOPPY
: Support injection of the
installation script trough a floppy disk.
OSINFO_INSTALL_SCRIPT_INJECTION_METHOD_INITRD
: Support injection of the
installation script trough the initrd.
OSINFO_INSTALL_SCRIPT_INJECTION_METHOD_WEB
: Support injection of the
installation script from the web.
“distro”
property“distro” gchar *
The generic distro this OS belongs to, for example fedora, windows, solaris, freebsd etc.
Flags: Read
Default value: NULL
“family”
property“family” gchar *
The generic family this OS belongs to, based upon its kernel, for example linux, winnt, solaris, freebsd etc.
Flags: Read
Default value: NULL
“avatar-format”
property“avatar-format” OsinfoAvatarFormat *
Expected avatar format.
Flags: Read
“path-format”
property“path-format” OsinfoPathFormat
Expected path format.
Flags: Read
Default value: OSINFO_PATH_FORMAT_UNIX
“product-key-format”
property“product-key-format” gchar *
Product key format mask.
Flags: Read
Default value: NULL
“profile”
property“profile” gchar *
Install script profile name.
Flags: Read / Write / Construct Only
Default value: NULL
“template-data”
property“template-data” gchar *
Data for install script template.
Flags: Read / Write / Construct Only
Default value: NULL
“template-uri”
property“template-uri” gchar *
URI for install script template.
Flags: Read / Write / Construct Only
Default value: NULL