1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
|
/****************************************************************************
**
** Copyright (C) 2024 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the Qt Installer Framework.
**
** $QT_BEGIN_LICENSE:FDL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and The Qt Company. For licensing terms
** and conditions see https://www.qt.io/terms-conditions. For further
** information use the contact form at https://www.qt.io/contact-us.
**
** GNU Free Documentation License Usage
** Alternatively, this file may be used under the terms of the GNU Free
** Documentation License version 1.3 as published by the Free Software
** Foundation and appearing in the file included in the packaging of
** this file. Please review the following information to ensure
** the GNU Free Documentation License version 1.3 requirements
** will be met: https://www.gnu.org/licenses/fdl-1.3.html.
** $QT_END_LICENSE$
**
****************************************************************************/
/*!
\previouspage ifw-getting-started.html
\page ifw-overview.html
\nextpage ifw-installation.html
\title Overview of Qt Installer Framework
With Qt Installer Framework you can create both simple and complex installers
with thousands of components and deploy your installers across all the supported
desktop Qt platforms without rewriting the source code. Your final installers
have the native look and feel of the platform on which they run: Linux,
Microsoft Windows, and macOS.
For example Qt installers are made with the Qt Installer Framework.
Both open-source and commercial users can download Qt Installer Framework from their
Qt Account.
Qt Installer Framework tools generate installers with a set of pages
that guide the users during the installation, update, or uninstallation
process. You supply the installable content and specify information about
it, such as the name of the product and the installer and the text for the
license agreement.
You can customize the installers by adding widgets to the predefined pages
or by adding whole pages to offer users more options.
Each installable package in the installer can contain one component script that
gives a comprehensive API to fine-tune how the package should be installed
on the system. You can, for example, add shortcuts to the desktop or register
file extensions for your tool.
\section1 Choosing Installer Type
You can offer end users an \e offline or \e online installer, or
both, depending on your use cases.
\image ifw-overview.png
Both installers install a \e {\MT}, which allows your end users to later
add, update, and remove components.
End users can use the \MT to install more components from
the server after the initial installation, as well as to receive automatic
updates to content as soon as the updates are available on the server.
However, this works for an offline installation only if you specify a
repository address in the offline installer configuration or if end users
specify the repository address themselves in the \MT settings.
\section2 Offline Installers
Offline installers contain all the installable components and do not require
network connections during the installation.
Create an offline installer to enable users to directly download the
installation package on a media for installation on a computer later. You
can also distribute the installation package on a CD-ROM or USB stick, for
example.
\section2 Online installers
Online installers install the \MT and components from an online
repository on a web server. After installation, the \MT can be used to
modify the installation from an online repository.
The size of an online installer binary is smaller and its
download time is shorter than that of an offline installer binary. The total
time spent downloading and running an online installer might also be shorter
than downloading and running an offline installer if the end users do not
install all the available components.
Create an online installer to enable users to always install the latest
versions of the content packages.
\list
\li Online repositories
\li Online installer
\endlist
\section2 Signing installers
Signing your installer is an integral step in finalizing your product. Signing
shows that your code is safe and secure.
Find more information on signing your installer on Windows platform
on \l{https://learn.microsoft.com/en-us/windows/win32/seccrypto/signtool} {Microsoft website}.
For more information on signing your installer in macOS, see Apple website for
\l{https://developer.apple.com/documentation/security/code_signing_services} {code signing}
and \{https://developer.apple.com/documentation/security/notarizing_macos_software_before_distribution} {notarizing}.
\section1 Promoting Updates for Online Installers
Make online repositories available to promote updates to end users who
install your product. The easiest way to offer an update is to recreate
the repository and upload it to the web server. For large repositories, you
can update only the changed components.
\section1 Providing Content for Installers
You can enable other content providers to add components to the installer
as add-on components. The component providers must set up repositories that
contain the installable components and deliver the URL that points to the
repositories to end users. End users must then configure the URL in the
installer. The add-on components are visible in the package manager.
*/
|