summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* Update ru.poDmitry2023-02-211-25/+25
|
* Update NEWSSimon McVittie2023-02-181-0/+5
| | | | | | [skip ci] Signed-off-by: Simon McVittie <smcv@collabora.com>
* transaction: Ignore uninstall operations for no deployDan Nicholson2023-02-183-2/+63
| | | | | | | | | | | | If `no_deploy` has been set to `TRUE` in a transaction, then the intention is that no changes will be made to the installed flatpaks. Currently that's not the case for explicitly or implicitly added uninstall operations. That's particularly bad for eol-rebase flatpaks since they old version will be automatically removed without the new version being installed. To address this, prevent uninstall operations from being added for no deploy transactions. Closes: #5172
* Update NEWSSimon McVittie2023-02-181-0/+6
| | | | | | [skip ci] Signed-off-by: Simon McVittie <smcv@collabora.com>
* flatpak-run: Unset GDK_BACKENDDan Nicholson2023-02-132-0/+2
| | | | | | | | | | | If the `GDK_BACKEND` environment variable is present and it's value does not match the Wayland and X11 socket configuration, then a GTK app will fail to run since it will only consider the display backend from the environment variable. This should probably be extended to cover other display environment variables such as `QT_QPA_PLATFORM` for Qt and `SDL_VIDEODRIVER` for SDL. However, I've only tested this with GTK applications.
* dir: If metadata is syntactically invalid, say which file is the problemSimon McVittie2023-02-081-2/+2
| | | | | | Similar to the previous commit, but for metadata. Signed-off-by: Simon McVittie <smcv@collabora.com>
* dir: If overrides are syntactically invalid, include path in error messageSimon McVittie2023-02-083-3/+9
| | | | | | | | It's unhelpful to say something like "Key file contains line “x” which is not a key-value pair, group, or comment" without specifying which file we are talking about. Signed-off-by: Simon McVittie <smcv@collabora.com>
* list: Show a warning if we can't load the current versionSimon McVittie2023-02-081-2/+8
| | | | | | | Conceptually similar to the previous commit, except it didn't crash before, just didn't display anything. Signed-off-by: Simon McVittie <smcv@collabora.com>
* list: Handle error in flatpak_dir_load_deployed()Simon McVittie2023-02-081-1/+11
| | | | | | | | | flatpak_dir_load_deployed() can fail and return NULL. If that happens, there is a semi-installed but broken app, and we should show a warning rather than crashing. Resolves: https://github.com/flatpak/flatpak/issues/5293 Signed-off-by: Simon McVittie <smcv@collabora.com>
* Update NEWSSimon McVittie2023-02-081-0/+15
| | | | | | [skip ci] Signed-off-by: Simon McVittie <smcv@collabora.com>
* utils-http: Avoid deprecation warning with curl >= 7.85.0Simon McVittie2023-02-071-0/+4
| | | | | | | CURLOPT_PROTOCOLS_STR is documented as the replacement for CURLOPT_PROTOCOLS. Signed-off-by: Simon McVittie <smcv@collabora.com>
* run: Avoid double-free of gpgconf stdout streamSimon McVittie2023-02-071-1/+1
| | | | | | | | | g_subprocess_get_stdout_pipe() does not transfer ownership, so the stream still belongs to the GSubprocess and we must not unref it. Fixes: 764e5a4d "Add --socket=gpg-agent" Resolves: https://github.com/flatpak/flatpak/issues/5095 Signed-off-by: Simon McVittie <smcv@collabora.com>
* dir: Add more debug output for unused refsPhaedrus Leeds2023-02-061-12/+65
| | | | | | | | | | Inspired by the slight mystery of https://github.com/flatpak/flatpak/issues/5192, this commit adds more debug output to the functions that analyze installations for unused refs. Some of the output is g_debug() (enabled by -vv) and some is g_info() (enabled by -v) since otherwise the output would be too verbose. This should hopefully help debug problems, not only related to the unused refs code but anything involving dependencies.
* Spanish translation updateJuan2023-02-061-8/+8
|
* Update translation files for 1.15.2 release1.15.2Simon McVittie2023-02-0623-2921/+4390
| | | | Signed-off-by: Simon McVittie <smcv@collabora.com>
* Prepare v1.15.2Simon McVittie2023-02-063-4/+4
| | | | Signed-off-by: Simon McVittie <smcv@collabora.com>
* Update POTFILES.inPiotr Drąg2023-02-051-0/+1
|
* Revert "Add support for files generated by appstreamcli compose (#5277)"Patrick Griffis2023-02-045-55/+18
| | | | This reverts commit 88f7ecd000f84b75bd055ad6b6f92d7881e5e377.
* Add support for files generated by appstreamcli compose (#5277)Luna2023-02-045-18/+55
| | | | Co-authored-by: Bartłomiej Piotrowski <b@bpiotrowski.pl> Co-authored-by: Jamie Murphy <hello@itsjamie.dev>
* NEWS: UpdateSimon McVittie2023-01-301-0/+37
| | | | Signed-off-by: Simon McVittie <smcv@collabora.com>
* utils: Unmap the old summary.idx file before trying to replace itForest2023-01-221-0/+4
| | | | | | | | | | | | | | | | | | | Exporting to an existing repo on a Samba filesystem failed with EACCES when libglnx called renameat() to replace the old summary.idx file. error: renameat: Permission denied This occurred even when the user had appropriate permissions to the file and its ancestor directories. The problem was that flatpak had mapped the old file into memory for reading, and still held a reference to that mapping when attempting to replace the underlying file. Apparently this works on some filesystems, but not on cifs. We therefore release the memory mapping before replacing the underlying file. Fixes #5257 Co-authored-by: Patrick <tingping@tingping.se>
* Russian translation update (#5262)Dmitry2023-01-221-53/+52
|
* Russian traslation updated (#5256)Dmitry2023-01-151-82/+86
|
* exports: Test that a symlink to the root directory is rejectedSimon McVittie2023-01-121-0/+9
| | | | | Reproduces: https://github.com/flatpak/flatpak/issues/1357 Signed-off-by: Simon McVittie <smcv@collabora.com>
* exports: Assert that recently-excluded paths are excludedSimon McVittie2023-01-121-0/+5
| | | | | | Reproduces: https://github.com/flatpak/flatpak/issues/5205 Reproduces: https://github.com/flatpak/flatpak/issues/5207 Signed-off-by: Simon McVittie <smcv@collabora.com>
* exports: Don't export parent or ancestor of reserved directoriesSimon McVittie2023-01-121-0/+13
| | | | | | | | | | | | | | | | | Previously, --filesystem=/run would prevent apps from starting by breaking our ability to set up /run/flatpak and /run/host. Now it is ignored, with a diagnostic message, resolving #5205 and #5207. Similarly, --filesystem=/symlink-to-root (or --filesystem=host) would have prevented apps from starting if a symlink like `/symlink-to-root -> /` or `/symlink-to-root -> .` exists, and refusing to export the target of that symlink avoids that failure mode, resolving #1357. Resolves: https://github.com/flatpak/flatpak/issues/1357 Resolves: https://github.com/flatpak/flatpak/issues/5205 Resolves: https://github.com/flatpak/flatpak/issues/5207 Signed-off-by: Simon McVittie <smcv@collabora.com>
* context: Show a warning if we cannot provide any $HOMESimon McVittie2023-01-121-4/+8
| | | | | | | | | | | | | | | | | | | | If $HOME is below a reserved path (for example `/usr/home/thompson` for Unix traditionalists) or otherwise cannot be shared, or is a symbolic link to somewhere that cannot be shared, then we will end up running the app with $HOME not existing. This is unexpected, so we should make more noise about it. There are two situations here, both of which get a warning: if we have --filesystem=home or --filesystem=host then we are trying to share the real $HOME with the application, and if we do not, then we are trying to create a directory at the location of the real $HOME and replicate the chain of symlinks (if any) leading from $HOME to that location. Unlike the previous commit, this is not expected to happen during unit testing, so we do not use a g_warning() for this. Diagnoses: https://github.com/flatpak/flatpak/issues/5035 Signed-off-by: Simon McVittie <smcv@collabora.com>
* context: Show a warning when --filesystem exists but can't be sharedSimon McVittie2023-01-121-4/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | If the user gives us a override or command-line argument that we cannot obey, like --filesystem=/usr/share/whatever or --filesystem=/run/flatpak/whatever, then it's confusing that we silently ignore it. We should give them an opportunity to see that their override was ineffective. However, there are a few situations where we still want to keep quiet. If there is a --filesystem argument for something that simply doesn't exist, we don't diagnose the failure to share it: that avoids creating unnecessary noise for apps that opportunistically share locations that might or might not exist, like the way the Steam app on Flathub asks for access to $XDG_RUNTIME_DIR/app/com.discordapp.Discord. Similarly, if we have been asked for --filesystem=host, the root directory is very likely to contain symlinks into a reserved path, like /lib -> usr/lib. We don't need a user-visible warning for that. We actually use the equivalent of g_message() rather than g_warning(), to avoid this being fatal during unit testing (in particular when we do a `flatpak info` on an app that has never been run, which will be unable to share its `.var/app` subdirectory). `app/flatpak-main.c` currently displays them as equivalent to each other anyway. Signed-off-by: Simon McVittie <smcv@collabora.com>
* exports: Move error handling up into callerSimon McVittie2023-01-124-165/+307
| | | | | | | | | | | | | This lets flatpak_context_export() or other callers decide how they want to handle failure to export each path. For now, the callers in FlatpakExports are still using g_debug() unconditionally, but we can now have somewhat better test coverage. Helps: https://github.com/flatpak/flatpak/issues/1357 Helps: https://github.com/flatpak/flatpak/issues/5035 Helps: https://github.com/flatpak/flatpak/issues/5205 Helps: https://github.com/flatpak/flatpak/issues/5207 Signed-off-by: Simon McVittie <smcv@collabora.com>
* exports: Make _exports_path_expose produce a GError on failureSimon McVittie2023-01-121-31/+64
| | | | | | | | This is a step towards allowing its direct and indirect callers to decide how serious the failure is, and debug or warn accordingly. Helps: https://github.com/flatpak/flatpak/issues/5205 Signed-off-by: Simon McVittie <smcv@collabora.com>
* exports: Never try to export /.flatpak-infoSimon McVittie2023-01-121-0/+1
| | | | | | | Just for completeness, in practice the host system will not have this. Helps: https://github.com/flatpak/flatpak/issues/5205 Signed-off-by: Simon McVittie <smcv@collabora.com>
* exports: Never try to export paths below /run/flatpak or /run/hostSimon McVittie2023-01-121-0/+2
| | | | | | | These directories are reserved for Flatpak's own use. Helps: https://github.com/flatpak/flatpak/issues/5205 Signed-off-by: Simon McVittie <smcv@collabora.com>
* exports, context: List unexported paths one per line in sorted orderSimon McVittie2023-01-122-3/+26
| | | | | | | This will reduce conflicts when new entries are added. Helps: https://github.com/flatpak/flatpak/issues/5205 Signed-off-by: Simon McVittie <smcv@collabora.com>
* trivial: Trim some long lines, etc.Phaedrus Leeds2023-01-021-12/+22
|
* repair: Fix off-by-one error in fancy outputPhaedrus Leeds2023-01-021-1/+1
| | | | Fixes https://github.com/flatpak/flatpak/issues/5204
* Update Turkish translationSabri Ünal2022-12-311-94/+87
|
* dir: Use consistent FlatpakRunFlags everywhereSimon McVittie2022-12-191-9/+12
| | | | | | In principle either of these functions might read any of the flags. Signed-off-by: Simon McVittie <smcv@collabora.com>
* portal: Factor out flatpak_bwrap_is_unprivileged()Simon McVittie2022-12-193-14/+15
| | | | | | | We can use this for other features that rely on having a non-setuid version of bubblewrap. Signed-off-by: Simon McVittie <smcv@collabora.com>
* common: Replace all flatpak_debug2() with g_debug()Simon McVittie2022-12-156-50/+48
| | | | | | | They are now equivalent. Resolves: https://github.com/flatpak/flatpak/issues/5001 Signed-off-by: Simon McVittie <smcv@collabora.com>
* common: Make flatpak_debug2() use the same domain as g_debug()Simon McVittie2022-12-158-22/+9
| | | | | | | | | | | | | | | | | | | | | | Now that we are logging `flatpak -v` messages with log level INFO, and printing INFO messages in the same way as DEBUG, we can reserve log level DEBUG for `flatpak -v -v` messages. This means we no longer need a weird secondary debug domain. There is a very small behaviour change here: G_MESSAGES_DEBUG=flatpak is now similar to `flatpak -v -v` (previously `flatpak -v`), and G_MESSAGES_DEBUG=flatpak2 no longer has any effect. This seems more in line with what would be expected from a GLib-based application. In flatpak(1) and the system helper, this does not change behaviour other than that: the same messages are logged by `-v` and by `-v -v` as before. In daemons that do not implement `-v -v` (the OCI authenticator, portal and session helper), it continues to be necessary to use G_MESSAGES_DEBUG to see flatpak_debug2() messages. Signed-off-by: Simon McVittie <smcv@collabora.com>
* daemons, etc.: Use g_info() for messages that are enabled by -vSimon McVittie2022-12-1512-129/+129
| | | | Signed-off-by: Simon McVittie <smcv@collabora.com>
* app: Use g_info() for messages that will be shown by flatpak -vSimon McVittie2022-12-1513-45/+45
| | | | | | | This brings us one step closer to being able to stop using the flatpak2 log domain for messages that are exclusive to `flatpak -v -v`. Signed-off-by: Simon McVittie <smcv@collabora.com>
* common: Use g_info() for messages that will be shown by flatpak -vSimon McVittie2022-12-1514-259/+259
| | | | | | | This brings us one step closer to being able to stop using the flatpak2 log domain for messages that are exclusive to `flatpak -v -v`. Signed-off-by: Simon McVittie <smcv@collabora.com>
* daemons: Treat g_info() as equivalent to g_debug()Simon McVittie2022-12-145-12/+12
| | | | | | | Same as the previous commit, but for anything that runs in the background. Signed-off-by: Simon McVittie <smcv@collabora.com>
* main: Treat g_info() as equivalent to g_debug()Simon McVittie2022-12-141-3/+3
| | | | | | | | | | | | | | | | | | | | | | This makes us consistent with the default behaviour of GLib, and its behaviour with G_MESSAGES_DEBUG=all. g_debug() and g_info() are the two lowest priority levels, and GLib normally silences them by default. At the moment, Flatpak uses G_LOG_LEVEL_DEBUG in the flatpak2 domain as its lowest-priority log level (only shown with flatpak -v -v), and G_LOG_LEVEL_DEBUG in the flatpak domain as its second-lowest (shown with flatpak -v or higher). I want to move towards using G_LOG_LEVEL_INFO for flatpak -v messages, and G_LOG_LEVEL_DEBUG for flapak -v -v, so that we don't need a second log domain: this is a policy I've used successfully in Flatpak-derived Steam Runtime code. This change does not fully implement that policy, but gives us a migration path towards it, by allowing us to start using g_info() for flatpak -v messages. Helps: https://github.com/flatpak/flatpak/issues/5001 Signed-off-by: Simon McVittie <smcv@collabora.com>
* selinux: Install to previous locationDavid King2022-12-141-1/+1
| | | | Install flatpak.if to the same location for Autotools and meson.
* selinux: Install when using mesonDavid King2022-12-141-0/+1
| | | | | With custom_target, providing build_by_default is not enough to install the output, which must be explicitly requested.
* Update submodule: bubblewrap 0.7.0Simon McVittie2022-12-121-0/+0
| | | | | | - Better error messages on various failure modes Signed-off-by: Simon McVittie <smcv@collabora.com>
* Replace calls to g_memdup() with g_memdup2()Simon McVittie2022-12-124-5/+5
| | | | | | | | | | | | g_memdup() is subject to an integer overflow on 64-bit machines if the object being copied is larger than UINT_MAX bytes. I suspect none of these objects can actually be that large in practice, but it's easier to replace all the calls than it is to assess whether we need to replace them. A backport in libglnx is used on systems where GLib is older than 2.68.x. Signed-off-by: Simon McVittie <smcv@collabora.com>
* Update submodule: libglnxSimon McVittie2022-12-121-0/+0
| | | | | | - Backport g_memdup2 Signed-off-by: Simon McVittie <smcv@collabora.com>