| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Change-Id: Ie31346041346cae368c9ce29977ed321e64d7cdc
Reviewed-by: Robert Griebl <[email protected]>
|
|
|
|
|
|
|
|
| |
When using extended security attributes, some may not survive the
cross-filesystem move from /tmp to the final location.
Change-Id: I2bacf844b56b6fa4f5bbc86b96a19bb5129ad09d
Reviewed-by: Dominik Holland <[email protected]>
|
|
|
|
|
|
|
| |
This will preserve the extended attributes set on the files.
Change-Id: I623f8b8494040cd6a9e18220b606bf340558006b
Reviewed-by: Robert Griebl <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Just run the packager with the additonal option
--include-extended-attributes
As for libarchive: we have to switch from the plain "ustar" to the
"restricted-pax" (aka "bsdtar") format, which is actually just "ustar"
plus xattr support.
Change-Id: I07f77abb491cbd515689c986c59253b4d0244555
Reviewed-by: Dominik Holland <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We already have the fallback (non-root) implementation for Sudo, so it
does make sense to always have a SudoClient instance available, which
simplifies the code using it.
This also made it possible to get rid of the magic removeRecursiveHelper
function and call into SudoClient explicitly where needed.
Change-Id: I48ad48edb35e5ddca2c8b171649d5d785e1b3f14
Pick-to: 6.10
Reviewed-by: Dominik Holland <[email protected]>
|
|
|
|
|
|
|
| |
Fixes: QTBUG-135747
Pick-to: 6.9 6.8
Change-Id: I3254d2607b6c80d3fec003263a91f0cee4dd69c6
Reviewed-by: Robert Griebl <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* The package format documentation and code had drifted apart over
time and did not match very well. Mostly fixed the code to behave
as documented, but relaxed the (documented) requirement that every
package must have an icon.
* Also clarified the difference between package and app/intent icons.
* Most crucially, the packager did not check that the package's icon
cannot be in a sub-directory, which led to broken packages in case
the icon was put in a sub-directory.
* Added unit new tests to prevent future regressions.
* Increased the icon size limit from 256KB to 1MB while at it.
Change-Id: I8b789f47330c1bf7c2e8a76ecd2c49a5bbf29412
Pick-to: 6.8
Reviewed-by: Dominik Holland <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The backing PackageInfo* for the 'package' parameter was modified in
the installation thread (setBaseDir), AFTER the signal was emitted
on the UI thread and QML was able to access the baseDir property.
The idea of using a temporary Package object for that signal emission
was not a wise choice, but we cannot easily change that now without
breaking the QML API for PackageManager.
Change-Id: Ib042292e11b42a89263360e501fe7eb90a4ca765
Pick-to: 6.8 6.7 6.5 6.2 5.15
Reviewed-by: Dominik Holland <[email protected]>
|
|
|
|
|
|
| |
Change-Id: I2f9f0245e1d0ac0c6ee618a0c90f31aaa1465e93
Pick-to: 6.7
Reviewed-by: Dominik Holland <[email protected]>
|
|
|
|
|
|
| |
Change-Id: I8abe9b5b62d255b93754af84b82fbf88ca9b78a4
Pick-to: 6.7
Reviewed-by: Dominik Holland <[email protected]>
|
|
|
|
|
|
|
|
|
| |
Replace all our custom qSL/qL1S/qL1C macros with standard C++ and
QString unicode string literals.
Change-Id: I9e0b69fb46525421f408f260518a69b8f8125d99
Pick-to: 6.7
Reviewed-by: Dominik Holland <[email protected]>
|
|
|
|
|
|
|
|
|
| |
Don't just rely on the class name, but use a common prefix to make it
easier to correlate threads in ps output.
Change-Id: I4f9b302e9e275a9825d1ffd29200294a66fb16e6
Pick-to: 6.7
Reviewed-by: Dominik Holland <[email protected]>
|
|
|
|
|
|
|
|
|
| |
These have been there for years and have never triggered, but now that
TSAN found the races, it's time to fix them.
Change-Id: I31fc3e9254d1a2145198621d55c812cd7226510b
Pick-to: 6.7 6.6 6.5
Reviewed-by: Dominik Holland <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
| |
This way we do not have to guard all locations where sudo.h is
included.
Also fix missing or superfluous includes.
Change-Id: Icbf7133662fa49a037322cd49b843f14fe7e16a4
Pick-to: 6.6 6.5 6.2
Reviewed-by: Dominik Holland <[email protected]>
Reviewed-by: Qt CI Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The temporary Package and Application objects handed out by the
taskRequestingInstallationAcknowledge signal belonged to the worker
thread of the InstallationTask, which prevented any property from
being used in a QML binding, as the QML engine lives in the main
thread.
Change-Id: I6f49718984a78b781c4f7a98e0e38c4f9ac9ccea
Pick-to: 5.15 6.2 6.5 6.6
Reviewed-by: Dominik Holland <[email protected]>
|
|
|
|
|
| |
Change-Id: Iafd5fbd3636068caa36f11e121233c5732f7a545
Reviewed-by: Bernd Weimer <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This code is very old and pre-dates modern sandboxing concepts via
kernel namespaces. The only thing it did, was to chown() each
application's installation directory to a unique uid.
The actual runtime did however never setuid() to the app's private
uid when starting it, as this was not easily possible anymore with
the switch to the Sudo-helper forking mechanism.
Neither the configuration, nor the PackageManager properties were
ever documented, so we are effectively removing private API only.
Change-Id: Id4959630fafb408614d1359614ccb74a84e06157
Reviewed-by: Dominik Holland <[email protected]>
|
|
|
|
|
|
|
|
|
|
| |
Since switching to the new multiple-apps-per-package architecture, the
actual infos about the apps in the package were not exposed via the
requesting-acknowledge signal anymore.
Change-Id: Id535c5d8710998ce26043ec8e56cd1881961628d
Pick-to: 5.15 6.2 6.5
Reviewed-by: Dominik Holland <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Replace the current license disclaimer in files by
a SPDX-License-Identifier.
Files that have to be modified by hand are modified.
License files are organized under LICENSES directory.
Pick-to: 6.4
Task-number: QTBUG-67283
Change-Id: I09660e42dea769d720ff30e652485d9861cea965
Reviewed-by: Robert Griebl <[email protected]>
|
|
|
|
|
|
|
|
|
| |
By switching to unique_ptr.
Fixes: QTBUG-101999
Pick-to: 6.3
Change-Id: I39959da8561991b1657d1210692afff0c25e36a1
Reviewed-by: Robert Griebl <[email protected]>
|
|
|
|
|
|
| |
Change-Id: I8aa7e1f520346b6c946b0e1e122808d638ccb52c
Pick-to: 6.3 6.2 5.15
Reviewed-by: Bernd Weimer <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Not specifying the documentDir, but enabling the installer would
- unexpectedly - use $PWD as documentDir. The code does now
follow the documentation: if not set, no document directories
will be created on package installation.
Also, we now fail early if the documentDir and installationDir
are sub-directories of each other, as that would lead to mayhem
on PackageManager::cleanupBrokenInstallations().
Change-Id: Id8d89f82bf0d63c771f3d86a963c66681f43f195
Fixes: QTBUG-101881
Pick-to: 6.3 6.2 5.15
Reviewed-by: Bernd Weimer <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The documentation and the implementation disagreed quite heavily in
regards to the icon, name, description and categories fields in the
manifest for the package, each application and each intent.
The implementation now follows the existing documentation, but also
relaxing the requirements of icon and name being required for packages.
Also, it was confusing that applications could not override these
properties from the package like intents can do, so they also got
these properties.
Finally, everything is now correctly exposed to QML, with legacy
wrappers in place to not break old code.
In addition, the completely outdated applicationinfo unit-test
was rewritten to test all the current field combinations.
Change-Id: Ie5ad84bc6b771d6702b1994d1c8ae9f0204643b9
Pick-to: 6.3 6.3.0
Reviewed-by: Bernd Weimer <[email protected]>
Reviewed-by: Dominik Holland <[email protected]>
|
|
|
|
|
|
|
|
|
| |
This was only done for removals, but it is even more important for
update installations.
Change-Id: I3cfe552908c9e8b1b130d814bac5f2d3265fe845
Pick-to: 5.15
Reviewed-by: Bernd Weimer <[email protected]>
|
|
|
|
|
|
| |
Change-Id: Ic3b3ec4caa982f78e14cf991757277ff59d5e682
Pick-to: 5.15
Reviewed-by: Bernd Weimer <[email protected]>
|
|
|
|
|
|
|
|
|
| |
Also removed all the SPDX tags and -QTAS license extensions.
Change-Id: Ibd10fe37afcbba832831d027cf2f1891ca0226c0
Fixes: AUTOSUITE-1648
Fixes: AUTOSUITE-1646
Reviewed-by: Dominik Holland <[email protected]>
|
|
|
|
|
|
|
|
| |
This is a Qt module policy and helps a lot with build times -- especially
on CI setups.
Change-Id: I90574deb7e7b215054a5037b99ee4e7c7a040568
Reviewed-by: Thomas Senyk <[email protected]>
|
|
|
|
|
|
|
|
|
| |
Also had to fix a few things in the PackageManager<->ApplicationInstaller
compatibility layer, because it became obvious that things didn't work
as expected while writing the documentation.
Change-Id: I92de9a7142e9713fed0b60fd0b69c1a24ff8eb5e
Reviewed-by: Dominik Holland <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The first commit in this series was b4aee167d3bc6b9f64229317fbc428b3f3b83c0d.
This update fixes all the known bugs introduced in the change of the
architecture, adds basic documentation and examples.
The changes in the intent sub-system are in a separate patch for easier review,
although they both depend on each other due to changes in the API.
Change-Id: Ia78da7e10e2eb7adfa30625554af275453065a90
Reviewed-by: Dominik Holland <[email protected]>
|
|
|
|
|
|
| |
Change-Id: I84bbd9e7f735ed1864804a9887d3a02b7c925e53
Reviewed-by: Vladimir Minenko <[email protected]>
Reviewed-by: Bernd Weimer <[email protected]>
|
|
This was deliberately left out of the first patch that introduced the package
abstraction.
As a side effect, the classes from the installer-lib had to be moved to the
manager-lib, because the PackageManager is now a central part of the AM, that
has to have access to other classes in the manager-lib.
Change-Id: I94c1e62d3ffa769f3e053aab8730fea9133a7bc8
Reviewed-by: Dominik Holland <[email protected]>
|