summaryrefslogtreecommitdiffstats
path: root/src/libs/installer/installer.pro
Commit message (Collapse)AuthorAgeFilesLines
* Always build libinstaller as a static libraryJake Petroules2017-09-131-0/+2
| | | | | | | | | This fixes the build if IFW is built with a dynamically linked Qt, and does not otherwise affect use of static builds of Qt. Task-number: QTIFW-993 Change-Id: I1e6807e522adde339263c697fa4a1353250a2e3f Reviewed-by: Katja Marttila <katja.marttila@qt.io>
* Merge remote-tracking branch 'origin/2.0'Katja Marttila2016-06-211-0/+3
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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/7zip/7zip.pro src/libs/7zip/win/CPP/7zip/UI/Common/Update.cpp src/libs/installer/component.cpp src/libs/installer/lib7z_facade.cpp src/libs/installer/packagemanagercore.cpp src/libs/installer/proxycredentialsdialog.h src/sdk/translations/ja.ts tests/auto/installer/messageboxhandler/tst_messageboxhandler.cpp tests/auto/installer/scriptengine/tst_scriptengine.cpp tests/auto/installer/settings/tst_settings.cpp Change-Id: I3bb98b8490b3c3eb7f664c1abb7417155b5430b2
| * add make install functionality with INSTALL_ROOTKatja Marttila2016-05-191-0/+3
| | | | | | | | | | | | Change-Id: I8bad1c9bbe7b705ff0842f15fb0c9bc6c127e9bc Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com> Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com>
| * Revert "Use QQmlV4Function to correctly get empty parameters from script."Katja Marttila2016-02-171-2/+1
| | | | | | | | | | | | | | | | | | | | | | This reverts commit eb574d77b0ab9a92b61e7738d089cd4ea4304e51. The change will not work with Qt5.5 as it is causing constant crashes in Qt installers. Using this change will require a fix for Qt5. As we are about to make Qt installers based on 2.0 we need to revert this change for now. Change-Id: Ia7906d02db645f2407ab07d14f5a037224574b29 Reviewed-by: Andy Shaw <andy.shaw@theqtcompany.com>
* | Revert "Windows: Fix crashes in elevated installation"Katja Marttila2016-05-201-1/+0
| | | | | | | | | | | | | | | | This reverts commit 95ae661cba931a982d12cd68d8b4da392d74bdd0. As we now require at least Qt5.5.0 we don't need this workaround Change-Id: I6ab930886bc9af0716a61a8e21b12db83018b0c2 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | Merge remote-tracking branch 'origin/2.0'Iikka Eklund2016-01-201-1/+2
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: installerfw.pri 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 sync.profile Change-Id: Ifdc8b065f89b7e241bd3788ed79768e21888161f
| * Use QQmlV4Function to correctly get empty parameters from script.Karsten Heimrich2015-11-261-1/+2
| | | | | | | | | | | | | | | | | | By using QQmlV4Function to get the parameters, empty strings passed are correctly kept as empty and not null. Task-number: QTIFW-724 Change-Id: I592e2230e574ba82e765bd0079964db29452b2e9 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | Split the huge header file in more dedicated ones.Karsten Heimrich2015-06-101-1/+4
| | | | | | | | | | Change-Id: I35a1500d5a9bb8986765488660cf0487c32d9720 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | Update source tree with version 9.38.beta of LZMA SDK.Karsten Heimrich2015-06-101-1/+2
| | | | | | | | | | | | | | | | | | | | - Remove unused files. - Split in .pri files. - Add HEADERS section. - Adjust lib7z_facade. Change-Id: I31e7bafbfe1a9346364bd58c391601955f98ad3a Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | Replace UpdateSourcesInfo and UpdateSourceInfo classes.Karsten Heimrich2015-05-061-2/+4
|/ | | | | | | | | | | | Introduce a new struct PackageInfo, which is similar to the removed UpdateSourceInfo struct. The new struct name reflects the actual use better, as we deal with package here (either packages to install or updates to apply) and not updates only. Also remove the container class UpdateSourcesInfo, we can simple reuse a existing Qt container here. Adjust all occurrences that use/ used the classes. Change-Id: I526e24cbf1664f0ab0ad18153f60c2c10b6909d8 Reviewed-by: Jarek Kobus <jaroslaw.kobus@theqtcompany.com>
* Windows: Fix crashes in elevated installationKai Koehne2015-04-161-1/+2
| | | | | | | | | | | | | | | | | | | | | | Until Qt 5.5.0, QLocalSocket::waitForReadyRead() immediately returns when there are still bytesAvailable(). This means our busy loop for polling new data gets stuck. To work around this we've been explicitly calling processEvents(), which however can have undesired side effects: Namely that non-network events get delivered too, and that 'intermediate' requests are sent to the server, resulting in the protocol getting out of sync - requests get replies from intermediate commands, ultimately leading to crashes. The patch therefore removes the processEvents() call, and instead works around the QLocalSocket::waitForReadyRead() deficiency by subclassing. Task-number: QTIFW-663 Task-number: QTIFW-656 Task-number: QTIFW-659 Change-Id: I4099fa1702cd8dceda954d672c9c3dac0ca7fd66 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* Fix handling of incomplete messages in client/server communicationKai Koehne2015-02-201-0/+1
| | | | | | | | | | | | | Do not assume that the socket always contains enough data. Instead, prefix every 'packet' with its size, and back off until the full packet is available. The actual encoding/decoding is done in Protocol::sendPacket, Protocol::receivePacket. To be able to use the methods everywhere, replies are now prefixed by a Protocol::Reply command. Change-Id: I75a89605b2cc3fe2f2f841d8e3159fc8aea65d77 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* Set correct permissions for ini filesNiels Weber2015-01-261-0/+2
| | | | | | | | | | | This is necessary due to a behavior change in QSettings/Qt 5 that now creates ini files with more restrictive permissions than before. Task-number: QTIFW-589 Task-number: QTBUG-44086 Change-Id: I296ad4b312a933cbda7dd5c1f644294f83e1850d Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* Expose systemInfo APIKai Koehne2014-12-051-2/+4
| | | | | | | | | Add systemInfo as a wrapper for QSystemInfo. Task-number: QTIFW-592 Change-Id: Ib54fcea8b0ef3a397a74f5315202f3000abd63cd Reviewed-by: Niels Weber <niels.weber@theqtcompany.com> Reviewed-by: Jarek Kobus <jaroslaw.kobus@theqtcompany.com>
* Move the KeepAliveObject class into its own source files.kh2014-12-021-2/+4
| | | | | | Change-Id: Iaf8f397bdcaa4afb5432b826aa3fe238d54193c0 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com> Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* Add ComponentChecker class for verifying the internal state.jkobus2014-12-011-0/+2
| | | | | Change-Id: I3361ad6c51d5a0f3beee049237e6b370d57a8f0d Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* Implement server authentication and updating repository credentials.kh2014-11-261-3/+6
| | | | | | | Task-number: QTIFW-570 Change-Id: I7b6b1fab8279331e5cb4b4da86726322b44a1109 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
* Remove Qt SDK specific operationskh2014-11-181-13/+4
| | | | | Change-Id: I0a06c4b019dc6799447adef6d722be36ab3ded5d Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* Remove Qt Creator specific operationsKai Koehne2014-11-181-5/+0
| | | | | | | These have been superseded by SettingsOperation Change-Id: I268f40b8246cb4735eea58650a1439e5ffbd8553 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* Ask for proxy credentials in modal dialogKai Koehne2014-11-181-2/+6
| | | | | | | | | | | | If a proxy requires authentication, DownloadFileTask will throw an exception of type ProxyAuthenticationRequiredException. This exception is handled in MetadataJob to first ask the user for credentials, storing them in PackageManagerProxyFactory, and then retriggering the download. Change-Id: I0d69504d3f90d503d83c7b2229bc670756fa1463 GPush-Base: 9aeb0197e58d630ef7e657bb05671d6ec7b3f5ec Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* Move the uninstallation calculations into UninstallerCalculatorjkobus2014-10-101-2/+4
| | | | | Change-Id: I1b398815414430c2fab9a5c611b44e3a92c2fb39 Reviewed-by: Jarek Kobus <jaroslaw.kobus@digia.com>
* Move InstallerCalculator into its own headerkh12014-10-061-2/+4
| | | | | | | Make it public, so that it can be used outside (e.g. in tests) Change-Id: I2a307dcd6f2eb017f9ac26de06d77deb0d668fbe Reviewed-by: Jarek Kobus <jaroslaw.kobus@digia.com>
* Implement progress indicator on taskbar on Windows.kh12014-09-111-0/+1
| | | | | | | Task-number: QTIFW-15 Change-Id: Ia11c185f25dff2f1614425ec5ff78e79b2fa2a77 Reviewed-by: Jarek Kobus <jaroslaw.kobus@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Rewrite binary layout read/ write implementation.kh12014-09-041-2/+4
| | | | | | | | | | Move BinaryLayout into its own file. Calculate the segment offsets in place instead of letting the caller do the work. Adjust autotest to match the new behavior. Adjust uses to the new behavior. Change-Id: Iba7a4398bd097f1768c33f0c528efd12b7458541 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Move class BinaryContent into its own file.kh12014-07-151-2/+4
| | | | | | | Prepare for QTIFW-292 and QTIFW-345. Change-Id: I938b5aa728e8f81eb9521df5753ad80ac630d96e Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Move updater class into sdk binary and rename to UpdateChecker.kh12014-07-151-2/+0
| | | | | | | | | | | | | Remove some now superfluous methods from binary format. Adjust initializing some objects as we need them not earlier. Unify implementation of accessing the right binary to read the content from. UpdateChecker does now have its own run checker, makes it possible to run the binary even if a e.g. maintenace tool is already running. Change-Id: I94f32f7f38b62b5aee433753abc2fe72e879ddc9 Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Introduce developer tool.kh12014-07-111-2/+0
| | | | | | | | | | Supports dump binary content, run operation and update existing binary with new installer base. The support for starting with binary data of a different installer got dropped completely, use update and run instead. Change-Id: I41073d0bfc9a4c4da18fbb9f49fd3e65bb54b501 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Remove unused class.kh12014-07-111-2/+0
| | | | | | | | | It was introduced and put into the lib for an example we do not have anymore. It's also something an application should implement rather then the library. Change-Id: Ieed1e63eed2f756326f608c4fc9680cc1df1c916 Reviewed-by: Jarek Kobus <jaroslaw.kobus@digia.com>
* Split out the file IO stuff and adjust other files respectively.kh12014-06-241-2/+4
| | | | | | | | | Also adjust the API to use QFileDevice instead of QIODevice to make clear we just operate on files here and not on any possible device like sockets, processes etc... Change-Id: I4ecbb6e244fe4bb666ed12e62f9f5586bc1347f0 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Fix AdminAuthorization implementation.kh12014-06-191-1/+0
| | | | | | | | | - execute() does the magic of getting privileges and starting the process - hasAdminRights() simply returns if we started privileged.. Change-Id: I0940a02556fe240af0ee7dfb068f7f8009eb683e Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Replace client-server classes and update implementations.kh12014-06-031-5/+0
| | | | | | | | | | Remove superfluous file engine tests. Introduce auto test for newly added client server classes. Fix some wrong implementations serverside for settings array handling and broken arguments in process wrapper. Replace all other parts that with new implementations. Remove now unused classes. Change-Id: I6f9e836993096a2c2c06b06f2b06d7aa4b287e56 Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
* Introduce new classes for client-server communication.kh12014-06-031-3/+17
| | | | | | | Still based on what we had already, though more separated. Change-Id: I4cce298003a4ffc2ebcec01fea1a07adfbfdf990 Reviewed-by: Tim Jenssen <tim.jenssen@digia.com> Reviewed-by: Niels Weber <niels.weber@digia.com>
* Replace script with js engine.kh12014-06-031-2/+3
| | | | | Change-Id: Ic9c88e27dca1e936ba09a3776df3df7ec166c606 Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
* We need to have these files in the include list too.kh12014-06-021-1/+2
| | | | | Change-Id: I9da3f099d154d2d610179b5b181ecec58b9b3a2a Reviewed-by: Niels Weber <niels.weber@digia.com>
* Merge remote-tracking branch 'origin/1.6'Oswald Buddenhagen2014-06-021-2/+0
|\ | | | | | | | | | | | | | | | | | | Conflicts: dist/config/config.xml dist/packages/org.qtproject.ifw.binaries/meta/package.xml dist/packages/org.qtproject.ifw/meta/package.xml installerfw.pri Change-Id: I32a2a17b8fd7dc0f1f9c12272fc5f814ea5d86cb
| * Cleanup. Remove some unused and broken code.kh12014-05-141-2/+0
| | | | | | | | | | Change-Id: I6b1c9b4cd406da91c6642a9cad0e225d8473df20 Reviewed-by: Niels Weber <niels.weber@digia.com>
* | Cleanup to support Qt5 only.kh12014-06-021-5/+4
|/ | | | | Change-Id: Ib8f61229ce2f07e52c22a15e10dc817aca860ead Reviewed-by: Niels Weber <niels.weber@digia.com>
* Slightly faster version of asynchronous metadata download.kh12014-02-031-6/+5
| | | | | Change-Id: I63793529eeebfd3ea0a325cabe79d646015dc3bc Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
* QFuture based asynchronous Task implementation.kh12014-01-221-2/+15
| | | | | Change-Id: I538a2fc40b67d6d27f120afe3705065ab98f8f99 Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
* Implement factory to be able to insert pages dynamically.Tim Jenssen2013-11-251-2/+4
| | | | | | Change-Id: Ic358a820148670da85a1b374abd08103eaa995de Reviewed-by: Tim Jenssen <tim.jenssen@digia.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Move TestRepository from sdk to own file in installer libSamuli Piippo2013-11-201-2/+4
| | | | | | | | Moved the class to installer lib so it can be reused in ProductKeyCheck as well. Change-Id: I8b207f4816505671fa05ebf602895978e04d13e9 Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* add new settingsoperationTim Jenssen2013-11-141-2/+4
| | | | | Change-Id: I3c05c51241a19304b43c0fc4f1306b36b6a84c86 Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Merge remote-tracking branch 'origin/1.4'Tim Jenssen2013-08-261-1/+2
|\ | | | | | | Change-Id: I9ee4395291754fd5a56555e1dd974df19ee39376
| * use dependency solver to order the installed operationsTim Jenssen2013-08-061-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | - in case of single updates the order of the installed operations were wrong, now we reorder that till we are using that code for the install order aswell - added initial autotest for the dependency resolve code Task-number: QTIFW-318 Change-Id: If411a684cb02ef9e7d0316084075e86702bf839d Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* | Remove deprecated Qt specific operationsKai Koehne2013-08-121-21/+0
|/ | | | | | | Change-Id: Iac895970420cfe1d70b1b0fde5f5a7c33dd1bbb0 Reviewed-by: Tim Jenssen <tim.jenssen@digia.com> Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* adding ConsumeOutputOperationTim Jenssen2013-06-031-0/+2
| | | | | | | | | | | - With that operation we can save the original qmake output, before the installer does the patching. So we can use the old values for modules patching if they will be installed later. - added a autotest which does that with the current used qmake Change-Id: Ie07d273bf64d1813b7af3374a0db35a9e1215503 Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Split our own implementation of sysinfo.kh12013-05-281-1/+1
| | | | | | Change-Id: I3e66e0e4f60d7a9f91bd3c4e941e5b957725c2fc Reviewed-by: Tim Jenssen <tim.jenssen@digia.com> Reviewed-by: Niels Weber <niels.weber@digia.com>
* disable batch compile rulesTim Jenssen2013-05-241-0/+4
| | | | | | | | - this is needed if the pri file includes cpp files with already existing cpp file names Change-Id: I00798a08ad7af990ae9aabd5c1f91edc9ee4307f Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* introduce installerscriptengineTim Jenssen2013-05-161-0/+2
| | | | | | | | | | | - it uses one scriptengine for everything and adds the components or/and the install-controller in javascript closure contexts - added the gui object to the component script context - removed tabController from controlscript context Change-Id: I3bd6c5dcf470666c30add1b7d04a8fdd094f5f11 Reviewed-by: Iikka Eklund <iikka.eklund@digia.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Use Q_GLOBAL_STATIC{_WITH_ARGS} following Qt coding conventions.kh12013-03-181-2/+4
| | | | | | | | | | | Move the regexp into its own compilation unit, so we get it only once and use a accessor to fetch the value. I guess we should do the same with the constants file, as all strings get compiled in the file including it. At least Ossi wasn't satisfied currently. Change-Id: Ic495a82f4b3cfe7810523b12cd3ef255eb15f149 Reviewed-by: Tim Jenssen <tim.jenssen@digia.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>