From d4f2cdbe1bc5c43c56c1e2d552a3d374fb7c24c0 Mon Sep 17 00:00:00 2001 From: Alexandre Poumaroux <1204936+Kidev@users.noreply.github.com> Date: Mon, 24 Mar 2025 04:46:49 +0100 Subject: [PATCH 01/11] Add --use-official-installer doc to cli.rst --- docs/cli.rst | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/docs/cli.rst b/docs/cli.rst index 38bc0f6..ebb3c6f 100644 --- a/docs/cli.rst +++ b/docs/cli.rst @@ -499,6 +499,7 @@ install-qt command [--archives [...]] [--autodesktop] [--noarchives] + [--use-official-installer [ ]] ( | ) [] Install Qt library, with specified version and target. @@ -566,6 +567,18 @@ There are various combinations to accept according to Qt version. This is advanced option and you should use it with ``--modules`` option. This allow you to add modules to existent Qt installation. +.. option:: --use-official-installer [email password] + + Use the official Qt installer instead of the AQT approach. This option ignores + the ``--host`` parameter and forces installation for the current OS due to Qt + restrictions. + + If you are already signed in and have a valid ``qtaccount.ini`` for the current + user, you can use this option without parameters. Otherwise, you must provide + an email and password to authenticate. + + See :ref:`the official installer section` for more details. + See `common options`_. From 228ab080264786a31bd8065fd1dac7d6aeca118e Mon Sep 17 00:00:00 2001 From: Alexandre Poumaroux <1204936+Kidev@users.noreply.github.com> Date: Mon, 24 Mar 2025 04:53:00 +0100 Subject: [PATCH 02/11] Add --dry-run and example for --use-official-installer --- docs/cli.rst | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/docs/cli.rst b/docs/cli.rst index ebb3c6f..6bf8d3b 100644 --- a/docs/cli.rst +++ b/docs/cli.rst @@ -499,6 +499,7 @@ install-qt command [--archives [...]] [--autodesktop] [--noarchives] + [--dry-run] [--use-official-installer [ ]] ( | ) [] @@ -567,6 +568,10 @@ There are various combinations to accept according to Qt version. This is advanced option and you should use it with ``--modules`` option. This allow you to add modules to existent Qt installation. +.. option:: --dry-run + + Perform a simulation of the installation process without making any changes. + .. option:: --use-official-installer [email password] Use the official Qt installer instead of the AQT approach. This option ignores @@ -877,6 +882,13 @@ Example: Install different versions of Qt6 for Web Assembly (WASM) aqt install-qt all_os wasm 6.8.0 wasm_multithread --autodesktop +Example: Install commercial version 6.5.5 of Qt6 on Windows + +.. code-block:: console + + aqt install-qt windows desktop 6.5.5 win64_msvc2019_64 --use-official-installer 'email@gmail.com' 'password' + + Example: List available versions of Qt on Linux .. code-block:: console From 1319a9d81f850fd282ce0e22da20779aceb32535 Mon Sep 17 00:00:00 2001 From: Alexandre Poumaroux <1204936+Kidev@users.noreply.github.com> Date: Thu, 17 Apr 2025 22:41:06 +0200 Subject: [PATCH 03/11] Update installation.rst --- docs/installation.rst | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/installation.rst b/docs/installation.rst index 18db9e0..ca774ca 100644 --- a/docs/installation.rst +++ b/docs/installation.rst @@ -8,7 +8,9 @@ Installation Requirements ------------ -- Minimum Python version: 3.8.10 +- Minimum Python version: 3.9 + +- Recommended Python version: 3.13 - Dependencies: requests, py7zr, semantic_version, patch, texttable, bs4, defusedxml, humanize From bfc3bfb84567d508993fd1e6d22028ab60e11340 Mon Sep 17 00:00:00 2001 From: Alexandre Poumaroux <1204936+Kidev@users.noreply.github.com> Date: Thu, 17 Apr 2025 22:41:14 +0200 Subject: [PATCH 04/11] Update installation.rst --- docs/installation.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/installation.rst b/docs/installation.rst index ca774ca..0ee9276 100644 --- a/docs/installation.rst +++ b/docs/installation.rst @@ -10,7 +10,7 @@ Requirements - Minimum Python version: 3.9 -- Recommended Python version: 3.13 +- Recommended Python version: 3.13 - Dependencies: requests, py7zr, semantic_version, patch, texttable, bs4, defusedxml, humanize From b19e3c5da39465c65126560be397a8f6b106f3f2 Mon Sep 17 00:00:00 2001 From: Alexandre Poumaroux <1204936+Kidev@users.noreply.github.com> Date: Thu, 17 Apr 2025 22:44:26 +0200 Subject: [PATCH 05/11] Update cli.rst --- docs/cli.rst | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/docs/cli.rst b/docs/cli.rst index 6bf8d3b..3bb2868 100644 --- a/docs/cli.rst +++ b/docs/cli.rst @@ -47,7 +47,8 @@ list-qt command --long-modules ( | latest) | --arch ( | latest) | --archives ( | latest) architecture [modules...] - --latest-version] + --latest-version + --use-official-installer [ ]] [] List available versions of Qt, targets, modules, and architectures. @@ -163,6 +164,17 @@ List available versions of Qt, targets, modules, and architectures. Print only the newest version available May be combined with the ``--spec`` flag. +.. option:: --use-official-installer [email password] + + Use the official Qt installer instead of the AQT approach. This option simply + forwards your search terms to the official Qt installer. + + If you are already signed in and have a valid ``qtaccount.ini`` for the current + user, you can use this option without parameters. Otherwise, you must provide + an email and password to authenticate. + + See :ref:`the official installer section` for more details. + .. _list-src command: From 9318b3a128afefe461a402339a1597018a7f4f0c Mon Sep 17 00:00:00 2001 From: Alexandre Poumaroux <1204936+Kidev@users.noreply.github.com> Date: Thu, 17 Apr 2025 23:39:00 +0200 Subject: [PATCH 06/11] Update cli.rst --- docs/cli.rst | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/cli.rst b/docs/cli.rst index 3bb2868..e9a5d58 100644 --- a/docs/cli.rst +++ b/docs/cli.rst @@ -460,6 +460,11 @@ are described here: aqt install-* -m all +.. option:: --UNSAFE-ignore-hash + + Equivalent to `INSECURE_NOT_FOR_PRODUCTION_ignore_hash: True` in `aqt/settings.ini` from the CLI. + It does not edit the config file and affects only the current session. It prints warnings. + .. _install archives flag: .. option:: --archives From b98b0a2a203fac17571276d5ecc1eac3666e9e6c Mon Sep 17 00:00:00 2001 From: Alexandre Poumaroux <1204936+Kidev@users.noreply.github.com> Date: Thu, 17 Apr 2025 23:41:29 +0200 Subject: [PATCH 07/11] Update cli.rst --- docs/cli.rst | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/cli.rst b/docs/cli.rst index e9a5d58..013fcdc 100644 --- a/docs/cli.rst +++ b/docs/cli.rst @@ -462,7 +462,8 @@ are described here: .. option:: --UNSAFE-ignore-hash - Equivalent to `INSECURE_NOT_FOR_PRODUCTION_ignore_hash: True` in `aqt/settings.ini` from the CLI. + UNSAFE, use at your own risk. + Equivalent to ``INSECURE_NOT_FOR_PRODUCTION_ignore_hash: True`` in ``aqt/settings.ini`` from the CLI. It does not edit the config file and affects only the current session. It prints warnings. From aec22062d999846e538ffd93be77d0bcd24d2510 Mon Sep 17 00:00:00 2001 From: Alexandre Poumaroux <1204936+Kidev@users.noreply.github.com> Date: Thu, 17 Apr 2025 23:45:45 +0200 Subject: [PATCH 08/11] Update cli.rst --- docs/cli.rst | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/docs/cli.rst b/docs/cli.rst index 013fcdc..961e940 100644 --- a/docs/cli.rst +++ b/docs/cli.rst @@ -463,8 +463,10 @@ are described here: .. option:: --UNSAFE-ignore-hash UNSAFE, use at your own risk. - Equivalent to ``INSECURE_NOT_FOR_PRODUCTION_ignore_hash: True`` in ``aqt/settings.ini`` from the CLI. - It does not edit the config file and affects only the current session. It prints warnings. + This disables the hash check of downloaded files from your mirror against the official hashes. + Equivalent to setting ``INSECURE_NOT_FOR_PRODUCTION_ignore_hash: True`` in ``aqt/settings.ini`` when using the CLI. + It does not edit the configuration file and only affects the current session. It will print warnings. + Useful if the Qt official mirror is down and you trust a third-party mirror. .. _install archives flag: From 7f214b5137f02f3dd3b861484e22bdffc74add99 Mon Sep 17 00:00:00 2001 From: Alexandre Poumaroux <1204936+Kidev@users.noreply.github.com> Date: Thu, 17 Apr 2025 23:47:02 +0200 Subject: [PATCH 09/11] Update cli.rst --- docs/cli.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/cli.rst b/docs/cli.rst index 961e940..2c4c39d 100644 --- a/docs/cli.rst +++ b/docs/cli.rst @@ -464,7 +464,7 @@ are described here: UNSAFE, use at your own risk. This disables the hash check of downloaded files from your mirror against the official hashes. - Equivalent to setting ``INSECURE_NOT_FOR_PRODUCTION_ignore_hash: True`` in ``aqt/settings.ini`` when using the CLI. + Equivalent to setting ``INSECURE_NOT_FOR_PRODUCTION_ignore_hash: True`` in ``aqt/settings.ini``. It does not edit the configuration file and only affects the current session. It will print warnings. Useful if the Qt official mirror is down and you trust a third-party mirror. From f7d388ec5ffcd79f44d167caf9b6350d90e19933 Mon Sep 17 00:00:00 2001 From: Alexandre Poumaroux <1204936+Kidev@users.noreply.github.com> Date: Sun, 20 Apr 2025 01:05:15 +0200 Subject: [PATCH 10/11] Update cli.rst --- docs/cli.rst | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/docs/cli.rst b/docs/cli.rst index 2c4c39d..158c2d3 100644 --- a/docs/cli.rst +++ b/docs/cli.rst @@ -47,8 +47,8 @@ list-qt command --long-modules ( | latest) | --arch ( | latest) | --archives ( | latest) architecture [modules...] - --latest-version - --use-official-installer [ ]] + --latest-version] + [--use-official-installer [ ]] [] List available versions of Qt, targets, modules, and architectures. @@ -168,6 +168,10 @@ List available versions of Qt, targets, modules, and architectures. Use the official Qt installer instead of the AQT approach. This option simply forwards your search terms to the official Qt installer. + Will use current OS as ``host`` (but the ``host`` value passed must still be provided and valid). + Will use target as research term, along with eventual arch, using the following regex: + ``^.*{re.escape(version_str)}\.{re.escape(target_str)}.*$``. + It will list all the arguments ignored. If you are already signed in and have a valid ``qtaccount.ini`` for the current user, you can use this option without parameters. Otherwise, you must provide @@ -909,6 +913,13 @@ Example: Install commercial version 6.5.5 of Qt6 on Windows aqt install-qt windows desktop 6.5.5 win64_msvc2019_64 --use-official-installer 'email@gmail.com' 'password' +Example: List commercial packages of Android for version 6.8.3 of Qt6 on current OS + +.. code-block:: console + + aqt list-qt linux android --arch 6.8.3 --use-official-installer 'email@gmail.com' 'password' + + Example: List available versions of Qt on Linux .. code-block:: console From 03924a58258291040b29875d1b62ff5fd387437f Mon Sep 17 00:00:00 2001 From: Alexandre Poumaroux <1204936+Kidev@users.noreply.github.com> Date: Mon, 5 May 2025 16:24:06 +0200 Subject: [PATCH 11/11] Update official.rst --- docs/official.rst | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/official.rst b/docs/official.rst index 1d637d6..43dc7f5 100644 --- a/docs/official.rst +++ b/docs/official.rst @@ -17,8 +17,9 @@ Official Qt Installer This file is automatically created when you use the ``MaintenanceTool`` binary and log in using the GUI. It is also created the first time you use the CLI or any mean to authenticate. You can simply copy the file from your PC to the CI server, it will work across platforms. Just treat it as a password. Refer to `this page `_ for more details. * It will also check the value of the environment variable ``QT_INSTALLER_JWT_TOKEN`` and use the token if provided. - * If neither are present, you will need to provide ``--email --pw ``. - Note that if ``--email`` and ``--pw`` are provided, they will supersede the ``qtaccount.ini`` and the JWT token account. + * If neither are present, you will need to provide ``--email --pw ``. + The Qt official installer will generate a ``qtaccount.ini`` file in the relevant folder for your OS (see above for its location) if there is not one already present. That file contains your Qt JSON Web Token (JWT), and must be treated as a password. + Note that if ``--email`` and ``--pw`` are provided, they will supersede the ``qtaccount.ini`` and the JWT provided in the environment. ``install-qt-official`` ------------------------