Commit Graph

7164 Commits

Author SHA1 Message Date
Alexander Larsson
392fb03d9c CI: Run on flatpak-1.6.x branch 2020-03-30 13:36:51 +02:00
Alexander Larsson
6deb23a322 extra-data: Simplify extra-data progress setup
We need to get the commit object to setup the extra-data progress information,
and this is currently done using a complex pull operation to a temporary
repo. According to https://github.com/flatpak/flatpak/issues/3515 it
even causes an unecessary download of the summary in some cases.

Now that we don't need to support p2p we can instead directly download
the commit object using a simple http operation (or from the sideload
repos), as we know the commit id at this point anyway.
2020-03-30 13:24:15 +02:00
Alexander Larsson
d20a8ccdfd Merge pull request #3511 from yurchor/uk-update
Update Ukrainian translation
2020-03-30 09:06:12 +02:00
Yuri Chornoivan
582d04d2d8 Update Ukrainian translation 2020-03-28 21:57:23 +02:00
Alexander Larsson
e2c8838cea Merge pull request #3482 from abderrahim/flatpak-progress
Add a FlatpakProgress object
2020-03-27 17:43:31 +01:00
Alexander Larsson
c222f03c10 FlatpakProgress: Clean up APIs for handling extra data
We don't need to keep recalculating the nr of extra_data items remaining.
We know the initial value and can just decrement it each time one
completes.
2020-03-27 17:23:13 +01:00
Alexander Larsson
ed3ba39a06 Fix calculation of extra-data total size
This is a bug introduced in b03916f5bd
where we check the extra_data refs against app/ or runtime/ prefix with
arguments in the wrong order.
2020-03-27 17:21:17 +01:00
Alexander Larsson
b7f0c17762 FlatpakProgress: Handle NULL in most methods
I noticed several places in flatpak-dir.c that didn't check for
NULL progress, so lets move the check inside the implementation so
we can ensure its always checked.
2020-03-27 16:04:36 +01:00
Alexander Larsson
52224b0463 FlatpakProgress: Move default value into FlatpakProgress 2020-03-27 16:04:36 +01:00
Alexander Larsson
b1b1a6e568 FlatpakProgress: Free the GMainContext 2020-03-27 14:45:57 +01:00
Alexander Larsson
4ef12c5bc9 FlatpakProgress: No need to allocate FlatpakMainContext
We store it on the stack instead and free with
G_DEFINE_AUTO_CLEANUP_CLEAR_FUNC.
2020-03-27 14:44:00 +01:00
Alexander Larsson
a529c149ca FlatpakProgress: Use uint for bitfields
gboolean is int which is signed, and that is not good for bitfields
2020-03-27 14:40:22 +01:00
Alexander Larsson
d222d4e0d2 Merge pull request #3502 from alexlarsson/ci-gtk-doc
Enable gtk-doc in CI test
2020-03-27 09:52:18 +01:00
Alexander Larsson
4b32592677 Enable introspection on old glib test too 2020-03-27 09:39:02 +01:00
Alexander Larsson
4c21621935 Enable gtk-doc in CI test
This doesn't seems to work with asan, so do it in the clang build
2020-03-27 09:39:02 +01:00
Alexander Larsson
21d4671825 Merge pull request #3489 from smcv/variant-schema-compiler-fixes
Improve variant-schema-compiler build step
2020-03-27 09:29:33 +01:00
Matthew Leeds
b5ed08e740 Merge pull request #3481 from abderrahim/format-fix
cli-transaction: properly format '1.0 kB'
2020-03-26 13:47:38 -07:00
Abderrahim Kitouni
a18db1d646 cli-transaction: properly format '1.0 kB'
it's irritating to have it this way when everything else uses a comma as
a decimal separator

use the same trick for the total too
2020-03-26 21:24:47 +01:00
Abderrahim Kitouni
192d31d315 Add a FlatpakProgress object
To avoid the complexities of passing (and chaining) OstreeAsyncProgress
objects around, we only create one just before calling to ostree.
The rest of flatpak only ever uses the new FlatpakProgress object.

Co-authored by: Philip Chimento <philip@endlessm.com>
2020-03-26 21:09:19 +01:00
Alexander Larsson
b05b9f717c Merge pull request #3501 from alexlarsson/update-variant-parser
Update to latest version of variant-schema-compiler
2020-03-26 16:22:33 +01:00
Simon McVittie
1fd42ab660 common: Only run variant-schema-compiler once
A make rule like

    a b: x y
            command

does not mean "run command to generate a and b from x and y". Instead,
it means "run command to generate a from x and y", and, separately,
"run command to generate b from x and y". In a parallel build this
could mean that we try to run the variant-schema-compiler twice, in
parallel, with the output from each run overwriting the other.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2020-03-26 16:03:17 +01:00
Simon McVittie
7ad756c77b common: Add variant-schema-compiler output to nodist SOURCES
This means it doesn't go into dist tarballs, and we don't need to add
it to BUILT_SOURCES and CLEANFILES separately because it's already
there.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2020-03-26 16:03:17 +01:00
Alexander Larsson
48f8586d60 Update to latest version of variant-schema-compiler
This fixes the issues reported in https://github.com/flatpak/flatpak/issues/3499
2020-03-26 15:57:45 +01:00
Alexander Larsson
bf20a1d89d Merge pull request #3500 from smcv/ilp32-format
dir: Format 64-bit ints correctly
2020-03-26 14:12:20 +01:00
Simon McVittie
09f05a6f87 dir: Format 64-bit ints correctly
%ld is only 32 bits long on ILP32 (32-bit) platforms.

This partially addresses #3499.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2020-03-26 11:38:13 +00:00
Alexander Larsson
75f23be46e Merge pull request #3488 from smcv/really-deprecate
Really deprecate functions deprecated in 102c710b
2020-03-26 11:53:26 +01:00
Alexander Larsson
ccbb08926d Merge pull request #3495 from flatpak/gitignore-oci-auth
.gitignore: Add flatpak-oci-authenticator
2020-03-26 11:52:27 +01:00
Alexander Larsson
15c761d482 Use symlinks instead of xa.sideload-repos config option
Instead of having a global config option we scan a directory for
symlinks into the sideload repos. These come from
/var/lib/flatpak/sideload-repos and /run/flatpak/sideload-repos (for
default system installation).

This is much easier to update atomically, and the two different
options are useful for persistant (the first) or dynamic (the second)
usescase.

Fixes https://github.com/flatpak/flatpak/issues/3494
2020-03-26 11:50:54 +01:00
Alexander Larsson
76be5db46d Revert "config: Support setting sideload-repos option"
This reverts commit 1d1819840e.
2020-03-26 10:10:45 +01:00
Matthew Leeds
fec3cd13fa Merge pull request #3492 from smcv/less-printerr
transaction: Remove a stray debugging message
2020-03-25 17:26:11 -07:00
Matthew Leeds
0b498869dc .gitignore: Add flatpak-oci-authenticator 2020-03-25 17:24:18 -07:00
Simon McVittie
8d25ecf2e1 transaction: Remove a stray debugging message
I assume this isn't meant to be user-facing.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2020-03-25 20:04:20 +00:00
Simon McVittie
6ba07613b4 installation: Formally deprecate deprecated methods
Signed-off-by: Simon McVittie <smcv@collabora.com>
2020-03-25 12:56:56 +00:00
Simon McVittie
2d3642931d installation: Fix typos in deprecations
Signed-off-by: Simon McVittie <smcv@collabora.com>
2020-03-25 12:45:04 +00:00
Alexander Larsson
05eba2b32c Merge pull request #3474 from flatpak/wip/hadess/more-similar-appids
common: Allow version numbers in app-id for DConf migration
2020-03-25 09:57:43 +01:00
Alexander Larsson
aa6d9550c1 Merge pull request #3476 from alexlarsson/drop-p2p
Drop support p2p in favour of simpler side-loading scheme
2020-03-25 09:54:41 +01:00
Alexander Larsson
59d34280b9 lib: Only support FLATPAK_REMOTE_TYPE_STATIC remote types
With the new sideload support usb sideload works differently, they don't
appear like separate remotes. Its just the normal remote and installs
from it will automatically work. However, to list just the sideloadable
refs we point the docs to the new ONLY_SIDELOADED flag.
2020-03-25 08:52:28 +01:00
Alexander Larsson
c092fa4cb7 installation: Reimplement flatpak_installation_list_installed_refs_for_update
Instead of doing a lot of FlatpakInstallation calls we do lower level
FlatpakDir calls, sharing a single RemoteState per remote for the
entire operation. Also, some parts of the checks are moved to FlatpakDir
as flatpak_dir_check_if_installed_ref_needs_update()
2020-03-25 08:27:18 +01:00
Alexander Larsson
102c710b39 FlatpakInstallation: Mark non-transaction install/update ops deprecated
These versions still work, but they don't do neearly as much as you'd
want (depdendencies and whatnot), so document this.
2020-03-25 08:20:18 +01:00
Alexander Larsson
1117f0d872 lib: Add new FLATPAK_QUERY_FLAGS_ONLY_SIDELOADED option 2020-03-24 20:18:57 +01:00
Alexander Larsson
9648cc5eaa tests: Revert the --merge option
This is causing the tests to hang on errors sometimes.
2020-03-24 20:14:29 +01:00
Alexander Larsson
56158a0087 DeployData: Add commit timestamp to deploy data
We want to use this to do quick checks if we need to do an update.
2020-03-24 20:12:50 +01:00
Alexander Larsson
83795c210c Remove unused variable 2020-03-24 17:29:19 +01:00
Alexander Larsson
e5e498c34f remote-ls/info: Add --sideloaded option
This means we load the info from sideloaded repos only
2020-03-24 16:17:06 +01:00
Alexander Larsson
9c6bdc5bfd dir: Add flatpak_remote_state_load_data() function
This is similar to lookup_cache() but it also works for
sideloaded refs. Additionally it returns an allocated metadata
pointer rather than a pointer to the cache.

Also convert some callers to use this when it makes sense.
2020-03-24 16:15:23 +01:00
Alexander Larsson
8999e70c4a RemoteState: Try the sideload paths even for local-only states
This is so we can use these for listing sideloaded refs.
2020-03-24 16:13:24 +01:00
Alexander Larsson
a843d2d594 sideload: Add api and CLI support to specify sideload repos dynamically 2020-03-24 14:01:20 +01:00
Alexander Larsson
b8d2196c2e create-usb: Add --allow-partial option
If you really want to export partial refs you can use this switch.
2020-03-24 12:51:12 +01:00
Alexander Larsson
1d1703fcd8 tests: Enable stderr/stdout merging
This makes it a lot easier to read the error logs, and I don't
think we have anything that writes something that confuses TAP
to stderr.
2020-03-24 12:06:43 +01:00
Alexander Larsson
e4df0fa6a6 sideload: Support pulling individual objects from sideload repos
We use the localcache-repos option to ostree_repo_pull to make ostree
directly import any files that are locally available in the sideload
repo even when pulling the main commit from upstream.

This also adds a test that verifies that such files are not
pulled via http.
2020-03-24 11:46:33 +01:00