/* Copyright (C) 2026 The Qt Company Ltd.
 *
 * SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only
*/

/*!
    \qmltype systemInfo
    \inqmlmodule scripting

    \brief Provides information about the operating system.
*/

/*!
    \qmlproperty string systemInfo::currentCpuArchitecture

    The architecture of the CPU that the application is running on, in text format.

    Possible values include
    \list
        \li "i386"
        \li "x86_64"
    \endlist

    Note that this function depends on what the OS will report and may not detect the actual CPU
    architecture if the OS hides that information or is unable to provide it. For example, a 32-bit
    OS running on a 64-bit CPU is usually unable to determine whether the CPU is actually capable
    of running 64-bit programs.

    \sa QSysInfo::currentCpuArchitecture()
*/

/*!
    \qmlproperty string systemInfo::buildCpuArchitecture

    The architecture of the CPU that the application was compiled for, in text format.

    Possible values include:
    \list
        \li "i386"
        \li "x86_64"
        \li "arm64"
    \endlist

    Note that this may not match the actual CPU that the application is running on if
    there's an emulation layer or if the CPU supports multiple architectures (like x86-64
    processors supporting i386 applications). To detect that, use \c installer.currentCpuArchitecture()

    \sa QSysInfo::buildCpuArchitecture() currentCpuArchitecture
*/

/*!
    \qmlproperty string systemInfo::kernelType

    The type of the operating system kernel the installer was compiled for. It is also the
    kernel the installer is running on, unless the host operating system is running a form of
    compatibility or virtualization layer.

    For Windows, Linux, and macOS this will return
    \list
        \li "winnt"
        \li "linux"
        \li "darwin"
    \endlist

    On Unix systems, it returns the same as the output of \c {uname -s} (lowercased).

    \sa QSysInfo::kernelType()
*/

/*!
    \qmlproperty string systemInfo::kernelVersion

    Example values are

    \list
        \li "6.1.7601" for Windows 7 with Service Pack 1
        \li "3.16.6-2-desktop" for openSUSE 13.2 kernel 3.16.6-2
        \li "12.5.0" last release of OS X "Mountain Lion"
    \endlist

    The release version of the operating system kernel. On Windows, it returns the version of the
    NT or CE kernel. On Unix systems, including macOS, it returns the same as the \c {uname -r}
    command would return.

    \sa QSysInfo::kernelVersion()
*/

/*!
    \qmlproperty string systemInfo::productType

    The product name of the operating system this application is running in.

    Example values are

    \list
        \li "windows"
        \li "opensuse" (for the Linux openSUSE distribution)
        \li "macos"
    \endlist

    \sa QSysInfo::productType()
*/

/*!
    \qmlproperty string systemInfo::productVersion

    The product version of the operating system in string form. If the version could not be
    determined, this function returns "unknown".

    Example values are

    \list
        \li "7" for Windows 7
        \li "13.2" for openSUSE 13.2
        \li "10.8" for OS X Mountain Lion
    \endlist

    \sa QSysInfo::productVersion()
*/

/*!
    \qmlproperty string systemInfo::prettyProductName

    A prettier form of systemInfo::productType and systemInfo::productVersion, containing other
    tokens like the operating system type, codenames and other information. The result of this
    function is suitable for displaying to the user.

    Example values are

    \list
        \li "Windows 7"
        \li "openSUSE 13.2 (Harlequin) (x86_64)"
        \li "OS X Mountain Lion (10.8)"
    \endlist


    \sa QSysInfo::prettyProductName()
*/
