summaryrefslogtreecommitdiffstats
path: root/src/sdk/commandlineparser.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Refactor naming and usage of CLI commandsArttu Tarkiainen2020-03-191-154/+0
| | | | | | | | | | | | | | | | | | | | | | | | - Rename and alter the description of some command line options according to validation results from task QTIFW-1635. The suggested additions are not added in this change. - Remove options "framework-version" and "silentUpdate", these should not be needed anymore. - Combine options "installPackages" and "installDefault" into single "install" command. - Change command line syntax from "binary [options]" to "binary [options] command <arguments>". - Re-order & group known option variables and "--help" printing order based on their topic. - Move CommandLineParser class files under src/libs/installer and add private class for future options extension. Short versions of command line options should be added in a follow-up commit. Task-number: QTIFW-1671 Change-Id: Ie0d393368b5275c8ffa1ab8833885b149af3178e Reviewed-by: Katja Marttila <katja.marttila@qt.io>
* Merge remote-tracking branch 'origin/3.2' to masterKatja Marttila2020-03-161-0/+3
|\ | | | | | | Change-Id: Ia4cf718409ce431cce8d766865ecec506426afb9
| * Add command line option to disable checking of free space on target3.2.2-rcArttu Tarkiainen2020-02-271-0/+3
| | | | | | | | | | | | | | | | | | | | Also move functionality to PackageManagerCore::checkAvailableSpace() for more convenient later usage, if we want to use this without starting the Wizard GUI. Task-number: QTIFW-1602 Change-Id: I4f2d3cc78bc542475fe9c51b9364b1b221098e4a Reviewed-by: Katja Marttila <katja.marttila@qt.io>
* | Add command line option to start the installer binary as uninstallerArttu Tarkiainen2020-03-021-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Add option "--uninstaller" to start the installer binary explicitly as uninstaller. This complements options "--updater" and "--manage-packages". Add convenience functions for setting and checking if the magic binary marker has been set by the user. Task-number: QTIFW-1639 Change-Id: Ie40ba9c56e09be079e309bca985b19a8a7bef7ef Reviewed-by: Iikka Eklund <iikka.eklund@qt.io> Reviewed-by: Katja Marttila <katja.marttila@qt.io>
* | Uninstall selected packages from command lineKatja Marttila2020-02-141-0/+3
| | | | | | | | | | | | | | | | | | | | Components can be uninstalled from CLI with --uninstallPackages package1,package2,... Replicates the same behavior as when removing from visual UI, so forced installation, virtual and components installed as autodependency cannot be uninstalled. Change-Id: Ibcd87b5ceb8e509c84c6944510c23e59b28dedb9 Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
* | Enable command line default components installationArttu Tarkiainen2020-02-031-0/+2
| | | | | | | | | | | | | | | | | | | | Add --installDefault option to install components that are set to be checked by default and their respective dependencies. Do not do anything if the component tree does not have anything checked by default. Task-number: QTIFW-1583 Change-Id: I3825c7e797b102a8d6a65ae0e57bfe82fafef5e9 Reviewed-by: Katja Marttila <katja.marttila@qt.io>
* | Install selected packages from CLIKatja Marttila2019-12-041-0/+6
| | | | | | | | | | | | | | | | | | Also move targetDirWarning() from targetdirectorypage to packagemanager and move target directory check to checkTargetDir() function so that those are accessible also without UI. Change-Id: Ia38cc7e66bb542e6a60fea2c39cc3b80735564ef Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
* | Update selected components from command lineKatja Marttila2019-11-221-0/+2
| | | | | | | | | | | | | | | | | | Selected components can be updated with --updatePackages <package_id>. If essential components are found, only the essential components are updated. Change-Id: I0eb8a8f5ca855af16eabd5f888cd9a0d5e933d84 Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
* | List available packages from command lineKatja Marttila2019-11-191-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | Available packages can be listed from command line with --listPackages <regexp>. All packages can be listed with --listPackages . . By default package id, name and version are listed in output. In case you want to see all the packet information use logging category --logging-rules ifw.package.*=true. See --help for more detailed information on how to use logging category. Change-Id: Ic0815d2274643e3fb3f0670ed9036fe765805c0e Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
* | List installed packages from command lineKatja Marttila2019-10-181-0/+2
|/ | | | | Change-Id: Ic8efe08be347f3a208e37458936f8316d66ca916 Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
* Update usage of Apple-related terminologyArttu Tarkiainen2019-08-161-1/+1
| | | | | | | | | | | Replace deprecated Q_OS_OSX macro used in several places with the newer Q_OS_MACOS. Old style reference of Apple's desktop operating system name as "OS X" in documentation and files are also replaced with "macOS" where applicable. Task-number: QTIFW-1406 Change-Id: I0561d5e0d964917ac4fca0702d58a06b85d30e57 Reviewed-by: Katja Marttila <katja.marttila@qt.io>
* Enable building IFW with Squish supportKatja Marttila2018-02-121-0/+6
| | | | | | | | | | | | Change enables building IFW with Squish support by passing SQUISH_PATH to qmake when building IFW. Also enables runtime change of Squish port with command line option --squish-port <port number>. If no port is set, default port 11233 is used to attach to Squish. Change-Id: I4821b360031df66968d3592886c2e45598e1b097 Reviewed-by: Iikka Eklund <iikka.eklund@qt.io> Reviewed-by: Antti Kokko <antti.kokko@qt.io> Reviewed-by: Johanna Äijälä <johanna.aijala@qt.io>
* Add no-proxy optionKatja Marttila2018-01-251-1/+4
| | | | | | | | | From Qt 5.8 onwards system proxy is used by default. Add option --no-proxy to enable installer usage with no proxy. Task-number: QTIFW-1085 Change-Id: If5247969aa9577cb746468c59802104d19826596 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Merge remote-tracking branch 'origin/2.0'Katja Marttila2017-01-301-17/+12
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: Changelog dist/config/config.xml dist/packages/org.qtproject.ifw.binaries/meta/package.xml dist/packages/org.qtproject.ifw/meta/package.xml installerfw.pri src/libs/installer/lib7z_create.h src/libs/kdtools/kdgenericfactory.cpp src/libs/kdtools/kdgenericfactory.h src/libs/kdtools/kdupdaterapplication.cpp src/libs/kdtools/kdupdaterapplication.h src/libs/kdtools/kdupdaterupdatesourcesinfo.cpp src/libs/kdtools/kdupdaterupdatesourcesinfo.h src/libs/kdtools/localpackagehub.cpp src/libs/kdtools/localpackagehub.h src/libs/kdtools/updatefinder.cpp src/libs/kdtools/updatefinder.h tools/binarycreator/resources/mkdmg.sh Change-Id: Iab2513f549832d2e750e77131c673457ab265af4
| * License header update to GPL-EXCEPTKatja Marttila2017-01-261-17/+12
| | | | | | | | | | Change-Id: I6426c4e8f932cf26c6c638dec18d0c12e22972d1 Reviewed-by: Janne Anttila <janne.anttila@theqtcompany.com>
* | Rename QtBSP as QBSPKatja Marttila2017-01-241-1/+1
| | | | | | | | | | Change-Id: I2537aec5d3065da78bf9b0c6970ff3b38c7d4946 Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
* | Avoid warning messages when passing '--platform minimal'Frerich Raabe2017-01-111-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Unattended installations typically use no UI, and the documentation recommends passing '-platform minimal' (note: one dash!) to hide the UI. Alas, the command line parsing is not implemented in terms of QCoreApplication::arguments() which means that even the -platform argument which is meant to be processed by QApplication is interpreted by the command line parser -- which then complains about the unknown switch by printing Unknown option: p, l, a, t, f, o, r, m Let's avoid this by just registering a dummy '--platform' switch ourselves. It has no effect, but avoids the warning. This however means that two dashes need to be used, because that's how the command line parser works. For what it's worth, there is also a 'gui.setSilent()' setter, but it's not quite as comprehensive as using the 'minimal' platform plugin: using setSilent() will still create a QApplication and thus create e.g. a task bar entry on OS X (and I suspect it requires an X connection on Linux). The 'minimal' platform plugin apparently avoids this. Change-Id: I8cd4cfd496f8c435f0766e3162672eaefbef94cc Reviewed-by: Katja Marttila <katja.marttila@qt.io>
* | Introduces new --silentUpdate command line optionKatja Marttila2016-11-151-0/+2
| | | | | | | | | | | | | | | | | | With this feature one can update all installed components silently with maintenancetool by passing --silentUpdate parameter Change-Id: If31d37ce24e794775c2fe47b603259da133c9ee7 Task-number: QTIFW-906 Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
* | allow installing compressed packagesKatja Marttila2016-11-091-1/+4
|/ | | | | | | | | | | | | | | This change introduces new feature to add 7z packages to be installed. Packages must be installer repositories (created with repogen), compressed to 7z file and named as qtbsp or 7z. Selecting compressed package is done either with button in component selection page or with --installCompressedRepository parameter given to installer or to maintenancetool. Button will not be created by default. If you want to show the button either build IFW with DEFINES+=INSTALLCOMPRESSED or enable the button in control script with allowCompressedRepositoryInstall() in ComponentSelectionPageCallback Task-number: QTIFW-886 Change-Id: Ia060092c348991d5195393b7dc154205f8bf92a5 Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
* Update license headersIikka Eklund2015-12-291-4/+3
| | | | | | | | | Update existing license headers. LGPL -> LGPLv21. Update copyright year as well. Change-Id: Ie1d71f8c68186b8f625f409ddf94691f178093c9 Reviewed-by: Katja Marttila <katja.marttila@theqtcompany.com> Reviewed-by: Jani Heikkinen <jani.heikkinen@theqtcompany.com>
* Fix help output for --proxyKai Koehne2015-05-121-1/+1
| | | | | | | Actually passing --proxy has an effect on Linux, but not on OS X. Change-Id: I29a4d3945c6113d67311fdea3c700a5610075939 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* Add more logging categories.Jarek Kobus2015-04-241-0/+2
| | | | | Change-Id: I1c7dabfd16a69ef5a3e5aaa490036de061f1fd13 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* Enable logging categories as an installer option.Jarek Kobus2015-04-241-0/+10
| | | | | | | | | | | Now by default all categories are disabled. They get enabled only in verbose mode. Verbose mode enables all categories by default. Categories can be filtered using logging-rules option. Change-Id: I9324826a6e2d7a746e3d7369747fcd31a42b84b6 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com> Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* Use local sockets for client-server communicationKai Koehne2015-02-201-2/+2
| | | | | | Change-Id: I12bfef671ab31ae9fb8c4bb02776517e7f434d27 Task-number: QTIFW-228 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* Update CopyrightKai Koehne2015-02-181-7/+7
| | | | | Change-Id: I8dde6629cfd461104364d5cdc255cb54b58283fa Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* rename CreateOfflineRepository to CreateLocalRepositoryChristoph Vogtländer2015-01-081-1/+1
| | | | | Change-Id: I36d7a504b27dfff8b9d10c9d90b6ff77108b9982 Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* Implement a way to start the server in debug mode and API cleanup.kh2014-11-261-1/+8
| | | | | | | | | | | | 1; Passing debug as first argument to the starting server does not start the server side so the server keeps running in an endless loop. This makes it far easier to attach a debugger. 2; API cleanup and unify init function to take port, key, and mode. The address was never able to be changed anyway, so stop passing them around. Change-Id: I2a847f009ed1557a5e136e2b0006de5c62426da2 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* Small cosmetical changes, no functional.karsten.heimrich@theqtcompany.com2014-11-211-1/+1
| | | | | Change-Id: Ic984503444187dfcfcfa83f82768bebb329381d0 Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* Add --framework-version argumentKai Koehne2014-10-281-0/+3
| | | | | | | | | | | | | | This prints the version number of the Qt Installer Framework. In contrast to the more verbose '--version' argument it can be used safely by other applications to check for the version. Also, we might at one point decide to give the IFW user control of the --version output: He might want to run his own version scheme to also take into account the packaged content. Change-Id: Ia609310659ac45c5acffe318ecb6480eeb419ee8 Reviewed-by: Jarek Kobus <jaroslaw.kobus@digia.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Add LGPLv3 as new licenseKai Koehne2014-10-161-14/+7
| | | | | | | Change-Id: I61158f956894e209dccf83744b4753774676099d Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com> Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Maurice Kalinowski <maurice.kalinowski@digia.com>
* Fix missing punctuation and wrong apostrophe.kh12014-09-151-1/+1
| | | | | Change-Id: I2682f2e012c7bc595481b65a667a1a31141912ae Reviewed-by: Niels Weber <niels.weber@digia.com>
* Introduce commandline parser class.kh12014-08-291-0/+106
Though it just wraps the Qt class, it does at least some useful setup in its constructor, will reuse that in the next commit. Change-Id: I7b876d196540baad197bdbf85babbeaea62f8c27 Reviewed-by: Niels Weber <niels.weber@digia.com>